我想使用密钥的字典值来验证条件是否为真,例如
dictionary = [{'Class': '>50K'},{'Class': '<=50K'}]
for i in dictionary:
if i['Class'] == '<=50k':
po_list_count +=1
else:
rich_list_count +=1
print(po_list_count,'---',rich_list_count)
打印应为1 --- 1而不是0 --- 2
我尝试了if i['Class'] in ['<=50k']
但结果相同。
是不是我不理解if语句是如何工作的,也可能是它如何处理字符串?
答案 0 :(得分:3)
您需要检查大写“K”:
if i['Class'] == '<=50K':
您在dictionary
中使用了一个:
dictionary = [{'Class': '>50K'},{'Class': '<=50K'}]
# here--^
答案 1 :(得分:0)
在您的定义中,您使用大写<=50K
并在if语句中使用小写k
答案 2 :(得分:0)
因为k
和K
不是同一个字符。你必须匹配它:
if i['class'] = '50K':
或者,一个更好的伎俩:只需用小写检查两个!
if i['class'].lower() = '50k':
希望这有帮助!