工作,我有一本字典,其中可能包含不同的内容,例如:有没有预先知道字典
{"name": "Dmitry", "surname": "Pak"}
{"full_name": "John Smith"}
{"name": "Joe", "last_name": "Smith"}
我需要打印的用户的全名。我看到了以下解决方案:
try:
print dic["full_name"]
except:
try:
print dic["name"]+" "+dic["surname"]
except:
print dic["name"]+" "+dic["last_name"]
它是一个良好的编码风格打造树状try..except意大利面条:)
UPD1(@strcat)
print dic.get("full_name",dic.get("name", "DefaultName")+" "+dic.get("last_name",dic.get("surname", "DefaulSurname")))
执行此答案:“has_key(key)测试字典中密钥的存在has_key()已弃用,以d中的密钥为准。直接从pydoc中获取。所以如果字典中的“fullname”:elif“名字”在字典elif等等! – 2012-03-05 16:31:19