python で tty ターミナルに繋がっているかどうかを調べる ― 2022年03月25日 08時39分48秒
ログファイルは基本的に開くのが面倒臭い。どこにログファイルが開かれるかを調べたり、設定によっては日時を含むファイル名で、起動する毎に探さなければいけない。特にデバッグ時に有用な情報は print 関数で標準出力に送りたい。
開発、デバッグ時はわざわざデーモンとして起動せず、手動でターミナルから起動する。
そこで、標準入力がターミナルからの時だけ print をすると、平常運用時は何も出力しないが、開発時にだけ出力する事が出来る。
sys モジュールを使って調べられる。stdin と stdout のどちらでも良いが、stdin の方が堅実だろう。
import sys
if sys.stdin.isatty():
print( "stdin" )
if sys.stdout.isatty():
print( "stdout" )
コメント
トラックバック
このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2022/03/25/9475510/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。