Python モジュール: sys

  • Python で標準入力や標準出力、終了などのシグナルを扱うためのモジュール
import sys

標準出力

sys.stdout.write(...)
  • 標準出力として出力する
  • print() とあまり変わらないが、末尾に改行が入らない

標準エラー

sys.stderr.write(...)
  • 標準エラーとして出力する
  • 改行が入らないので、必要ならば \n で入れる

標準入力

foo = sys.stdin.read()
bar = sys.stdin.readline()
hoge = sys.stdin.readlines()
  • キーボードの入力を受け取って変数などに渡す
  • read() は ctrl+d が押されるまで、入力を受け取り続ける
    • 受け取った内容は、今回の場合は foo に代入される
  • readline() は Enter が押されるまで、入力を受け取る
    • 受け取った内容は、今回の場合は bar に代入される
    • 最後の Enter で入力された改行がそのまま残る
  • readlines() は ctrl+d が押されるまで、入力を受け取り続ける
    • 受け取った内容は、今回の場合は hoge に代入される
    • read() との違いは、リストに格納することであり、Enter ごとにリストの要素が追加される
    • Enter で入力された改行はそのまま残る

終了

sys.exit(0)
sys.exit(1)
  • プログラムを終了させる場合に使う
  • exit(0) は正常終了
  • exit(1) は異常終了