170 похожих чатов

Itertools смотрел, он не умеет комбинировать за раз всю последовательность

всевозможными комбинациями? Я разачарован.

Пример
l=["а","б","с"]

на выходе должно быть
а
аа
ааа
аб
абб
абс
аба
б
бб
ббс
бба
баб

и т.д.

13 ответов

11 просмотров

Ну там много функций, есть та которая делает что ты просишь

Kirill Shikhalev
Ну там много функций, есть та которая делает что т...

прямо есть та самая, которая удовлетворит запросу?

Валек- Автор вопроса

я вот что придумал, это ужасно, но решает задачу. list(itertools.chain(list(itertools.product(a, repeat=3)), list(itertools.product(a, repeat=2)), list(itertools.product(a, repeat=1)))) [('a', 'a', 'a'), ('a', 'a', 'b'), ('a', 'a', 'c'), ('a', 'b', 'a'), ('a', 'b', 'b'), ('a', 'b', 'c'), ('a', 'c', 'a'), ('a', 'c', 'b'), ('a', 'c', 'c'), ('b', 'a', 'a'), ('b', 'a', 'b'), ('b', 'a', 'c'), ('b', 'b', 'a'), ('b', 'b', 'b'), ('b', 'b', 'c'), ('b', 'c', 'a'), ('b', 'c', 'b'), ('b', 'c', 'c'), ('c', 'a', 'a'), ('c', 'a', 'b'), ('c', 'a', 'c'), ('c', 'b', 'a'), ('c', 'b', 'b'), ('c', 'b', 'c'), ('c', 'c', 'a'), ('c', 'c', 'b'), ('c', 'c', 'c'), ('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('c', 'a'), ('c', 'b'), ('c', 'c'), ('a',), ('b',), ('c',)] Есть более красивое решение?

Валек- Автор вопроса
Kirill Shikhalev
Есть, itertools.combinations_with_replacement

нет, это не оно, см пример внимательнее.

Kirill Shikhalev
Это оно

нет это не оно

Валек- Автор вопроса
Kirill Shikhalev
Это оно

это не оно, выше уже разобрали

Валек- Автор вопроса
Валек
нет.

Это прямо по определению оно.

Валек
это не оно, выше уже разобрали

А, оно походу только с сохранением порядка генерит. Хуево

Похожие вопросы

Обсуждают сегодня

комрады, че-та лыжы не едут var tmpFont: TFont; begin tmpFont:= TFont.Create; try case rgFontColor.ItemIndex of 0: tmpFont.Color:= clWindowText; 1: tmpFo...
Ed Doc
34
Интересно, нет ли какого-то способа получить из dll не адрес самой метки, а адрес со смещением?
The Bird of Hermes
54
Можно вообще написать: Person fName' lName' age'. Тогда действительно имена полей потребуются лишь в строковом виде, чтобы эти fName' и т.д. достать :-) Но разве для этого нуж...
Михаил
8
generic procedure function test<T>(param: T); type case T of longint: NewT = word; longword: NewT = byte; end; var v1: NewT; Как это можно сделать? Чтобы у меня...
notme
21
Делал задачу вот такую https://stepik.org/lesson/4985/step/9?unit=1083 получилось такое https://play.haskell.org/saved/ipKrepqe оно работает, тестов много не писал, но работае...
Fedor
22
преобразовать в число или в один тип?
Alexey Kulakov
11
Hello everyone I am trying to run 4 year old project and I am having this issue anyone can help?
Nitish Garg
10
Всем привет, прошу совета по сложившейся ситуации: Windows приложение подключается к БД MySQL используя Firedac. При работе с версией MySQL 5.7 все отлично, но когда подключаю...
Constantine
6
Всем добрый вечер. Нужна помощь с прикруткой telegram-vapor-bot к проекту Vapor. Удалось после старта приложения отправить тестовое сообщение в бот, вот только сразу после это...
advanc3d
3
program Project1; procedure generic_proc<T>(); begin end; begin generic_proc<Int64>(0); end. Я чет не понял, а как в Delphi сделать такое? процедуру-дженерик... PS: а на...
notme
10
Карта сайта