我正在尝试使用嵌套字典中的项目格式化字符串(如下)
people = {
'Alice': {
'phone': '2341',
'addr': '87 Eastlake Court'
},
'Beth': {
'phone': '9102',
'addr': '563 Hartford Drive'
},
'Randy': {
'phone': '4563',
'addr': '93 SW 43rd'
}
}
从上面的(简单的)字典中,我想格式化一个字符串来打印出 Randy 的电话分机。
我可以使用以下方式访问他的所有详细信息:
print("Randy's phone # is %(Randy)s" % people)
但我不确定如何深入字典以从字典中挑出电话号码。
顺便说一句,我正在使用 Python 3.3。
最佳答案
print("Randy's phone # is {0[Randy][phone]}".format(people))
或
print("Randy's phone # is {Randy[phone]}".format(**people))
如果您只使用一个值,则传递整个字典没有意义。
print("Randy's phone # is {}".format(people['Randy']['phone']))
或
print("Randy's phone # is %s" % people['Randy']['phone'])
也可以。
如果您有很多这样的格式字符串并且不知道它们使用哪些值,并且希望它们能够访问任何值,那么传递 dict 是有意义的。
或者如果您在格式字符串中使用许多值并单独传递它们就太冗长了。
关于python - 在 Python 中访问嵌套的字典项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16173809/