2016-12-28 5 views
0

私はPythonを初めて使いました。現在はファイル操作を学習しています。私が書いたファイルから読むことができません。私はw +モードを使用しています。w +モードのpythonでファイルを読み取れません

また、私は

textbuffer = STR( "%のr \ n個%のr \ n個%のr \ n" は%入力()、入力()、入力(に間違ったをやって、私に教えてください)) これはコメントです。以下は

は、コードスニペットです:あなたがファイルに書き込むとき

filename = '/home/ranadeep/PycharmProjects/HelloWorld/ex15_sample.txt' 
target = open(filename,'w+') 
target.truncate() 

print("Input the 3 lines: ") 
textbuffer = "Just a demo text input" 
#textbuffer = str("%r\n %r\n %r\n" % input(), input(), input()) 
target.write(textbuffer) 
# read not working in w+ mode 
print(target.read()) 
target.close() 

# read only mode 
updated_target = open(filename,'r') 
print(updated_target.read()) 
+1

ファイルに書き込んだ後、ファイルオブジェクト 'target'は「ファイルの最後に」です。あなたは何かを読むことができる前に少し前に戻らなければなりません。 '.tell'と' .seek'メソッドを使ってファイル内の位置を見たり変更することができます。詳細については、ドキュメントをご覧ください。https://docs.python.org/2/tutorial/inputoutput.html –

+0

ありがとうございます。とった。 @jmd_dk – rg666

答えて

1

、あなただけのからの読み込みを開始する行は、あなたが書いた行の後に発生します。これが機能するには、 "head"をファイルの先頭に戻す必要があります。

target.write("blah") 

# This is new 
target.seek(0) 

print target.read() 
target.close() 
関連する問題