所以我正在阅读一些代码,并且我遇到了这个陈述。在这种情况下,“x”是用户输入,所以我认为它是某种形式的验证,但它做了什么? x ==不是x没有任何意义,“#”是什么意思?
以下是令人讨厌的代码块:
def main(*argv):
try:
#Get FC and Fields
inputFC = arcpy.GetParameterAsText(0)
if inputFC =="#" or not inputFC:
inputFC = "Tooldata\\InputFC" # provide a default value if unspecified
答案 0 :(得分:7)
inputFC == "#" or not inputFC
是一个布尔表达式,包含两部分:
inputFC == "#"
- 检查inputFC
是否等于字符串"#"
。not inputFC
- 这会检查inputFC
是否不是真实的,这意味着它不是空的(即为空)。使用or
运算符组合这两个条件,因此只需要匹配一个条件以使整个表达式求值为true。