a={
'a':{
'b':'c'
}
}
b=a['a'].get('b','')
print(b)
以上是正常的,但是如果key没有a的话,就报错了。
怎么样写好才可以不报错?
例如get方法没有这个key可以设默认值。
难道要if判断是否有a,再进行下去?
a={
'a':{
'b':'c'
}
}
b=a['a'].get('b','')
print(b)
以上是正常的,但是如果key没有a的话,就报错了。
怎么样写好才可以不报错?
例如get方法没有这个key可以设默认值。
难道要if判断是否有a,再进行下去?
如果你是希望没有key就创建的话就使用collections的defaultdict,如果只是判断的话:
if not a.get('a', {}).get('b',None): # do something
from collections import defaultdict
a = defaultdict(int) # dict,list,other...
print(a.get('abc'))
你看这个合适吗
2 回答4.3k 阅读✓ 已解决
2 回答854 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答843 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.5k 阅读
3 回答895 阅读✓ 已解决
b=a.get('a', {}).get('b','')
这样不就可以了?