Python 生成两个参数元素的子集

Python 生成两个参数元素的子集,python,list,Python,List,我是python的新手,目前正在使用函数在列表中生成子集。这是我需要取回的样品 例如 字符串:AECG 子集:['AE','AC','AG','EC','EG','CG'] 我想把字符串放在一个空列表中,然后在列表中播放,但它不起作用。你能帮忙吗~ result=[] s="AECG" for i in s: result.append(i) for j in range (0,len(result)-1): for x in range (1,len(re

我是python的新手,目前正在使用函数在列表中生成子集。这是我需要取回的样品

例如

  • 字符串:
    AECG
  • 子集:
    ['AE','AC','AG','EC','EG','CG']
我想把字符串放在一个空列表中,然后在列表中播放,但它不起作用。你能帮忙吗~

result=[]
s="AECG"

for i in s:
    result.append(i)
    for j in range (0,len(result)-1):
        for x in range (1,len(result)):
            subsets=result.append(j,x)
    print(subsets)
使用:


使用
映射
和绑定方法
''更新。加入

>>> list(map("".join, itertools.combinations('AECG', 2)))
['AE', 'AC', 'AG', 'EC', 'EG', 'CG']

为了完整起见,这里是没有itertools的解决方案

subsets=[]
s="AECG"

for i in range (len(s)):
    for j in range (i+1, len(s)):
          subsets.append(s[i]+s[j]) # append modifies the list
print(subsets)

我正在考虑使用两个for循环,但我不知道如何适当地应用它。谢谢,现在更有意义了
subsets=[]
s="AECG"

for i in range (len(s)):
    for j in range (i+1, len(s)):
          subsets.append(s[i]+s[j]) # append modifies the list
print(subsets)