我正在尝试使用此代码
result = arr['key1'] or arr['key2'] or arr['key3']
说明: 我希望从或者dict键得到结果值。键的可用性取决于环境。这不是关于..只能定义一个arr键...
是否有像is_defined()
这样的函数或方法我们如何在python中执行此操作?
更新
我这里遇到了一个新问题.. 代码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)
代码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)
在serverInfo_D [val ['name']]&中看到差异。 serverInfo_D.get(VAL [ '名称']) 代码2失败但代码1工作
数据
serverInfo_D:{'user': 'usr', 'pass': 'pass'}
data: {'par1': 9995, 'extraparam1': 22}
val: {'par1','user','pass','extraparam1'}
对于数据dict ..以及for循环中迭代val 的所有代码都引发了异常
答案 0 :(得分:7)
result = arr.get('key1', arr.get('key2', arr.get('key3')))