在 Python 中将 for 循环和 if 语句与字典相结合



我正在做一个练习,在这个练习中,我应该同时有一个列表和字典,如果列表中的值不在字典中,我会打印出指定的消息,有人可以帮忙吗?出于某种原因,它只打印出 else 语句,而不打印 if。我确定我错过了一些东西

poll_takers = ['angel', 'jana', 'murad', 'adel', 'joe', 'jake']
favorite_language = {
    'angel': 'python',
    'jana': 'c++',
    'murad': 'python',
    'adel': 'swift',
}
for name in poll_takers:
    if name == favorite_language:
        print(name.title() + ", thank you for taking the poll.")
    else:
        print(name.title() + ", please take the poll.")

你的条件应该是

if name in favorite_language

检查键是否在字典中,否则

if name == favorite_language

总是计算为 false,因为字符串名称不等于字典,因为==测试相等性,这就是 else 语句不断被触发的原因

最新更新