単語内のすべての母音のすべての可能な組み合わせを見つけようとしています。たとえば、「こんにちは」が与えられた場合:
[halla, halle, halli, hallo, hallu, hella, halle, halli, hallo, hallu...]
次の関数は、各母音を取得し、各母音ですべてを母音に置き換え、各バージョンをリストに追加します。私はそれを順列に変更しようとしていますが、うまくいきません。追加後に vowels("".join(string), arr) を挿入しようとしましたが、その結果、無限再帰が発生します。
def vowels(word, arr=None):
if arr is None:
a = []
for i, c in enumerate(word):
if c in 'aeiou':
for v in 'aeiou':
string = list(word)
string[i] = v
arr.append("".join(string))
return arr
誰か提案はありますか?