Python 将项从另一个词典追加到词典

Python 将项从另一个词典追加到词典,python,dictionary,Python,Dictionary,我试图根据每个键的值将值从一个字典移动到另一个字典,下面是代码: dict = {'a':1,'b':2,'c':0,'d':0,'e':0} dict2 = {} for c in dict: if dict.values() > 1: dict2.update(c) 我被告知错误: TypeError: unorderable types: dict_values() > int() 有什么想法吗 谢谢。这里的问题是dict.values()返回一

我试图根据每个键的值将值从一个字典移动到另一个字典,下面是代码:

dict = {'a':1,'b':2,'c':0,'d':0,'e':0}

dict2 = {}

for c in dict:
    if dict.values() > 1:
        dict2.update(c)
我被告知错误:

TypeError: unorderable types: dict_values() > int()
有什么想法吗


谢谢。

这里的问题是
dict.values()
返回一个iterable,您不能将其与int进行比较。相反,请遍历字典,将每个项的值与一个数字进行比较。如果符合您的条件,则在新字典中设置键/值对

dict = {'a':1,'b':2,'c':0,'d':0,'e':0}
dict2 = {}

for key, value in dict.iteritems(): #use .items() if you use Python 3
    if value > 1:
        dict2[key]= value
dict.iteritems()
(对于Python3使用
dict.items()
)将以iterables的形式返回键和值。
dict[key]=value
将使用设置的
键将
值添加到字典中

另外,
dict
在默认情况下在Python中意味着一些东西,因此将其用作变量名不是一个好主意。与某些语言不同,它允许您将其作为变量名使用,但会阻止您调用dict类。

mydict.values()
引用整个列表(在python2.x中)和python3.x中的iterable,在您的情况下:

[1, 2, 0, 0, 0] # in python2.x
因此,询问列表或iterable是否大于1毫无意义

您想要的是:

for k, v in mydict.items():
    if v > 1:
        mydict2[k] = v
使用dict作为dict类型对象的名称不是一个好主意。冲突。 使用列表作为列表对象等的名称也是如此。

尝试以下方法:

for k,v in dict.items():
    if v>1:
        dict2[k]=v

dict.values()
dict
值的一个iterate。当然,您不能将其与
int
进行比较。你想干什么?您想要什么样的
dict2
?非常感谢,我没有意识到默认情况下使用了dict(第一次使用字典,后来使用了:)