Hi, ...
Wie kann ich in python Zeichenketten zelegen und wieder zusammensetzen,
so wie es für cvs-Format notwendig ist?
Folgendes Problem:
# aus
12345123456781234567890123456123456789
# mach
12345;12345678;1234567890;123456;123456789
so heißen:
a= substr(string,1,5)
b= substr(string,6,8)
c= substr(string,14,10)
d= substr(string,24,6)
e= substr(string,30,9)
f = a + ';' + b + ';' + c + ';' + d + ';' + e
Das geht ja leider so nicht.
Danke!
Edit (Leonidas): Thread verschoben.
Zeichenketten zerlegen mit python
Substrings bekommt man in Python mit der "Slice"-Syntax: `string[start:end]` wobei `start` der Index des ersten Zeichens beginnend mit 0 für das erste Zeichen einer Zeichenkette ist, und `end` der Index des ersten Zeichens, das *nicht* mehr enthalten sein soll.
Dein Problem kann man so angehen:
Für das Zusammenfügen habe ich zwei Lösungen geschrieben. Die erste ist die Einfacherere, die zweite die Sicherere die das `csv` Modul benutzt. Die funktioniert auch dann, wenn das Semikolon in `data` vorkommt.
Dein Problem kann man so angehen:
Code: Alles auswählen
import sys
import csv
data = '12345123456781234567890123456123456789'
positions = ((0, 5), (5, 8), (13, 10), (23, 6), (29, 9))
fields = [data[start:start+length] for start, length in positions]
# Simple solution:
print ';'.join(fields)
# Safer solution:
writer = csv.writer(sys.stdout, delimiter=';')
writer.writerow(fields)
Danke für die schnelle Antwort !!!
Da ich noch nicht erkannt habe, wie python "denkt", nun meine neue Frage:
Wo erlese ich mir die Grundlagen (Paradigmen) der Sprachsysntax-Zusammenhänge am besten?
Mein Lehrbuch ist von Michael Weigert / 2. Auflage / Objektorientierte Programmierung mit Python / mitp-Verlag.
Da ich noch nicht erkannt habe, wie python "denkt", nun meine neue Frage:
Wo erlese ich mir die Grundlagen (Paradigmen) der Sprachsysntax-Zusammenhänge am besten?
Mein Lehrbuch ist von Michael Weigert / 2. Auflage / Objektorientierte Programmierung mit Python / mitp-Verlag.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ja, lies das durch (mawe würde sicher sagen: gute Wahl), schreibe viele Wegwerf-Programme, dann bekommst du ein Gefühl wie man mit Python arbeitet.THingK hat geschrieben:Wo erlese ich mir die Grundlagen (Paradigmen) der Sprachsysntax-Zusammenhänge am besten?
Mein Lehrbuch ist von Michael Weigert / 2. Auflage / Objektorientierte Programmierung mit Python / mitp-Verlag.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice