键和字典的字典作为其值。如何识别列表中的项目,并移动到另一个列表? (蟒蛇)

时间:2012-11-14 03:12:08

标签: python list dictionary

在我的comp sci课程中,我们刚刚介绍了词典。我试图找出如何从字典中的列表中删除项目并将其移动到另一个列表。

例如,

dict1={ 'colors':[red,blue,green], 'sweaters':[mine, his, hers]}

假设我想检查词典中是否有“红色”,它就是。那么我怎样才能将它从“颜色”中删除,并将其添加到“毛衣”中呢?列表部分让我失望。

这是我到目前为止的功能(实际问题)

`def nowRead(yourDict,title):

key1, key2, key3, key4 = yourDict.values() 
if title in key2: 
    key2.remove(title)
    key3.append(title)
return yourDict

6 个答案:

答案 0 :(得分:1)

您是否知道(a)如何访问字典中的对象; (b)如何在列表中添加内容?这些是你需要的操作。

你还需要弄清楚如何从列表中删除,但上面的内容将大部分时间都在那里。

答案 1 :(得分:0)

if "red" in d["colors"]:
    d["colors"].remove("red")
    d["sweaters"].append("red")

答案 2 :(得分:0)

for key in dict1.keys():
    if 'red' in dict1[key]:
        theList = dict1[key]
        # remove 'red' from theList
        # append 'red' to another list in dict1

答案 3 :(得分:0)

试试这个:

colorsToLook = ['red']
dVals = { 'colors': ['red','blue','green'], 'sweaters':['mine', 'his', 'hers']}

for k in set(colorsToLook):
    if k in dVals['colors']:
        dVals['sweaters'].append(dVals['colors'].pop(dVals['colors'].index(k)))

答案 4 :(得分:0)

您正在寻找类似

的内容
dict1['colors'].remove('red')
dict1['sweaters'].append('red')

更多列出了您可以在docs中找到的方法。

此外,如果您对使用Python感兴趣,Dive Into Python是一个很好的开始。

答案 5 :(得分:0)

dict1={ 'colors':['red','blue','green'], 'sweaters':['mine', 'his', 'hers']}

def change_lists(target):
    try:
        dict1['colors'].remove(target)
        dict1['sweaters'].append(target)
    except ValueError:
        pass

结果:

>>> dict1
{'colors': ['red', 'blue', 'green'], 'sweaters': ['mine', 'his', 'hers']}
>>> change_lists('red')
>>> dict1
{'colors': ['blue', 'green'], 'sweaters': ['mine', 'his', 'hers', 'red']}
>>> change_lists('black')
>>> dict1
{'colors': ['blue', 'green'], 'sweaters': ['mine', 'his', 'hers', 'red']}