【发布时间】:2019-07-28 06:52:12
【问题描述】:
我在代码中犯了一个错字,在语法上完全无声。
dict_args : {"arg1":1,"arg2":2,"arg3":3}
# .... Some more code
some_function(**dict_args)
# .... Some more code
如果你没有注意到,这是在声明变量dict_args时使用:而不是=。
所以我的问题是,python 语法:a:1,本身,是否有任何意义?还是应该假设它是语法错误?
【问题讨论】:
-
它被解释为类型提示。
-
如有疑问,您可以通过
import dis; dis.dis('a : 1')了解正在发生的事情。如前所述,代码为左侧设置了注释。 -
要跟进@PatrickHaugh 的评论,请查看type hint documentation
-
也就是说,您可以这样做有点有点奇怪,例如
a : 1即使a不存在,并且在该行运行后仍然不存在。 -
它是一个变量注解,其中一个使用是作为类型提示。
标签: python python-3.x syntax syntax-error