@OlegUnity

Как найти все возможные комбинации переменных в python?

На вход подаются данные в таком формате:
generate_json_loads = [{'idzad': 7175912, 'type': 'answer/single', 'quesh': [{'ID': 'h27238', 'txt': 'да'}, {'ID': '2hrsm7', 'txt': 'нет'}]}, {'idzad': 7175915, 'type': 'answer/single', 'quesh': [{'ID': '2qtj2u', 'txt': 'да'}, {'ID': 'f3ahq9', 'txt': 'нет'}]}, {'idzad': 7175914, 'type': 'answer/single', 'quesh': [{'ID': 'maduqk', 'txt': 'нет'}, {'ID': '3hoqim', 'txt': 'да'}]}, {'idzad': 7175913, 'type': 'answer/single', 'quesh': [{'ID': 'vj1a2k', 'txt': 'нет'}, {'ID': '4cd2ic', 'txt': 'да'}]}]

Я, используя форму подстановки:
generate = []
anc = {'answers':{}}
for task in generate_json_loads:
	print(anc)
	for var in task['quesh']:
		print(var)
		i = task['idzad']
		anc['answers'][i] = {'id':var['ID'],"@answer_type":task['type']} 
	generate.append(anc)

Получаю на выходе:
{'answers': {7175912: {'id': '2hrsm7', '@answer_type': 'answer/single'}, 7175915: {'id': 'f3ahq9', '@answer_type': 'answer/single'}, 7175914: {'id': '3hoqim', '@answer_type': 'answer/single'}}}

Но всевозможных комбинаций по формуле 2**i = 16, где 2 это максимальное количество вариантов ответа, а i - количество заданий.
Как мне получить все возможные комбинации в форме выше?
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
@OlegUnity Автор вопроса
Вопрос решил, использовал for i in itertools.product('01', repeat=4)
и подставил значения
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AlexBoss
{x:y for x in first_list for y in second_list} получатся все комбинации
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
11 мая 2024, в 00:19
1000 руб./за проект
10 мая 2024, в 23:51
30000 руб./за проект
10 мая 2024, в 23:33
2500 руб./за проект