Wie kann ich eine bestimmte Zeile aus einer Datei auslesen?

Plattformunabhängige GUIs mit wxWidgets.
Antworten
ensacom

Mittwoch 16. Januar 2008, 20:32

Hallo, wie kann ich eine bestimmte Zeile aus einer datei auslesen, diese bearbeiten und dann extakt diese Zeile wieder speichern?

Jede Zeile ist durch ein \n getrennt.


Wie kann ich zwischen den Zeilen wechseln?


Ich möchte sowas wie eine Adressdb zum üben erstellen und ich weiß nicht wie ich nun genau die angezeigte Zeile bearbeiten und speichern kann.
lunar

Mittwoch 16. Januar 2008, 22:15

Purer Random Access Zugriff ist aus der Mode gekommen, seit intelligente Menschen Dinge wie pickle, das CSV-Modul oder sqlite entwickelt haben...
Frank aka Ch3ck3r
User
Beiträge: 49
Registriert: Dienstag 13. November 2007, 21:56
Wohnort: Berlin
Kontaktdaten:

Mittwoch 16. Januar 2008, 23:09

lad einfach das ganze file in ein mehrzeiliges txtctrl und speicher es danach wieder ab
kostenlose TS2-Server für jeweils 31 Tage:
http://www.ts-onlyfree.de
ensacom

Mittwoch 16. Januar 2008, 23:25

Ja ich benutze jetzt sqlite.
Nur habe ich da noch Probleme mit den Umlauten.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Donnerstag 17. Januar 2008, 07:58

ensacom hat geschrieben:Ja ich benutze jetzt sqlite.
Nur habe ich da noch Probleme mit den Umlauten.
Hallo ensacom!

- http://www.python-forum.de/topic-6654.html
- http://www.python-forum.de/topic-6157.html

mfg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
ensacom

Donnerstag 17. Januar 2008, 09:16

Die Seite hinter dem ersten Link kenne ich schon, nur weiß ich als Python Anfänger nicht wie ich das nun umsetzen kann.

Ich habe es jetzt auch mit sqlite einigermaßen hinbekommen.
Jetzt weiß ich nur nicht wie ich alle Datensäte in einer ListCtrl ausgeben kann.

Ist zwar schon ein anderes Thema, aber vielleicht will ja trotzdem einer darauf antworten
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Donnerstag 17. Januar 2008, 10:03

ensacom hat geschrieben:Die Seite hinter dem ersten Link kenne ich schon, nur weiß ich als Python Anfänger nicht wie ich das nun umsetzen kann.
Hallo ensacom!

Dann hilft dir vielleicht dieser Beitrag weiter:
http://www.python-forum.de/topic-5095.html

mfg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
ensacom

Donnerstag 17. Januar 2008, 13:46

Vielen Dank für den Link.

Ein Problem habe ich trotzdem noch.

Wenn ich aus der Datenbank alle Werte auslese und in eine ListView einfügen will, dann geht dass wenn ich diese beiden Zeilen im script stehen habe.
Lasse ich sie weg wird nur eine Zeile ausgelesen. Woran kann das liegen und was machen diese beiden Zeilen genau?

Code: Alles auswählen

out_enc = sys.stdout.encoding or sys.getfilesystemencoding()
sys.stdout = codecs.getwriter(out_enc)(sys.__stdout__) 
BlackJack

Donnerstag 17. Januar 2008, 14:04

Die beiden Zeilen haben nichts mit wxPython/GUI zu tun. Wenn Du nicht weisst was sie tun, und das Dein Quelltext ist, dann wirf sie raus.

Wenn dann das Programm nicht mehr funktioniert, such den Fehler.
ensacom

Donnerstag 17. Januar 2008, 14:08

Klasse Antwort. Ich habe erst gstern mit der Python-Programmierung angefangen und vorher nie was damit zu tun gehabt. Wie soll ich da bitte den Fehler finden? Ich habe schon einiges getestet und ich konnte nicht finden woran es liegt. Wie auch
BlackJack

Donnerstag 17. Januar 2008, 14:21

Wenn Du erst gestern angefangen hast, dann sind Datenbank, Unicode und GUI ein bisschen viel auf einmal. Hast Du das Tutorial aus der Doku schon durch gearbeitet?
lunar

Donnerstag 17. Januar 2008, 16:31

ensacom hat geschrieben:Klasse Antwort. Ich habe erst gstern mit der Python-Programmierung angefangen und vorher nie was damit zu tun gehabt. Wie soll ich da bitte den Fehler finden?
Unsere Forumsglaskugel ist leider gerade in Reparatur, daher konnten wir ja nicht ahnen, dass du gerade mal 30h Python hinter dir hast. Bei jemanden, der sich an GUIs und Datenbanken wagt, kann man nämlich eigentlich genug Wissen voraussetzen, um Fehler selbstständig aufzuspüren!
Ich habe schon einiges getestet und ich konnte nicht finden woran es liegt. Wie auch
Statt dieses unsinnigen Postings die auftretende Fehlermeldung samt des kleinstmöglichen, lauffähigen Beispiels zu posten, wäre ein Weg gewesen, der den Fehler zwar nicht beseitigt hätte, aber BlackJack und anderen zumindest etwas in die Hand gegeben hätte, womit sie arbeiten können.

Bis jetzt haben wir weder Quellcode noch eine wirklich aussagekräftige Fehlermeldung. Wie also sollen wir dir helfen, dein Problem zu lösen, zumal du offenbar lieber deine Zeit in Vorwürfen verschwendest, als uns die Informationen zu geben, die wir brauchen.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 17. Januar 2008, 21:23

lunar hat geschrieben:Bis jetzt haben wir weder Quellcode noch eine wirklich aussagekräftige Fehlermeldung. Wie also sollen wir dir helfen, dein Problem zu lösen, zumal du offenbar lieber deine Zeit in Vorwürfen verschwendest, als uns die Informationen zu geben, die wir brauchen.
Ok, ok, wir wollen ja nicht gleich überdramatisieren :)

Aber lunar hat da ganz recht: ein Minimalbeispiel sollte schon sein. In ``de.comp.text.tex`` bekommt man ohne Minimalbeispiel selten große Hilfe, mit Minimalbeispiel sieht das radikal anders aus. Beispielcode ist eben die Grundlage.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
lunar

Donnerstag 17. Januar 2008, 21:44

Leonidas hat geschrieben:
lunar hat geschrieben:Bis jetzt haben wir weder Quellcode noch eine wirklich aussagekräftige Fehlermeldung. Wie also sollen wir dir helfen, dein Problem zu lösen, zumal du offenbar lieber deine Zeit in Vorwürfen verschwendest, als uns die Informationen zu geben, die wir brauchen.
Ok, ok, wir wollen ja nicht gleich überdramatisieren :)
Ok, du hast ja recht, wer nichts zu sagen hat, sollte seinen Mund halten. Mein Fehler...

Trotzdem frage ich mich, ob ich der einzige bin, der das Posting des OPs so interpretiert: Meiner Meinung nach spricht aus dem Posting in Stil, Wortwahl und Ausdruck die tiefe Überzeugung des OPs, hier einen Anspruch auf Hilfe zu haben. Mehr noch, in dem Posting wird die Schuld an den eigenen Fehlern indirekt auf die mangelnde Hilfe der Leute hier geschoben. Eigene Versäumnisse wie mangelnde Informationen werden einfach ignoriert. So macht Helfen halt keinen Spaß mehr...
Antworten