Seite 1 von 1
Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 12:53
von SerBlack
Hallo, ich fange gerade mit Python an, doch ich komme nicht weiter:
Wie nummeriert man Zeilen?
Bsp:
print("Hello Wik")
print("hjdsds")
und später soll es so aussehen: (ausgabe)
1. Hello Wik
2. hjdsds
Danke im Vorraus.
Re: Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 13:04
von Sirius3
@SerBlack: na so:
wenn Du aber meinst, dass Du eine Liste mit Zeilen hast, die Du nummeriert haben willst, dann gibt es dafür enumerate:
Code: Alles auswählen
zeilen = ["Hello Wik", "hjdsds"]
for nr, zeile in enumerate(zeilen, start=1):
print("{}. {}".format(nr, zeile))
Re: Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 13:13
von SerBlack
Code: Alles auswählen
datei = "C:\\Users\\***\\Pythontest\\uebung.txt"
with open( datei ) as eingabe:
for nr,index,zeile in enumerate( eingabe, start=1):
print("{}. {}".format(nr, zeile))
inhalt = zeile.split(" ")
if len( inhalt ) > 1 :
print( "Da ist ein Leerzeichen" )
inhalt = zeile.split("\t")
if len( inhalt ) > 1:
print( "Da ist ein Tabulator" )
print( inhalt )
So sieht mein Code gerade aus, diese Code soll erkennen ob es ein Tabulator oder ein Leerzeichen ist. (also Text)
Und wo soll ich das einfügen wenn ich das nummerieren will? : uebung.txt sieht so aus:
Spalte1 Spalte2 Spalte3
Zeile2 Zeile2 Zeile2
Test hu
und wenn ich dieses Code ausgebe kommt:
inhalt = zeile.split(" ")
^
IndentationError: unexpected indent
Re: Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 13:32
von BlackJack
@SerBlack: Die ``for``-Schleife sieht nicht so aus wie von Sirius3 gezeigt und wird zu einer Ausnahme führen.
Die Einrückung ist kaputt. Und zwar so das man raten muss was Du eigentlich meinst.
Das `split()` am Leerzeichen macht keinen Sinn weil das Ergebnis nach dem ``if`` wieder verworfen wird und für einen Test ob ein bestimmtes Zeichen enthalten ist, muss man die Zeichenkette nicht zerlegen, da prüft man einfach mit dem ``in``-Operator ob das Zeichen in der Zeichenkette enthalten ist.
Re: Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 13:34
von SerBlack
Sry, bin noch ein anfänger. Wie macht man das mit dem "in"- Operator?
Re: Zeilen nummerieren
Verfasst: Freitag 31. März 2017, 15:01
von BlackJack
@SerBlack: Das ist ein binärer Operator wo rechts und links ein Operand steht, also ``a in b`` und der testet ob `a` in `b` enthalten ist. Bei Zeichenketten bedeutet das ob die Zeichenkette `a` in der Zeichenkette `b` vor kommt.