사전과 목록이 있습니다. 목록에서 나타나는 값을 사전에서 삭제하려고합니다 (이러한 값이 사전에 표시되는 경우). 이러한 요소는 여러 번 사전에 나타날 수 있습니다.Python 사전에서 일부 요소 삭제
예 :
my_dic={'key1':['a','b','c'],'key5':['d','a','e']}
.
키 (key1 및 key5)를 호출하지 않고 'a'및 'c'값을 삭제하려고합니다.
어떻게하면됩니까? 이 같은
사전과 목록이 있습니다. 목록에서 나타나는 값을 사전에서 삭제하려고합니다 (이러한 값이 사전에 표시되는 경우). 이러한 요소는 여러 번 사전에 나타날 수 있습니다.Python 사전에서 일부 요소 삭제
예 :
my_dic={'key1':['a','b','c'],'key5':['d','a','e']}
.
키 (key1 및 key5)를 호출하지 않고 'a'및 'c'값을 삭제하려고합니다.
어떻게하면됩니까? 이 같은
뭔가 내가 그것을 사전에 존재하는 무언가를 위해 무엇을 의미 하는가
lst = ['val1','val2','val3']
dct = {
'key1': ['val1','val6'],
'key2': ['val2','val45'],
'key3': ['val52','val48']
}
for key in dct.keys():
vals = dct[key]
for value in vals:
if value in lst:
while value in vals:
vals.remove(value)
dct[key] = vals
print dct >>> {'key3': ('val52', 'val48'), 'key2': ('val45',), 'key1': ('val6',)}
target_dict = {'key1':['a','b','c'],'key5':['d','a','e']}
values_to_detele = ['a', 'c']
In [225]: for val_list in target_dict.itervalues():
for del_val in values_to_detele:
while del_val in val_list:
val_list.remove(del_val)
.....:
In [226]: target_dict
Out[226]: {'key1': ['b'], 'key5': ['d', 'e']}
AttributeError : 'dict'객체에 'itervalues'속성이 없습니다. –
Python 3을 사용하는 경우 대신 'values'를 사용하십시오. – Matthias
생각? 사전은 간단한 컨테이너가 아닌 키 - 값 매핑입니다. 키 또는 값을 보든, 또는 무엇을보고 있는지 여부는 분명하지 않습니다. – user2357112
죄송합니다, 명확하지 않았습니다. 나는 값을 참조한다. 열쇠는이 단계에서 유용하지 않지만 앞으로의 단계를 위해 열쇠를 보관하고 싶습니다. –
이 질문에 대해 왜 downvote 이유를 제공 할 수 있습니까? –