Python – все возможные комбинации N кортежей
Введение
В Python кортеж — это один из типов структур данных. Кортежи состоят из элементов или элементов и больше похожи на списки. В нем есть элементы, которые нельзя изменить после объявления. Для возврата всех возможных комбинаций кортежа в первую очередь используется библиотека itertool. Процесс итерации или повторения кортежей выполняется с использованием объекта итератора, содержащего различные элементы. Чтобы вернуть все возможные комбинации в кортеже, мы можем использовать множество функций, таких как Combination(), Chain(), Product() и метод конкатенации.
Все возможные кортежи комбинаций N
Кортеж — это структура данных, состоящая из элементов, взаимозаменяемых после инициализации. Кортежам обычно присваивается значение, и они возвращают оператор в соответствии с точкой зрения пользователя. В случае возврата все возможные комбинации данных кортежей приведены ниже различными методами.
Синтаксис
combination(substr, N)
Метод Combination() используется для определения количества способов выбора строки, а пара отображаемых элементов задается как N.
Алгоритм
Шаг 1 — Модули импортируются в код в соответствии с потребностями функции.
-
Шаг 2 — Библиотеки, используемые в кодах, представляют собой модуль itertools для использования функций Combination() и Product().
Шаг 3 — Входная строка объявляется как кортеж_1 и кортеж_2 и содержит набор строковых переменных в структуре данных кортежа.
Шаг 4 — Объявите переменную, в которой пара элементов будет напечатана.
Шаг 5. Чтобы сгенерировать все возможные способы печати буквы «N», используйте такие методы, как Combination(), метод Product() и функцию Append().
Шаг 6 — Значение преобразования сохраняется вкомбинированном_списке.
Шаг 7 — Оператор печати возвращает все возможные комбинации в соответствии со значением N.
Подход
Подход 1 — Использование метода сочетания()
Подход 2 — Использование вложенного цикла
Подход 3 — Использование метода product()
Подход 1. Программа Python для отображения кортежей с использованием метода Combination():
Определен Iter_object, а также переменная длины “N” со значением 2. Этот код использует функцию Combination() для извлечения всех возможных комбинаций заданной длины. Объединенный кортеж хранится в списке с именем «комбинированный_тупле».
Пример
#itertools library is imported
import itertools
#tuple_1 is initialized with list of values
tuple_1 = [3, 1, 7 ,5]
#num variable is declared as 2
N=2
#combinations() function is used to combine the list of values in two format
combined_tuples = list(itertools.combinations(tuple_1 ,N))
# It returns the tuples of the iter_object variable
print(combined_tuples)
Выход
[(3, 1), (3, 7), (3, 5), (1, 7), (1, 5), (7, 5)]
Подход 2. Программа Python для отображения кортежей с использованием вложенного цикла.
В этом подходе модуль itertool не используется, а для перебора значений кортежа, вложенного в цикл for. Два кортежа инициализируются переменным списком значений, а также определяется пустой список. Используя функцию add(), мы можем сложить два кортежа вместе и создать новый кортеж с парой элементов.
Пример
#tuple_1 and tuple_2 is initialized with a list of values
tuple_1 = (5, 7)
tuple_2 = (6, 1)
#empty list is initialized
combined_list = []
# nested for loop is used to iterate through the tuples
for one in tuple_1:
for two in tuple_2:
combined_list.append((one,two))
# It returns the tuples of the combined_list variable
print("All possible combinations of the tuple are:",combined_list)
Выход
All possible combinations of the tuple are: [(5, 6), (5, 1), (7, 6), (7, 1)]
Подход 3. Программа Python для отображения кортежей с использованием метода product().
Для перебора кортежей необходима библиотека itertools. Два кортежа инициализируются переменным списком значений. Процесс объединения двух кортежей упрощается за счет использования функции product(), которая выполняет декартово произведение членов, и использования оператора печати для возврата всех возможных значений.
Пример
#itertools library is imported
import itertools
#tuple_1 and tuple_2 is initialized with a list of values
tuple_1 = (5, 7, 1, 4, 1)
tuple_2 = (6, 8, 2, 0, 2)
#product() function is used to get the combined tuple values
combined_list = list(itertools.product(tuple_1, tuple_2))
# It returns the tuples of the combined_list variable
print("All possible combinations of the tuple are:",combined_list)
Выход
All possible combinations of the tuple are: [(5, 6), (5, 8), (5, 2), (5, 0), (5, 2), (7, 6), (7, 8), (7, 2), (7, 0), (7, 2), (1, 6), (1, 8), (1, 2), (1, 0), (1, 2), (4, 6), (4, 8), (4, 2), (4, 0), (4, 2), (1, 6), (1, 8), (1, 2), (1, 0), (1, 2)]
Заключение
В языке Python указать, что вы объявили кортеж, можно с помощью скобок «()». Элементы в этих скобках могут быть определены как элементы для инициализации как кортежи. Преимущества кортежей в том, что они следуют определенному порядку определения элементов.