【发布时间】:2014-10-27 21:05:53
【问题描述】:
这样可以正常工作:
a = 1
if a:
b = a
但这不起作用:
if a:
b = a
鉴于我们明确表示,不会执行这个“if”语句..
"if a exists"
那为什么会出错呢?如果它不存在,那么就不要在该 if 语句的参数内做任何事情。
更新
原来“if a”的意思是……“if a value for a”在python中的意思。
我正在寻找“如果 a 存在则继续前进”的等价物
【问题讨论】:
-
你不是说'如果
a存在'。您在问值a引用是真还是假。命名引用对象,对象有一个布尔值。 -
为什么需要知道名称是否已定义?听起来好像你想先做
a = None。 -
Python 名称的良好入门:nedbatchelder.com/text/names.html
-
你可以赶上
NameError。但关键是,这根本不是您通常在 Python 中编码的方式。你应该*知道”a是否在那个时候被定义,如果这意味着更早将None分配给它,就这样吧。 -
变量不是学生,试图通过它们之间的类比进行编码是没有帮助的。
标签: python python-2.7