AttributeError: 'str' - Objekt hat kein Attribut 'schreiben'
Arbeite ich auf Python und definiert eine variable namens "_headers", wie unten gezeigt
_headers = ('id',
'recipient_address_1',
'recipient_address_2',
'recipient_address_3',
'recipient_address_4',
'recipient_address_5',
'recipient_address_6',
'recipient_postcode',
)
und um das zu schreiben, diese in eine Ausgabe-Datei, die ich geschrieben habe, die folgende Anweisung aus, aber er wirft mir die Fehlermeldung "AttributeError: 'str' - Objekt hat kein Attribut 'schreiben'"
with open(outfile, 'w') as f:
outfile.write(self._headers)
print done
Bitte helfen
Sie meinte :
Fühlen Sie sich frei, um die Antwort akzeptieren, die Ihnen geholfen, die meisten.
f.write(self._headers)
?Fühlen Sie sich frei, um die Antwort akzeptieren, die Ihnen geholfen, die meisten.
InformationsquelleAutor user1345260 | 2013-09-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du willst
f.write
, nichtoutfile.write
...outfile
ist der name der Datei als string.f
ist das file-Objekt.Wie bereits angemerkt in den Kommentaren,
file.write
erwartet einen string, der nicht mit einer Sequenz. Wenn Sie schreiben wollte Daten von einer Sequenz aus, die Sie nutzen könntenfile.writelines
. z.B.f.writelines(self._headers)
. Aber Vorsicht, dies bedeutet nicht, fügen Sie einen Zeilenumbruch nach jeder Zeile. Müssen Sie selbst erledigen. 🙂Sie können nicht schreiben, ein Tupel mit einem file-Objekt ist
write
Methode. Vielleicht rufen Siestr
oderrepr
es erst einmal auf?Was genau möchtest du geschrieben??? Wenn Sie möchten, dass er erscheint ähnlich zu der Quelle, verwenden
repr
. Wenn Sie etwas wollen, um gemeinsam mit anderen Programmen verwendenpickle.dump
oderjson.dump
. Wenn Sie wollen, dass es formatiert werden, in der einige Menschen-lesbarer Form, schreiben Sie den entsprechenden code zur Formatierung.Oder stellen Sie Ihre Daten in einer Liste anstelle eines Tupels.
InformationsquelleAutor mgilson
Angenommen, Sie möchten 1 header pro Zeile, versuchen Sie dies:
InformationsquelleAutor Robᵩ
Zu bleiben, wie nah an Ihrem Skript wie möglich:
InformationsquelleAutor Stefan van den Akker