Алгоритм компактного представления кортежей с использованием декартова произведенияPython

Программы на Python
Ответить
Anonymous
 Алгоритм компактного представления кортежей с использованием декартова произведения

Сообщение Anonymous »

У меня есть следующий набор кортежей:
('red', 'hot', 'big'),
('red', 'hot', ' маленький'),
('красный', 'холодный', 'большой'),
('синий', 'горячий', 'большой'),
('синий', ' холодный», «большой»),
('зеленый', 'горячий', 'большой'),
('зеленый', 'холодный', 'большой')
Я хотел бы создать компактное представление вышеизложенного, где элемент кортежа может представлять собой список разрешенных значений. Цель состоит в том, чтобы, имея такое представление, можно было легко сгенерировать исходный набор, применив декартово произведение. Результат преобразования может выглядеть так:
('красный', ['горячий', 'холодный'], 'большой'),
('красный', 'горячий', 'маленький'),
(['синий', 'зеленый'], ['горячий', 'холодный'], 'большой')
Я хотим, чтобы представление было как можно более компактным. Можете ли вы предложить алгоритм, желательно известный?

Подробнее здесь: https://stackoverflow.com/questions/792 ... an-product
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»