Получить все комбинации строки в PythonPython

Программы на Python
Anonymous
Получить все комбинации строки в Python

Сообщение Anonymous »

Представьте, что у нас есть строка типа: «хороший студент университета». Нам нужно составить все комбинации слов в этой строке. Нам также необходимо добавить в эти комбинации несколько символов-разделителей. Для пояснения посмотрите пример ниже:

Код: Выделить всё

    String: "good university student"
Separators = ["-","+"]
Expected results:
student
university
good
good-university-student
good-university
good-student
university-student
good+university+student
good+university
good+student
university+student
Я попробовал следующий код, но результат не тот, который я ожидал, и мне удалось получить не все комбинации.

Код: Выделить всё

def create_name_combos(mystring):
words = mystring.split()
combos = []
for i in range(len(words) - 1):
for separator in ["-", "+", "&"]:
current_combo = separator.join(words[:i+1] + [separator + words[i+1]])
combos.append(current_combo)
return combos
Какое решение будет лучшим, чтобы получить все возможные комбинации?

Подробнее здесь: https://stackoverflow.com/questions/787 ... -in-python

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