Estoy tratando de construir un diccionario que contiene una serie de conjuntos:Eliminar ciertas claves de un diccionario en Python
{Field1:{Value1, Value2, Value3}, Field2{Value4}}
El problema es que yo desee entonces para eliminar cualquier campo del diccionario que sólo tiene un valor en el conjunto. He estado escribiendo código como este:
for field in FieldSet:
if len(FieldSet[field]) == 1:
del(FieldSet[field])
Pero recibe el error "RuntimeError: tamaño del diccionario cambiado durante la ejecución". (No es sorprendente, ya que eso es lo que estoy haciendo.) No es el todo y el final si tengo que unir algún tipo de solución alternativa, pero ¿es posible hacer esto?
Es decir, reemplace la primera línea con esto: 'para el campo en FieldSet.keys():' – Smashery
En realidad estoy usando python3, por lo que la línea corregida fue: para el campo en la lista (FieldSet.keys ()): – Margaret
No debería ser necesario convertir a una lista en este caso. – monkut