Drucken bestimmte Zeile in python?

Habe ich diesen code so weit.
Eingabe einer Zahl, und es sollten die Lesen, die bestimmte Linie in der packages.txt - Datei und drucken Sie es in der python-shell.In dem code unten, wenn Sie geben Sie "3" in es wird zum Beispiel print-Zeile 1-3, die ich nicht wollen, es zu tun.

which = input('Which package would you like?: ')

    with open('packages.txt') as f:
        i = 0
        for line in f:
            if i == (int(which)):
                break
            i += 1
            print (line)
  • Können Sie erklären, warum druckt er Linien 1-3? (Wenn Sie können, dann sind Sie ein guter Weg, um das problem zu lösen! 🙂 )
  • Ich denke, dass python vielleicht liest Zeile von 0 bis (die) und druckt Sie? oder bin ich hier falsch? 😛
  • Ja, das ist das, was passiert, aber warum passiert das? (Welcher Teil des Codes bedeutet, dass jede Zeile bis zu which gedruckt? Wo funktioniert die Python die Zeilen Durchlaufen und wo findet die print-Anweisung auftreten?)
  • gut, geben Sie eine Nummer, die ich bekommt auf diese Zahl eingestellt und es wird gedruckt bis f wird auf 0 gesetzt? ich denke, dass das problem in "i += 1"?
InformationsquelleAutor EatMyApples | 2012-05-06
Schreibe einen Kommentar