打破python的变量名规则
Python 3.7.8rc1 (tags/v3.7.8rc1:5f3933d61d, Jun 17 2020, 16:59:29) on win32Type "help", "copyright", "credits" or "license" for more information.
>>> globals()['1']=2
>>> 1
1
>>> 1
1
>>> 1
1
>>> 1
1
>>> globals)_
File "<stdin>", line 1
globals)_
^
SyntaxError: invalid syntax
>>> globals()
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '1': 2}
>>> globals()=1
>>> 对于 globals() 函数,请参考 https://fishc.com.cn/thread-224416-1-1.html 顶顶顶 没用 isdkz 发表于 2023-4-8 01:13
没用
python不支持这些变量名的原因是,这些变量名在python中另有含义。
为什么另有含义就不行?因为python以为这是另一种语法,关键字可以是任意形式的。
if = 1
其实上面代码语法的错误并不在于“if”这个变量名,而是在于“=”。因为if后接表达式,而=不能用于表达式
页:
[1]