Python 比较来自同一字典的键值不起作用
Python compare keys values from same dictionary not working
我正在学习 python 但我不明白为什么这段简单的代码不起作用。
list = {"Text":"Text"}
print(list)
if list.keys() == list.values():
print("True")
else:
print("False")
这个 returns False
当它应该 return True
.
dict.keys() 和 dict.values() 的类型不同,因此必须将两者都转换为列表对象才能进行比较。
data = {"Text":"Text"}
a = data.keys()
b = data.values()
print(a)
print(b)
print(a == b) # False
if list(a) == list(b):
print("True")
else:
print("False")
输出:
dict_keys(['Text'])
dict_values(['Text'])
False
True
keys()
和 values()
不 return 列表,它们 return 产生键和值的迭代器对象。如果要比较内容,请使用 list()
函数将它们转换为列表。
您将无法在代码段中执行此操作,因为您已将名称 list
重新定义到字典中。您应该使用与内置函数不同的变量名。
my_dict = {"Text":"Text"}
print(my_dict)
if list(my_dict.keys()) == list(my_dict.values()):
print("True")
else:
print("False")
我正在学习 python 但我不明白为什么这段简单的代码不起作用。
list = {"Text":"Text"}
print(list)
if list.keys() == list.values():
print("True")
else:
print("False")
这个 returns False
当它应该 return True
.
dict.keys() 和 dict.values() 的类型不同,因此必须将两者都转换为列表对象才能进行比较。
data = {"Text":"Text"}
a = data.keys()
b = data.values()
print(a)
print(b)
print(a == b) # False
if list(a) == list(b):
print("True")
else:
print("False")
输出:
dict_keys(['Text'])
dict_values(['Text'])
False
True
keys()
和 values()
不 return 列表,它们 return 产生键和值的迭代器对象。如果要比较内容,请使用 list()
函数将它们转换为列表。
您将无法在代码段中执行此操作,因为您已将名称 list
重新定义到字典中。您应该使用与内置函数不同的变量名。
my_dict = {"Text":"Text"}
print(my_dict)
if list(my_dict.keys()) == list(my_dict.values()):
print("True")
else:
print("False")