gpt4 book ai didi

python-3.x - 如何获得字符串(元音或辅音)的组合?

转载 作者:行者123 更新时间:2023-12-04 03:23:36 35 4
gpt4 key购买 nike

给定索引的可能组合数例如单词 BANANA 的索引 [0]应该给我:

{'B',
'BA',
'BAN',
'BANA',
'BANAN',
'BANANA'}
word='BANANA'
indices=[0,2,4]
def find_combinations(word:str,indices:list):
a=[''.join(l) for i in range(len(word)) for l in combinations(word, i+1)]
b=[x for x in a if x.startswith('B')]
return b

输出:

set(b)
{'B',
'BA',
'BAA',
'BAAA',
'BAAN',
'BAANA',
'BAN',
'BANA',
'BANAA',
'BANAN',
'BANANA',
'BANN',
'BANNA',
'BN',
'BNA',
'BNAA',
'BNAN',
'BNANA',
'BNN',
'BNNA'}

期望的输出:

{'B',
'BA',
'BAN',
'BANA',
'BANAN',
'BANANA'}

最佳答案

您不需要组合,您可以使用 slices 轻松生成从特定索引开始的前缀。和范围

from typing import List

def get_parts(word: str, start: int) -> List[str]:
return [word[start:i] for i in range(start + 1, len(word) + 1)]

(显然,如果您需要它是一个set,您可以更改为return { ... }

>>> get_parts("BANANA", 0)
['B', 'BA', 'BAN', 'BANA', 'BANAN', 'BANANA']

>>> get_parts("BANANA", 2)
['N', 'NA', 'NAN', 'NANA']

>>> get_parts("BANANA", 4)
['N', 'NA']

关于python-3.x - 如何获得字符串(元音或辅音)的组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68055358/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com