2016-12-12 6 views
0

python/programmingの新機能です。私は与えられた文字列に文字を挿入することによってすべての可能な単語のリストを作成しようとしています。既存の文字列に文字を挿入して、すべての可能な単語を作成します。

'thx' = ['athx','tahx','thax','thxa'] 

私がもし/他と私のループを分割することによって、これを達成することができますが、私はそれなしで解決しようとしている - 私は非常に最初の両方に文字を追加する方法を見つけるように見えることはできませんし、非常に終わりです。 (両方ともathx & thxa)

これを見ると、正規表現では唯一の方法と思われます。しかし、私はまだそこにいません。本当に私はもっと基本的なレベルで何かを逃していないことを確認しようとしています。

+0

ヒント: '単語が[:I] + '' +単語[I:]' 'word'位置に' i'にA' '文字を挿入します。基本的には「単語のすべての文字を「i」+「a」+「i」から「終了」までの単語の文字です。 –

答えて

6

これは動作します:

>>> w = 'thx' 
>>> letter = 'a' 
>>> words = [w[:i] + letter + w[i:] for i in range(len(w) + 1)] 
>>> words 
['athx', 'tahx', 'thax', 'thxa'] 
+0

ありがとう。それを試していない私の非常に愚かな。私は、w [:0]が 't'を返すという印象を受けました。 –

関連する問題