Heim >Backend-Entwicklung >Python-Tutorial >Der Unterschied zwischen Python2 und 3print
Sowohl Python2 als auch Python3 bieten die print()-Methode zum Drucken von Informationen, aber der Druck zwischen den beiden Versionen unterscheidet sich geringfügig
Dies spiegelt sich hauptsächlich in den folgenden Aspekten wider:
1. In Python3 ist print eine integrierte Funktion mit mehreren Parametern, während print in Python2 eine grammatikalische Struktur ist
2. , Python3 muss Klammern hinzufügen print("hello world")
3 In Python2 muss die Eingabezeichenfolge in Anführungszeichen gesetzt werden, um einige Verhaltensweisen zu vermeiden, die beim Lesen von Nicht-String-Typen auftreten um raw_input() anstelle von input() zu verwenden
1 In Python3 hatten die Entwickler vielleicht das Gefühl, dass print zwei Identitäten gleichzeitig hatte, was etwas unangenehm war, also beließen sie nur die Identität der Funktion :
print (value1, ..., sep='', end='n', file=sys.stdout, Flush=False)
Wie aus der obigen Methode ersichtlich ist Prototyp,
① . print kann mehrere Parameter und das gleichzeitige Drucken mehrerer Zeichenfolgen unterstützen (wobei ... für mehrere Zeichenfolgen steht). Verbinden Sie mehrere Zeichenfolgen.
③ gibt an, welche Zeichen am Ende der Zeichenfolge hinzugefügt werden sollen, indem Sie auf diesen Parameter verweisen. ,“ am Ende der Erklärung. Aber unter Python 3.x wird print() zu einer integrierten Funktion und die alte Methode zum Hinzufügen von „“, wird nicht funktionieren.
>>> print("python", "tab", ".com", sep='') pythontab.com >>> print("python", "tab", ".com", sep='', end='') #就可以实现打印出来不换行 pythontab.com
Natürlich kann man in Python2.7 auch Klammern verwenden, um Variablen einzuschließen, und daran ist nichts auszusetzen:
print('this is a string') #python2.7
Aber Python3 hat nicht umsonst die Funktion „print“ geändert:
In Python3 können Sie help(print) verwenden, um die Dokumentation anzuzeigen, jedoch nicht in Python2:
>>help(print) Help on built-in function print in module builtins: print(...) print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments: file: a file-like object (stream); defaults to the current sys.stdout. sep: string inserted between values, default a space. end: string appended after the last value, default a newline. flush: whether to forcibly flush the stream.
In Python3 können Sie die Ausgabeumleitung bequemer verwenden
python2 In . 7 müssen Sie die Umleitung in einem C++-ähnlichen Stil abschließen:
with open('print.txt', 'w') as f: print >> f, 'hello, python!'
In Python3:
with open('print.txt', 'w') as f: print('hello, python!', file = f)
file ist ein neu hinzugefügter Parameter von Python3 print. Ein weiterer praktischer Parameter ist sep. Beispielsweise wird ein Array von Ganzzahlen ausgegeben, die Sie jedoch mit Sternchen statt mit Leerzeichen verbinden möchten. In Python2 müssen Sie möglicherweise eine Schleife schreiben, um es zu vervollständigen. In Python3 funktioniert dies:
a = [1, 2, 3, 4, 5] print(*a, sep = '*')<br>
Wenn Sie schließlich den Druck von Python3 in Python2.7 verwenden möchten, müssen Sie nur Folgendes hinzufügen:
vor der ersten Codezeile.from __future__ import print_function
Beachten Sie, dass Anweisungen wie from __future__ import... am Anfang des Codes platziert werden müssen.
Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Python2 und 3print. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!