Найти - Пользователи
Полная версия: Проблема с игрой "Виселица"
Начало » Центр помощи » Проблема с игрой "Виселица"
1
Light3JIbqp
Когда правельно ввожу букву выдает ошибку.
Помогите найти ошибку в коде
import random
HANGMAN = (
"""
------
|    |
|
|
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|    |
|
|
|
|
---------
""",
"""
------
|    |
|    0 
|    |
|    |
|   |
|   |
|
---------
""",
"""
------
|    |
|    0   
|    |
|    |
|   | |
|   | |
|
---------
""")
MAX_WRONG = len(HANGMAN) - 1
WORDS = ("PYTHON", "DJANGO")
word = random.choice(WORDS)
so_far = "_" * len(word)
wrong = 0
used = []
print("Добро пожаловать в игру 'виселица'. Удачи вам!")
while wrong < MAX_WRONG and so_far != word:
    print(HANGMAN[wrong])
    print("\nВы уже предлогали следующие буквы:\n", used)
    print("\nОтгаданное вами в слове сейчас выглядит так:\n", so_far)
    guess = input("\n\nВведите букву: ")
    guess = guess.upper()
    while guess in used:
        print("Вы уже предлогали букву", guess)
        guess =  input("\n\nВведите букву: ")
        guess = guess.upper()
    used.append(guess)
    if guess in word:
        print("\nДа! Буква", guess, "есть в слове!")
        for i in range(len(word)):
            if guess == word[i]:
                new += guess
            else:
                new += so_far[i]
        so_far = new
    else:
        print("\nК сожалению, буквы", guess, "нет в слове")
        wrong += 1
if wrong == MAX_WRONG:
    print(HAGMAN[wrong])
    print("\nВас повесили!")
else:
    print("\nВы отгадали!")
print("\nБыло загадано слово", word)
input("Enter")
fata1ex
Light3JIbqp, может начать лучше с русского языка?
Какую ошибку вам выдаёт?

Light3JIbqp
new += guess
Откуда берётся new? Перед циклом добавьте new = ''.

Light3JIbqp
print(HAGMAN)

Light3JIbqp
Все ясно
Light3JIbqp
fata1ex
Light3JIbqp, может начать лучше с русского языка?
Какую ошибку вам выдаёт?

Light3JIbqp
new += guess
Откуда берётся new? Перед циклом добавьте new = ''.

Light3JIbqp
print(HAGMAN)

Спасибо
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB