Schreiben von Zeichenfolgen in Dateien in python

Bin ich immer die folgende Fehlermeldung, wenn Sie versuchen zu schreiben, die einen string in eine Datei im pythion:

Traceback (most recent call last):
  File "export_off.py", line 264, in execute
    save_off(self.properties.path, context)
  File "export_off.py", line 244, in save_off
    primary.write(file)
  File "export_off.py", line 181, in write
    variable.write(file)
  File "export_off.py", line 118, in write
    file.write(self.value)
TypeError: must be bytes or buffer, not str

Ich grundsätzlich eine Klasse string, die einen string enthält:

class _off_str(object):
    __slots__ = 'value'
    def __init__(self, val=""):
        self.value=val

    def get_size(self):
        return SZ_SHORT

    def write(self,file):
        file.write(self.value)

    def __str__(self):
        return str(self.value)

Außerdem rufe ich die Klasse wie folgt aus (wobei die variable ist ein array von _off_str Objekte:

def write(self, file):
    for variable in self.variables:
        variable.write(file)

Ich habe keine Ahnung, was Los ist. Ich habe gesehen, andere python-Programme schreiben-strings, Dateien, warum also nicht diese?

Danke Ihnen sehr für Ihre Hilfe.

Edit: wie Es aussieht, musste ich angeben, wie ich die Datei geöffnet, hier ist, wie:

file = open(filename, 'wb')
primary.write(file)
file.close()
Ich antwortete auf deine Frage, aber ich habe selbst einer. Warum zum Teufel Sie wollen, schreiben Sie Ihre eigenen string-Klasse in Python, während Python selbst habe einige wirklich mächtige Klassen ?
Oder, um es stärker. Bitte nicht erfinden Sie Ihre eigene string-Klasse. Diese Art der Sache macht wartbaren software.
Ich wollte nicht, es war genau so, wie die anderen Dateien in dem Paket hat. Am Ende habe ich mit Ihnen vereinbart, und dachte, es war wirklich dumm, und nur Riss es raus. Wir werden sehen, ob sich jemand beschwert.
"die anderen Dateien in dem Paket?" Du meinst, jedem anderen Modul erfunden, Ihre eigenen string-Klasse? Was arbeitest du mit?
Die export-scripts in blender. Es könnte auch einfach sein, dass ich nicht verstehen, die Ihnen aber. Ich war gerade auf der Suche an der export_3ds, wenn Sie Pflege, die viel.

InformationsquelleAutor Leif Andersen | 2010-03-22

Schreibe einen Kommentar