【发布时间】:2017-08-10 14:21:44
【问题描述】:
我创建了一个函数,它使用两个字典,curr_stats 和 weekly_result。如果weekly_result 中的任何键不在curr_stats 中,则该函数应该只打印invalid_msg,而curr_stats 没有突变。
但我的代码第 5 行的 if 语句似乎不起作用。它应该会触发下一个if 语句,因此不会发生curr_stats 的突变。
def update_standings(curr_stats, weekly_result):
invalid = 0
point_counter(weekly_result)
for team in weekly_result:
if team in curr_stats == False:
invalid = invalid + 1
if invalid > 0:
print(invalid_msg)
else:
for team in weekly_result:
curr_stats[team] = curr_stats[team] + weekly_result[team]
【问题讨论】:
-
@matteo-piano 原码等于
team in curr_stats and curr_stats == False,第二部分是False,见docs.python.org/2/reference/expressions.html#comparisons -
@PawełKordowski 哦,我明白了,好的,谢谢,谢谢
标签: python dictionary conditional