我生成了以下代码来遍历字典中的键
favourite_languages = {
'jen':'python',
'sarah':'c',
'edward':'ruby',
'phil':'python'
}
friends = ['sarah', 'phil']
for name in favourite_languages.keys():
print(name.title())
if name in friends:
print(" Hi " + name.title() + ", I see your favourite language is " +
favourite_languages[name].title() + "!")产生的输出是
Jen
Sarah
Edward
Phil
Hi Phil, I see your favourite language is Python!然而,我期望的是:
Jen
Sarah
Hi Sarah, I see your favourite language is C!
Edward
Phil
Hi Phil, I see your favourite language is Python!为什么萨拉没有出现在输出中?
发布于 2017-07-12 20:04:05
您没有遍历name变量。
当您的代码到达if name in friends时,存储在name中的值为phil。
您可以再次循环遍历这些名称(这会产生稍微不同的结果),或者在代码中添加缩进。
favourite_languages = {
'jen':'python',
'sarah':'c',
'edward':'ruby',
'phil':'python'
}
friends = ['sarah', 'phil']
for name in favourite_languages.keys():
print(name.title())
if name in friends:
print(" Hi " + name.title() + ", I see your favourite language is " +
favourite_languages[name].title() + "!")https://stackoverflow.com/questions/45057098
复制相似问题