Question: ```
while not(bool(won)):
    #print(wordspec)
   # print("_" * wordlen)
    print(displayword)
    answer = input("Any letters?")

    if answer in vl.values():
        print("Yes")
        for x_l in wordspec:
            print(str(spot_l)+"cha")
            if spot_l < wordlen:
                if vl[spot_l] == answer:
                    print(vl[spot_l])
                    ch[spot_l] = vl[spot_l]
                    displayword[spot_l] = ch[spot_l]

                spot_l += 1
            elif wordlen < spot_l:
                spot_l = 0

```

So after 1 loop, the spot\_l variable is stuck at the max it can be..

OUTPUT is..

First time I do it:

```
0cha
1cha
a
2cha
3cha
a
4cha
5cha
a
6cha

```

Second, third, 4th,etc.. time I do it:

```
6cha
6cha
6cha
6cha
6cha
6cha
6cha

```

(My word is of 7 characters therefore a for loop of 7 times)

Answer: 
Your `if` and `elif` are missing the case where `spot == wordlen`, at which point it'll just loop forever. Instead of `elif`, you probably just want `else`.
Oops! I figured it out.. So basically

I put wordlen < spot\_l: when spot\_l will never be bigger since it stops when its equal, therefore wordlen = spot\_l: works, thanks ShadowRanger for also helping me realise the syntax to set variables to values. :)