Ist 'Datei' ein Schlüsselwort in Python?

73

Ist fileein Schlüsselwort in Python?

Ich habe gesehen, dass Code mit dem Schlüsselwort fileeinwandfrei funktioniert, während andere vorgeschlagen haben, ihn nicht zu verwenden, und mein Editor ihn als Schlüsselwort farbcodiert.

user3388884
quelle
1
-1 Die Suche nach einer Liste von Schlüsselwörtern einer Sprache ist sowohl obligatorisch als auch natürlich, wenn Sie versuchen, diese Sprache zu lernen.
Solkar
4
@Solkar Auf welche Sprache beziehen Sie sich? Python2 oder Python3? Die Verwirrung von OP ist vernünftig, imo.
zero2cx

Antworten:

91

Nein, fileist ein eingebautes, kein Schlüsselwort:

>>> import keyword
>>> keyword.iskeyword('file')
False
>>> import __builtin__
>>> hasattr(__builtin__, 'file')
True

Es kann als Alias ​​für angesehen werden open(), wurde jedoch aus Python 3 entfernt, da es durch das neue ioFramework ersetzt wurde. Technisch gesehen ist dies der Objekttyp, der von der open()Funktion zurückgegeben wird .

Martijn Pieters
quelle
15
Wird die Verwendung von Dateien als Variable nicht empfohlen?
user3388884
3
ahh, ich sehe, dass Sie fileden Objekttyp bearbeitet haben, der zurückgegeben wurde, indem opender Kommentar, den ich eingegeben habe, unbrauchbar gemacht wurde ... Schauen Sie mir über die Schulter?
mgilson
15
@mgilson: Ich bin überall im Schatten, Matt.
Martijn Pieters
10
fileIst es also in Ordnung, als Variablenname zu verwenden, wenn ich nur Python 3 unterstützen möchte?
Gustavo Bezerra
13
@GustavoBezerra absolut!
Martijn Pieters