Is 'file' a keyword in python?
Is file
a keyword in python?
I've seen some code using the keyword file
just fine, while others have suggested not to use it and my editor is color coding it as a keyword.
No, file
is a builtin, not a keyword:
>>> import keyword
>>> keyword.iskeyword('file')
False
>>> import __builtin__
>>> hasattr(__builtin__, 'file')
True
It can be seen as an alias for open()
, but it has been removed from Python 3, as the new io
framework replaced it. Technically, it is the type of object returned by the open()
function.
file
is neither a keyword nor a builtin in Python 3.
>>> import keyword
>>> 'file' in keyword.kwlist
False
>>> import builtins
>>> 'file' in dir(builtins)
False
file
is also used as variable example from Python 3 doc.
with open('spam.txt', 'w') as file:
file.write('Spam and eggs!')