[Tutor] dont understand part of a code

Sat Jul 2 06:46:07 EDT 2016

```Hi, below is code for a hangman game which I copied from a book I am
studying,Python programming for the absolute beginners by Michael Dawson. I
have underlined the part of code I do not understand and why it is there.

import random

HANGMAN = (
"""
------|
|
|
|
|
-----
""",
"""

------|
|      0
|
|
|
-----
""",
"""
------|
|      0
|     -+-
|
|
-----
""",
"""
------|
|     0
|    -+-
|
|
-----
""",
"""
------|
|     0
|   /-+-
|
|
-----
""",
"""
------|
|     0
|   /-+-\
|
|
-----
""",
"""
------|
|     0
|   /-+-\
|     |
|
-----
""",
"""
------|
|     0
|   /-+-\
|     |
|    |
-----
""",
"""
------|
|     0
|   /-+-\
|     |
|    |
-----
""",
"""
------|
|     0
|   /-+-\
|     |
|    | |
-----
""")

MAX_WRONG = len(HANGMAN )-1
WORDS = ("PYTHON","RUBY","VISUAL BASIC","PHP","JAVA","UNIX","LINUX","PERL")
word = random.choice(WORDS)
so_far = "-" * len(word)
wrong = 0
used = []
print("Welcome to hangman.Good luck!")

while wrong < MAX_WRONG and so_far != word:
print(HANGMAN[wrong])
print("\nSo far,the word is:\n", so_far)
guess = input("\nEnter your guess: ")
guess = guess.upper()

while guess in used:
guess = input("Enter your guess: ")
guess = guess.upper()

used.append(guess)

if guess in word:
print("\nYes",guess,"is in the word!")

new = ""
for i in range(len(word)):
if guess == word[i]:
new += guess
*  else:*
*                new += so_far[i]  # why is there a else code here?*
so_far = new
else:
print("\nSorry",guess,"isnt in the word")
wrong += 1
if wrong == MAX_WRONG:
print(HANGMAN[wrog])
print("\nYou have been hanged!!")
else:
print("\nYou have guessed correct")

print("\nThe word was", word)

input("\nPress enter to exit")
```