У меня есть такой кортеж,
sample_tuple = ([{1:["hello"], 2: ["this"], 3:["is fun"]},{1:["hi"], 2:["how are you"]}],
[{1: ["this"], 2:[], 3:["that"]}, {1:[], 2:["yes"]}])
Из этого кортежа я хотел бы создать словарь, в котором ключевые значения имеют значение словаря.
Шаг 1:
Итерация основного большого кортежа и отслеживание индексов списков.
Шаг 2:
Получить в списки внутри кортежа и отслеживать индекс этих больших списков.
то есть, индекс 0
первого списка,
[{1:["hello"], 2: ["this"], 3:["is fun"]},{1:["hi"], 2:["how are you"]}]
Шаг 3:
Я хочу перебрать ключ и значения словаря внутри списка.
т.е. первый словарь
{1:["hello"], 2: ["this"], 3:["is fun"]}
Шаг 4: При переборе значений словаря я хочу проверить и убедиться, что значения не пустые и не None.
Когда этоПроцесс происходит, я хочу создать словарь.Для этого dictionary
,
KEY: индексы step 2
(каждый индекс каждого словаря в большом списке).
ЗНАЧЕНИЯ: словарь, который имеет ключ от ключей step 3
(из моего словаря выше) и значения как (сложная часть) списка, если значение словаря step 3
не пустоКак вы можете видеть ниже, у меня есть пустой список temporary_keyword_list
, который должен сохранять непустые значения списков во временный список, но я не получаю то, что хочу.
Ниже приведено то, что я пробовал, что яполучить и какой мой желаемый вывод.
output_1 = {}
for index, each_keyword in enumerate(sample_tuple):
for ind, each_file in enumerate(each_keyword):
temporary_dict = {}
for key, value in each_file.items():
temporary_keyword_list = []
# Check if a value is not empty or not None
if value!= [] and value is not None:
temporary_keyword_list.append(index) ## Here I want to save the index (tricky part)
# Start inserting values into the dictionary.
temporary_dict[key] = temporary_keyword_list
# Final big dictionary
output_1[ind] = temporary_dict
Мой текущий output_1
словарь:
{0: {1: [1], 2: [], 3: [1]}, 1: {1: [], 2: [1]}}
Желаемый вывод:
{0: {1: [0, 1], 2: [0], 3: [0, 1]}, 1: {1: [0], 2: [0, 1]}}
Так как его кортежи, списки иСловари Я старался изо всех сил, чтобы объяснить мою проблему.Пожалуйста, дайте мне знать в комментарии, если это не имеет смысла, я постараюсь объяснить.Любая помощь или предложение было бы здорово.