0

メソッドによって返されるデータはself.prepSetFile()ディクショナリ型です

    dataTodump=self.prepSetFile()
    try:
        settingFile=os.path.join(self.settingsDir,"setting.txt")
        output_phil=open(settingFile,'w')
        pickle.dump(dataTodump,settingFile,0)
    except: raise

属性エラーが発生する理由がわかりません

AttributeError:
'str'オブジェクトに属性'write'がありません

明らかにdictであるdataTodumpのデータ型もテストしました

4

1 に答える 1

5

開いているファイルをpickle.dump;に渡す必要があります。ファイル名のみを渡す場合:

output_phil=open(settingFile,'wb')
pickle.dump(dataTodump, output_phil, 0)

UNIX以外のプラットフォームでバイトが変換されないように、ファイルはバイナリモードで開かれることに注意してください。\n

于 2012-12-13T16:06:16.237 に答える