我有一個字符串,我想找到長度爲1..n的每一個可能的子集的每一個可能的子集。
例
由於字符串 「abc」 和n=3
,我想產生以下列表:
{"a", "b", "c", "aa", "ab", "ac", "ba", ..., "aaa", "aab", "aac", "aba" ..., "ccc"}
我嘗試
...是痛苦的新手。每n
一個循環,嵌套n
次。
n = 3時,我有:
characters = "abcdef" # and so on
for char in characters:
print(char)
for char1 in characters:
for char2 in characters:
print(str(char1) + str(char2))
for char1 in characters:
for char2 in characters:
for char3 in characters:
print(str(char1) + str(char2) + str(char3))
正如你所看到的,這是不可擴展的,至少可以說。有沒有一個很好的方法來做到這一點?任何複雜度的減少也會很酷,儘管我很難想象任何東西。
呃,你可以使用['itertools'](https://docs.python.org/2/library/itertools.html)中的東西嗎? – NightShadeQueen