私はこれがグーグルできるもののように聞こえることを知っています、しかし真実は私が非常に少数のPython 3つの情報源が説明するものを見つけないか理解しないということです。
だからここに私の質問があります:
input()
はPython 3のstdin
関数ですか?filename.pyプログラムを開くと、stdin
はユーザーは何を入力しますか?print()
はPython 3のstdout
関数ですか、それともファイルに書き込む必要がありますか?stdin
とstdout
の何を含める必要がありますか?更新:それは私が使用できることを意味します:
import sys
unfmtdDate = str(sys.stdin.read())
...の代わりに...
unfmtdDate = str(input())
?
stdin
とstdout
は、OSによって提供されるファイルのようなオブジェクトです。一般に、プログラムがインタラクティブセッションで実行される場合、stdin
はキーボード入力であり、stdout
はユーザーのttyですが、シェルを使用して、通常のファイルまたはからのパイプ出力からそれらをリダイレクトできます。そして他のプログラムへの入力。
input()
は、入力された入力をユーザーに求めるために使用されます。プログラミングパズルのようなものの場合、通常はstdin
がデータファイルからリダイレクトされると想定されており、入力形式が指定されている場合は、プロンプトを表示するよりもsys.stdin.read()
を使用するのが通常は最善です。 input()
で入力します。 input()
はインタラクティブなユーザー入力を目的としており、プロンプト(sys.stdout上)を表示し、GNU readlineライブラリ(存在する場合)を使用して行編集などを可能にします。 。
print()
は、実際、stdout
に書き込む最も一般的な方法です。出力ストリームを指定するために特別なことをする必要はありません。 print()
は、sys.stdout
パラメータとして代替ファイルが指定されていない場合、file=
に書き込みます。
Pythonプログラムを実行すると、 _sys.stdin
_ は標準入力(STDIN)に接続されたファイルオブジェクト、_sys.stdout
_はのファイルオブジェクトです標準出力(STDOUT)であり、_sys.stderr
_は標準エラー(STDERR)のファイルオブジェクトです。
ドキュメント内のどこでも、標準入力、標準出力、または標準エラーへの参照があり、これらのファイルハンドルを参照しています。それらに直接アクセスするか(sys.stdout.write(...)
、sys.stdin.read()
など)、input()
やprint()
などのこれらのストリームを使用する便利な関数を使用できます。
Spotifyパズルの場合、入力を読み取る最も簡単な方法は次のようになります。
_import sys
data = sys.stdin.read()
_
これらの2行の後、プログラムの入力はstr data
にあります。
から Python print
のドキュメント :
file引数は、
write(string)
メソッドを持つオブジェクトである必要があります。存在しない場合、またはNone
の場合、_sys.stdout
_が使用されます。出力バッファリングは、fileによって決定されます。file.flush()
を使用して、たとえば、画面にすぐに表示されるようにします。
input()
はPython 3のstdin
関数ですか?
はい。
それは、_
filename.py
_プログラムを開いたときに、ユーザーが入力するのはstdin
であることを意味しますか?
はい。
print()
はPython 3のstdout
関数ですか、それともファイルに書き込む必要がありますか?
どちらでも使用できます。
Spotifyパズルの場合、「入力はstdinから読み取られます」と表示されます。ファイルには
stdin
とstdout
の何を含める必要がありますか?
_import sys
_を使用して、_sys.stdin
_ファイルと_sys.stdout
_ファイルにアクセスします。代わりにinput
およびprint
組み込み関数を使用する場合は、インポートは必要ありません。