Ersetzen von hex-Zeichen

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
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Dienstag 21. März 2006, 20:22

Hallo,

ich habe eine csv-Datei, in der Excel mit der sehr eigenen Logig drei Punkte in Folge durch das Zeichen 0x85 (das ist dez 133) ersetzt. Das Zeichen sind auch drei Punkte, allerdings benötige ich pro Zeichen einen Punkt, da die Zeichenanzahl stimmen muss.

Wie kann ich das mit Python wieder reparieren?

csv-Datei:

Code: Alles auswählen

20060605;20060605;1……;63;19
20060615;20060615;…4…;63;19
20060605;20060605;1……;63;19
20060615;20060615;…4..;63;19
Mein Code (funktioniert nicht):

Code: Alles auswählen

import csv

f = file('Beispiel.csv','r')

csv_reader = csv.reader(f,delimiter=';')
for line in csv_reader:
    for value in line:
        value.replace(hex(133),'...')
    print line

f.close()
Grüße

Stephan
helmut
User
Beiträge: 57
Registriert: Mittwoch 2. November 2005, 07:45
Wohnort: Dormagen

Dienstag 21. März 2006, 21:34

Versuch es mal mit diesem Code:

Code: Alles auswählen

import csv

f = file(r'D:\code\python\csv_date.csv')
csv_reader = csv.reader(f, delimiter=';')

while True:
	try:
		t=csv_reader.next()
		for val in t:
			val = val.replace('\x85','...')
			print val
	except:
		print "Ende"
		break
Helmut
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Dienstag 21. März 2006, 21:41

Hallo Helmut,

vielen Dank, das funktioniert. Hätte ich auch selber drauf kommen können :oops:

Stephan
Antworten