Hallo,
weiss jemand wie man aus einem TXT File, worin sich Pfadinformation als einen langen String vorliegen. in eine Liste eingefügt werden kann ? Wenn ich bei Python einen String in eine Liste einfügen will muss ich doch nur angeben zwischen welchen Positionen der string ausgeschnitten und als ein item eingefügt werden soll, allerdings ist die Angabe in Form von Integerzahlen. Was mach ich denn bei meinen Pfaden z.B.
C:\\bin\hick\t.exe_*_C:\\bin\huck\setup\u.exe_*_C:\\bin\hock\graph\v.exe_*_.... usw
die Pfade sind schliesslich immer unterschiedlich lang und zufällig.
Kann man irgendwie die Position in Form von Strings angeben ? und die einzelnen Pfade als Einträge in eine liste einfügen?
Strings schneiden und in eine Liste einfügen
-
- User
- Beiträge: 419
- Registriert: Sonntag 3. September 2006, 15:11
- Wohnort: in den weiten von NRW
- Kontaktdaten:
Hi!
Was genau willst du? Mit s.split("_*_") kannst du deine Pfade trennen und hast direkt eine Liste. Mit indizes kannst du das mit s[5:10] machen. Ansonsten gibts noch diverse string-Methoden zum suchen und finden, wenn du aber schon ne liste hast, kannste einfach die Längen der Listitems + nach bedarf den 3 Trennzeichen verrechnen.
Was genau willst du? Mit s.split("_*_") kannst du deine Pfade trennen und hast direkt eine Liste. Mit indizes kannst du das mit s[5:10] machen. Ansonsten gibts noch diverse string-Methoden zum suchen und finden, wenn du aber schon ne liste hast, kannste einfach die Längen der Listitems + nach bedarf den 3 Trennzeichen verrechnen.
s.split() hab ich bereits angewendet aber es kommt ne fehlermeldung daraufhin.
so sieht mein source code aus :
def fastaread() :
eingabe = raw_input("asfs")
f = open("d:\\FastaFiles.txt")
entry = f.readlines()
fliste = entry.split("_*_")
print fliste
fastaread()
und das ist die fehlermeldung.
fliste = entry.split("_*_")
AttributeError: 'list' object has no attribute 'split'
so sieht mein source code aus :
def fastaread() :
eingabe = raw_input("asfs")
f = open("d:\\FastaFiles.txt")
entry = f.readlines()
fliste = entry.split("_*_")
print fliste
fastaread()
und das ist die fehlermeldung.
fliste = entry.split("_*_")
AttributeError: 'list' object has no attribute 'split'
natürlich nicht entry.split() sondern str.split() oder auch verkehrt?
- Rebecca
- User
- Beiträge: 1662
- Registriert: Freitag 3. Februar 2006, 12:28
- Wohnort: DN, Heimat: HB
- Kontaktdaten:
skanami hat geschrieben: f = open("d:\\FastaFiles.txt")
entry = f.readlines()
fliste = entry.split("_*_")
f.readlines liefert eine Liste mit allen Zeilen. Du willst aber split nicht auf die Liste aller Zeilen, sondern auch eine einzelne Zeile anwenden, also ein Element der Liste.skanami hat geschrieben: und das ist die fehlermeldung.
fliste = entry.split("_*_")
AttributeError: 'list' object has no attribute 'split'
Offizielles Python-Tutorial (Deutsche Version)
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Jau, da ich im TXT File eh nur eine Zeile hab, hab ichs nun readline() genannt klappt nun. Danke !