2017-05-07 14 views
-1

Python - ファイルに書き込みしませんか?私はこのようなファイルへの書き込みをしようとしている

debugfile = open("file.txt", "w") 
debugfile.write("%i" % (feature['properties']['cellId'])) 
debugfile.close() 

ここfeature['properties']['cellId']は整数です。ファイルは作成されますが、空のままです。私は何が欠けていますか?

更新 コンソールに書き込もうとしました。

debugfile = open("file.txt", "w") 
print(feature['properties']['cellId']) 
debugfile.write("%i" % (feature['properties']['cellId'])) 
debugfile.close() 

これはコンソールを示しています。 enter image description here ファイルが空のままです。

+0

'feature'はテストできないのですが、' debugfile.write( "%i"%42) 'はうまく動作します。だから何かが間違っている。エラーが発生しましたか?あなたの事例をあなたのために失敗しても、実行できるものに更新できますか?たぶん 'print(' feature ['properties'] ['cellId']) 'を追加して、それを投稿しますか? – tdelaney

+0

LOL - あなたしました!それは速い。 – tdelaney

+0

文字列フォーマット – handle

答えて

-2

tupleを書きませんか?


気にしない、これはどちらかのように動作します:

#!python 
#coding=utf-8 

import sys 
print(sys.version) 

debugfile = open("file1.txt", "w") 
debugfile.write("%i" % (123)) 
debugfile.close() 

debugfile = open("file2.txt", "w") 
debugfile.write("%i" % 123) 
debugfile.close() 
+0

これは古いスタイルの書式設定では正常です。書式文字列に '1置換のみがある場合は、オブジェクトまたは1要素タプルを渡すことができます。より多くの置換がある場合は、それぞれのタプルを渡します。 – tdelaney

+0

右:[文字列フォーマット操作](https://docs.python.org/2/library/stdtypes.html#string-formatting-operations)、第2段落。 – handle

1

feature['properties']['cellId']を印刷することで値を確認してください。

私はfeatureを初期化する場合は、コードが動作する

feature = {'properties':{'cellId':1}} 

。だから、コードに何も問題はありません。

debugfile = open("file.txt", "w") 
debugfile.write("%i" % (feature['properties']['cellId'])) 
debugfile.close() 
+0

質問が更新されました。コンソールではなく、ファイルに表示されます。 –

+0

ループでこれを書いているようですが、値は@tdelaneyのように上書きされています。より多くのコンテキスト、つまりループを使ってコードを共有すると、より良い回答を得ることができます。 – Nik

関連する問題