it-swarm.com.de

Verwendung von __future__ import print_function

Ich bin neu in der Programmierung mit Python, und ich versuche, mit einem Trennzeichen und einem Ende zu drucken, aber es gibt mir immer noch einen Syntaxfehler. Ich verwende python 2.7 Hier ist mein Code:

import sys, os, time
from __future__ import print_function

for x in range(0,10):
    print x, sep=' ', end=''
    time.sleep(1)

bitte helfen Zeigen Sie mir mit meinem Code, wo ich das from __future__ import print_function Dankeschön

112
UHMIS

Zunächst muss from __future__ import print_function Die erste Codezeile in Ihrem Skript sein (abgesehen von einigen unten genannten Ausnahmen). Zweitens müssen Sie, wie andere Antworten bereits sagten, jetzt print als Funktion verwenden. Das ist der springende Punkt von from __future__ import print_function; Um die Funktion print aus Python 3 in Python) zu bringen = 2,6+.

from __future__ import print_function

import sys, os, time

for x in range(0,10):
    print(x, sep=' ', end='')  # No need for sep here, but okay :)
    time.sleep(1)

__future__ - Anweisungen müssen sich am Anfang der Datei befinden, da sie grundlegende Änderungen an der Sprache bewirken. Der Compiler muss daher von Anfang an über sie informiert sein. Von die Dokumentation :

Eine zukünftige Anweisung wird speziell zur Kompilierungszeit erkannt und behandelt: Änderungen an der Semantik von Kernkonstrukten werden häufig durch Generieren von unterschiedlichem Code implementiert. Es kann sogar vorkommen, dass eine neue Funktion eine neue inkompatible Syntax einführt (z. B. ein neues reserviertes Word). In diesem Fall muss der Compiler das Modul möglicherweise anders analysieren. Solche Entscheidungen können erst zur Laufzeit aufgeschoben werden.

In der Dokumentation wird auch erwähnt, dass die einzigen Dinge, die einer __future__ - Anweisung vorangehen können, der Modul-Docstring, Kommentare, Leerzeilen und andere zukünftige Anweisungen sind.

181
Cyphase