int mit file() in eine datei schreiben

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
JanDMC
User
Beiträge: 95
Registriert: Donnerstag 23. September 2004, 19:35
Kontaktdaten:

Hey Leute,

ich hab folgende Frage, ist es möglich mit der methode

Code: Alles auswählen

file.write(string)
z.B. möglich nicht nur Strings sondern ein in t zu speichern?

Ich möchte eine Datei haben in der z.B. eine ID enthalten ist, welche sich immer aus 4 byte zusammensetz.
joa nää python is toll :D
BlackJack

Schau Dir mal das `struct`-Modul an.
JanDMC
User
Beiträge: 95
Registriert: Donnerstag 23. September 2004, 19:35
Kontaktdaten:

ok danke .. werde ich tun
joa nää python is toll :D
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

Kleines Beispiel um eine Zahl in eine Datei zu schreiben:

Code: Alles auswählen

x=4
f=open('C:\\test.txt', 'w')
f.write('%s' %x)
f.close()
mfg

Thomas :-)
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hi Python 47!

Wink mit dem Betonpfeiler: Es ging darum, exakt 4 Bytes für die Speicherung der Zahl zu verwenden. :P
Der String "12345" wäre damit schon nicht mehr möglich.

Wie man aber mit ``len(struct.pack("i", 123456))`` sieht, ist das für struct kein Problem.

Code: Alles auswählen

>>> import struct
>>> i = 123456
>>> f = file(r"J:\Ablage\zahl.dat", "wb")
>>> f.write(struct.pack("i", i))
>>> f.close()
>>> 
>>> f = file(r"J:\Ablage\zahl.dat", "rb")
>>> struct.unpack("i", f.read())
(123456,)
>>> f.close()
>>> 
lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten