Как получить комбинации ['AB','BA,....и т. д.]?
Мне нужен результат из варианта 2, но возможно можно как то получить этот результат из combinations без такого усложнения как в варианте 2?
Вариант 1
def listPosition(word):
from itertools import combinations
import string
Base_word = string.ascii_uppercase
Base_word_1 = list(combinations(Base_word,2))
return Base_word_1
print(listPosition('r'))
[('A', 'B'), ('A', 'C'), ('A', 'D')....]
Вариант 2
Base_word_1 = [''.join(x) for x in combinations(Base_word,2)]
['AB', 'AC', 'AD', 'AE', 'AF', 'AG'....
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
Ну если усложнение - list comprehension:
from itertools import combinations
import string
def listPosition(word):
Base_word = string.ascii_uppercase
Base_word_1 = []
for w in combinations(Base_word, 2):
word = ''.join(w)
Base_word_1.append(word)
return Base_word_1
print(listPosition('r'))
Если еще и join пугает:
from itertools import combinations
import string
def listPosition(word):
Base_word = string.ascii_uppercase
Base_word_1 = []
for w in combinations(Base_word, 2):
word = ''
for letter in w:
word += letter
Base_word_1.append(word)
return Base_word_1
print(listPosition('r'))