Seite 1 von 1
Automatische durchnummerierung von X Einträgen
Verfasst: Freitag 10. August 2012, 11:55
von NicNac
Hallo
Ich hab gerade mal wieder einen Hänger und deshalb frage ich euch. In meinem PyScript werden durch Usereingaben jeweils in 2 Datein Username und ein Passwort gespeichert beide getrennt. Nun hat mein Menü einen Punkt der lautet "Auflistung aller Einträge"
Wie bekomme ich es nun hin das er mir alle durchnummeriert anzeigt? Also das Anzeigen ist ja kein problem mittels einer for schleife
Aber irgendwie haut es nich hin das er 1,2,3,4,5 ect. Zumal die Einträge ja Variable sind oder fortlaufend wie auch immer.
Hoffe ihr habt den richtigen Tipp für mich
Liebe Grüße
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Freitag 10. August 2012, 12:08
von EyDu
enumerate ist in diesem Fall dein Freund. Ich hoffe aber, dass du nicht wirklich die Kennwörter als Klartext irgendwo in eine Datei gepackt hast.
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Freitag 10. August 2012, 12:53
von NicNac
Nein diese sind Verschlüsselt

Danke für den perfekten Hinweis das hab ich gesucht
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Freitag 10. August 2012, 13:17
von NicNac
Hm moment mit "enumerate" gibt er aber lediglich den Speicherplatz aus.
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Freitag 10. August 2012, 14:01
von cofi
Was meinst du mit Speicherplatz?
So ein Code ist gemeint:
Wenn du aber mehrere haben willst ist `itertools.count` evtl schoener:
Code: Alles auswählen
for i, user, password in itertools.izip(itertools.count(1), users, passwords):
...
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Samstag 11. August 2012, 09:27
von NicNac
Danke ja ich hatte ein Fehler in der Auführung, jetzt klappts wunderbar
Super

nur noch eine Frage dazu
Die Einträge in meiner Datei sind untereinander daher gibt er mir diese mit einem \n
hinten dran aus kann man das irgendwie entfernen? Sieht einfach nicht schön aus
Re: Automatische durchnummerierung von X Einträgen
Verfasst: Samstag 11. August 2012, 09:41
von BlackJack
@NicNac: Klar kann man die entfernen. Das ist eine Grundoperation auf einem Grunddatentyp — sollte also in jedem anständigen Anfängertutorial vorkommen.

Re: Automatische durchnummerierung von X Einträgen
Verfasst: Samstag 11. August 2012, 10:52
von snafu
Um Zeilenenden beim Lesen aus einer Datei loszuwerden, fallen mir zwei Möglichkeiten ein:
Code: Alles auswählen
import os
def getlines1(filename):
with open(filename) as outfile:
# liest Dateiinhalt komplett ein und splittet den String
return outfile.read().splitlines()
def getlines2(filename):
with open(filename) as outfile:
for line in outfile:
# speicherschonender, weil immer nur eine Zeile verarbeitet wird
yield line.rstrip(os.linesep)
Wenn die Datei nicht allzu groß ist, dann würde ich dir zur Vorgehensweise in `getlines1()` raten. Dürfte insbesondere für einen Anfänger auch leichter zu verstehen sein als die zweite Variante.
