Ich habe diesen Code im Python-Terminal ausgeführt:
>>> for news in news_list:
... print news("li", {"class", "first"})[0].a["href"]
...
...
Ich möchte diese for-Schleife im Terminal schließen können, habe aber keine Ahnung, wie. Ich habe Enterzweimal versucht zu drücken, aber es funktioniert nicht.
command-line
12.10
python
jason328
quelle
quelle
print news
undprint news_list
davor und geben Sie uns die Ausgabe? Wir werden uns ein Bild von den dortigen Datenstrukturen machen.Antworten:
Es ist egal, an welchen Daten er arbeitet. Unabhängig davon, ob Sie nur
print "spam"
einen komplizierten Ausdruck verwenden oder nicht, sollte die for-Schleife nach zwei Eingaben geschlossen werden. Andernfalls wird eine Python-Ausnahme entweder mit fehlerhaften Daten oder einem Syntaxfehler ausgelöst.Das Problem ist, dass Sie die leeren Zeilen einrücken, sodass der Interpreter denkt, dass Sie ihm noch Code geben werden.
Sehen Sie den Unterschied im folgenden Codeausschnitt (wählen Sie den Text aus, um zu sehen, warum):
quelle
bpython
. Es ist ein Befehlszeilen-Python-Interpreter mit Schlüsselwortvorschlägen, automatischer Einrückung, Speicherung des Verlaufs über Sitzungen hinweg, einer Option zum Speichern von Code in einer Datei usw. Die ersten beiden Funktionen machen es zu einer Killer-App. So oft habe ich im Standardinterpreter nur die Tabulatortaste gedrückt, um eine Tabulatortaste auf dem Bildschirm zu finden!ipython
?