LINUX.ORG.RU

История изменений

Исправление justAmoment, (текущая версия) :

Сходил в интернет, почитал про itertools, проверил permutations.

$ python3
Python 3.6.4 (default, Jan 15 2018, 18:44:26) 
[GCC 7.2.1 20170915 (Red Hat 7.2.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from itertools import permutations
>>> x=['пиво', 'водка', 'селёдка']
>>> data = list(permutations(x, 3))
>>> print(data)
[('пиво', 'водка', 'селёдка'), ('пиво', 'селёдка', 'водка'), ('водка', 'пиво', 'селёдка'), ('водка', 'селёдка', 'пиво'), ('селёдка', 'пиво', 'водка'), ('селёдка', 'водка', 'пиво')]

Если исходник больше 3 слов, а надо комбинации только из трёх то выходит вот так.

>>> x=['пиво', 'водка', 'селёдка', 'тушёнка']
>>> data = list(permutations(x, 3))
>>> print(data)
[('пиво', 'водка', 'селёдка'), ('пиво', 'водка', 'тушёнка'), ('пиво', 'селёдка', 'водка'), ('пиво', 'селёдка', 'тушёнка'), ('пиво', 'тушёнка', 'водка'), ('пиво', 'тушёнка', 'селёдка'), ('водка', 'пиво', 'селёдка'), ('водка', 'пиво', 'тушёнка'), ('водка', 'селёдка', 'пиво'), ('водка', 'селёдка', 'тушёнка'), ('водка', 'тушёнка', 'пиво'), ('водка', 'тушёнка', 'селёдка'), ('селёдка', 'пиво', 'водка'), ('селёдка', 'пиво', 'тушёнка'), ('селёдка', 'водка', 'пиво'), ('селёдка', 'водка', 'тушёнка'), ('селёдка', 'тушёнка', 'пиво'), ('селёдка', 'тушёнка', 'водка'), ('тушёнка', 'пиво', 'водка'), ('тушёнка', 'пиво', 'селёдка'), ('тушёнка', 'водка', 'пиво'), ('тушёнка', 'водка', 'селёдка'), ('тушёнка', 'селёдка', 'пиво'), ('тушёнка', 'селёдка', 'водка')]

Исправление justAmoment, :

Сходил в интернет, почитал про itertools, проверил permutations.

$ python3
Python 3.6.4 (default, Jan 15 2018, 18:44:26) 
[GCC 7.2.1 20170915 (Red Hat 7.2.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from itertools import permutations
>>> x=['пиво', 'водка', 'селёдка']
>>> data = list(permutations(x, 3))
>>> print(data)
[('пиво', 'водка', 'селёдка'), ('пиво', 'селёдка', 'водка'), ('водка', 'пиво', 'селёдка'), ('водка', 'селёдка', 'пиво'), ('селёдка', 'пиво', 'водка'), ('селёдка', 'водка', 'пиво')]

Если исходник больше 3 слов а надо комбинации только из трёх то выходит вот так.

>>> x=['пиво', 'водка', 'селёдка', 'тушёнка']
>>> data = list(permutations(x, 3))
>>> print(data)
[('пиво', 'водка', 'селёдка'), ('пиво', 'водка', 'тушёнка'), ('пиво', 'селёдка', 'водка'), ('пиво', 'селёдка', 'тушёнка'), ('пиво', 'тушёнка', 'водка'), ('пиво', 'тушёнка', 'селёдка'), ('водка', 'пиво', 'селёдка'), ('водка', 'пиво', 'тушёнка'), ('водка', 'селёдка', 'пиво'), ('водка', 'селёдка', 'тушёнка'), ('водка', 'тушёнка', 'пиво'), ('водка', 'тушёнка', 'селёдка'), ('селёдка', 'пиво', 'водка'), ('селёдка', 'пиво', 'тушёнка'), ('селёдка', 'водка', 'пиво'), ('селёдка', 'водка', 'тушёнка'), ('селёдка', 'тушёнка', 'пиво'), ('селёдка', 'тушёнка', 'водка'), ('тушёнка', 'пиво', 'водка'), ('тушёнка', 'пиво', 'селёдка'), ('тушёнка', 'водка', 'пиво'), ('тушёнка', 'водка', 'селёдка'), ('тушёнка', 'селёдка', 'пиво'), ('тушёнка', 'селёдка', 'водка')]

Исходная версия justAmoment, :

Сходил в интернет, почитал про itertools, проверил permutations.

$ python3
Python 3.6.4 (default, Jan 15 2018, 18:44:26) 
[GCC 7.2.1 20170915 (Red Hat 7.2.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from itertools import permutations
>>> x=['пиво', 'водка', 'селёдка']
>>> data = list(permutations(x, 3))
>>> print(data)
[('пиво', 'водка', 'селёдка'), ('пиво', 'селёдка', 'водка'), ('водка', 'пиво', 'селёдка'), ('водка', 'селёдка', 'пиво'), ('селёдка', 'пиво', 'водка'), ('селёдка', 'водка', 'пиво')]