显然(至少对我来说,令人惊讶的是),在Python中,这是一个非常有效的表达式:这怎么回事?我使用ast模块检查了它,得到了以下内容:Out[1]: [<_ast.AnnAssign at 0x110ff5be0>]annassign: ':' test ['=' test]
这对我来说没什么意义。如果它是带注释的赋值,那么为什么表达式的赋值部分是可选的?如果表达式的赋值部分不存
如果参数为“#”,并且省略了冒号,则应用程序应确保指定单词(这是避免字符串长度展开引起歧义所必需的)。省略冒号只会导致对未设置的参数进行测试。换句话说,如果包含冒号,运算符将测试这两个参数是否存在,并且它的值不是null;如果省略冒号,运算符只测试是否存在。在此之前,我理解这些扩展的冒号版本有什么不同。
如果参数为“#”,并且省略了冒号,则应用程序应确保指定单词(这是避免字符串长度展开引起歧义所必需的)。如果他们可以使用parameter of #