I learn that exit
is not a keyword in Python by,
import keyword
print('exit' in keyword.kwlist) # Output: False
But there is no reminder of NameError: name 'exit' is not defined
while using it. The output of the following snippet code makes me confused. Can anyone help me out?
for i in range(5):print(i)cur=i if i<2 else exitprint(cur)
# Output
0
1
2
3
4
Use exit() or Ctrl-D (i.e. EOF) to exit
I am unable to get related info about exit
from Python documentations, except for exit([code=None])
.
Keywords are part of the python syntax. They usually have special meaning in statements (e.g. for
, del
, if
...). This has other consequences -- e.g. you can't make a variable with the same name as a keyword.
builtins are callable objects (e.g. functions or at least function-like) that python provides in the namespace by default. examples of builtin functions are things like sorted
, id
, vars
, ...
It's worth noting that exit
is a convenience provided when in an interactive session. It's highly encouraged to use sys.exit
instead.