How to make all possible combinations of a word in Python
<p>I have a txt file with all of the letters in the alphabet that looks like this:</p>

<p>a</p>

<p>b</p>

<p>c</p>

<p>etc..</p>

<p>I also have a word list of words that is only 3 letters long:</p>

<p>ago</p>

<p>age</p>

<p>bat</p>

<p>bag</p>

<p>etc...</p>

<p>I want to create a list that prints out all of the combinations possible starting with the first word ago:</p>

<p>My test program looks like this:</p>

<pre><code>allcombi=[]
s= list("ago")
the.list=[]
with open("alfabeth.txt", "r", encoding = "utf-8") as letters:
    for line in letters:
        letter = line.strip()
        s[0]=letter
        print(s)
</code></pre>

<p>Now I only change the first letter, but I have a really hard time trying to join the letters because it only looks like this:</p>

<p>['a', 'g', 'o']
['b', 'g', 'o']
....</p>

<p>HELP WITH:</p>

<ol>
<li><p>Print it out as  ['ago','bgo'] instead</p></li>
<li><p>Instead of just changing the first letter, change it one letter at a time in index 0,1 and 2 one letter at a time in the word. The output should be 27*3 rows long with ['ago','bgo',........,'agx',agy,'agz']   </p></li>
</ol>

<p>I will later search for all of the items in my new list in a dictionary but that I can figure out myself it's just this part that really gotten me stuck.</p>

<p>I figured it out! With a neat while loop too. So proud. Posting answer here anyway.</p>

<pre><code>    allakombi=[]
s= list("sÃ¶t")#startord
characters=[]
with open("alfabetet.txt", "r", encoding = "utf-8") as bokstÃ¤ver:
        for rad in bokstÃ¤ver:
               bokstav = rad.strip()
               characters.append(bokstav)

k=0
while k&lt;3:
       i=0
       while i &lt;len(characters):
              s= list("sÃ¶t")
              s[k]=characters[i]
              i=i+1
              s="".join(s)
              allakombi.append(s)
       k=k+1


print(allakombi)
</code></pre>

python string list replace letter