我试图搜索它,但是找不到我需要的东西。 我是Python的新手,并且是一般编程人员,在Python Crash Course第6章中,我被困于试图理解以下代码:
favorite_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
friends = ['phil', 'sarah']
for name in favorite_languages.keys():
print(f"Hi, {name.title()}")
if name in friends:
language = favorite_languages[name].title()
print(f"\t{name.title()}, I see you love {language}!")
我的问题恰好在这一行:
language = favorite_languages[name].title()
我不明白为什么,当它在for循环中打印下一行时,language
会打印字典的值而不是键。
也许这是一个非常愚蠢的问题,但我在书中的其他地方漏了一些告诉我的东西,但是我真的很难弄清楚这一点。我尝试重新阅读PCC的前几章,谷歌搜索和阅读pydoc
,但没有得到答案。所以这里有人可以向我解释一下吗?
答案 0 :(得分:0)
Name是一个字符串,在这种情况下为'phil'或'sarah',因为这是数组friends中的两个值。创建字典的全部目的是您可以获取密钥,并达到在字典中分配的任何值。例如,在第一个循环中,名称等于“ phil”。它进入字典,检查链接的值是phil,并将其设置为该值。在字典中,当您这样做时:
print(dictionary_name[key])
无论键链接到什么,它将打印该值。