我正在尝试使用此代码
result = arr['key1'] or arr['key2'] or arr['key3']
Run Code Online (Sandbox Code Playgroud)
解释:我希望从或者dict键得到结果值.键的可用性取决于环境.这不是关于None ..只能定义一个arr键...
那么有一个函数或方法,如is_defined()
我们如何在python中执行此操作?
UPDATE
我在这里遇到了一个新问题.代码1:
try:
urlParams += "%s=%s&"%(val['name'], data.get(val['name'], serverInfo_D.get(val['name'])))
except KeyError:
print "expected parameter not provided - "+val["name"]+" is missing"
exit(0)
Run Code Online (Sandbox Code Playgroud)
代码2:
try:
urlParams += "%s=%s&"%(val['name'], data.get(val['name'], serverInfo_D[val['name']]))
except KeyError:
print "expected parameter not provided - "+val["name"]+" is missing"
exit(0)
Run Code Online (Sandbox Code Playgroud)
请参阅serverInfo_D [val ['name']]和serverInfo_D.get(val ['name'])中的差异代码2失败,但代码1正常工作
数据
serverInfo_D:{'user': 'usr', 'pass': 'pass'}
data: {'par1': 9995, 'extraparam1': 22}
val: {'par1','user','pass','extraparam1'}
Run Code Online (Sandbox Code Playgroud)
针对数据dict ..以及for循环中迭代val的所有代码引发异常