私は、ループとファイル用のPythonに関する質問があります。このコードでファイルオブジェクトに対してforループが何をしていますか?
:
file = raw_input("input a text file ")
f = open(file) # creates a file object of file
for line in f:
# prints each line in the file
print line
print f
# prints <open file 'MVL_ref.txt', mode 'r' at 0x0267D230>
print f.read() # same output of the for-cycle
print f.readline() # same output of the for-cycle
ザ・forループは、私のテキスト ファイル内に存在するそれぞれの行を印刷しています。しかし、私がファイルオブジェクトを印刷すると、私は全く別のものを手に入れます。 私は私のようなものを使用しなければならなかったことを期待するので、これは私を困惑:
for line in f.read():
print line
もちろん、これはそうではありません
。 forループなしでreadまたはreadlineメソッドを使用すると、forループの同じ出力が得られます。ファイルオブジェクトのデフォルトでread()またはreadline()を呼び出すようなfor-loopがいくつかありますか?私はPythonでコーディングする方法を学んでいますが、コードが "背中の背中"で何をしているのか分かりません。
すべての説明をいただきありがとうございます。
エンティティの説明が表示されますそれは何をしているのですか? –
'for line in f.read():' ...あなたの変数名を混同しないでください。それらは行ではなく、それらは単一の文字です –
実際にあなたがtxtファイルに持っているものに依存します。行が既に改行文字 "\ n"で区切られていれば、**使用する必要はありません。メソッド –