Как использовать раскрывающийся список для выбора данных в Python и Plotly

Python 3.x

from copy import deepcopy

my_dict = {'one': 1, 'two': 2}
new_dict_deepcopy = deepcopy(my_dict)

Без deepcopy я не могу удалить словарь имени хоста из своего домена словарь.

Без deepcopy я получаю следующую ошибку:

"RuntimeError: dictionary changed size during iteration"

... когда я пытаюсь удалить желаемый элемент из моего словаря внутри другого словаря.

import socket
import xml.etree.ElementTree as ET
from copy import deepcopy

domain является объектом словаря

def remove_hostname(domain, hostname):
    domain_copy = deepcopy(domain)
    for domains, hosts in domain_copy.items():
        for host, port in hosts.items():
           if host == hostname:
                del domain[domains][host]
    return domain

Пример вывода: [orginal] domains = {'localdomain': {'localhost': {'all': '4000' }}}

[new] domains = {'localdomain': {}}}

Так что происходит здесь, я итерации по копии словаря, а не итерации по самому словарю. С помощью этого метода вы можете удалить элементы по мере необходимости.

1
задан Konstantin 18 March 2019 в 17:08
поделиться