当玩家猜到所有字母时,Python刽子手没有结束
我的问题是,当我运行程序,并得到所有的字母正确,它不会从那里移动,我在一个无限循环。我希望它会说“干得好!”并在玩家说对了词后结束节目。我对编码非常陌生,非常感谢您的帮助当玩家猜到所有字母时,Python刽子手没有结束,python,Python,我的问题是,当我运行程序,并得到所有的字母正确,它不会从那里移动,我在一个无限循环。我希望它会说“干得好!”并在玩家说对了词后结束节目。我对编码非常陌生,非常感谢您的帮助 import random import time name = input("What is your name? ") print(name + ", ay?") time.sleep(1) start = input("Up for a game of Hangman?(y/n) ") lis = random.ch
import random
import time
name = input("What is your name? ")
print(name + ", ay?")
time.sleep(1)
start = input("Up for a game of Hangman?(y/n) ")
lis = random.choice(["yet"])
dash = []
while len(dash) != len(lis):
dash.append("_")
guess = []
guesscomb = "".join(guess)
wrongcount=int(0)
alphabet = "abcdefghijklmnopqrstuvwxyz"
if start == "y":
print("One game of Hangman comin' right up,",name)
letter = input("Alright then, Guess a letter: ")
thing = ''.join(dash)
while guesscomb != thing:
if letter == "" or letter == " " or len(letter) != 1:
print("I don't understand. Please only use singular letters.")
letter = input("Guess a letter: ")
elif letter in lis and letter in alphabet:
print("Nice!")
location = lis.find(letter)
dash[location] = letter
guess.append(letter)
alphabet.replace(letter," ")
guesscomb = "".join(guess)
letter = input("Guess a letter: ")
else:
print("Wrong.")
wrongcount = wrongcount + 1
print("Total Mistakes:",wrongcount)
letter = input("Guess a letter: ")
elif start == "n":
input("Shame.")
quit()
print("Good Job!")
time.sleep(10)
thing
变量等于\uuuuuu
,而lis
始终等于“yet”
guesscomb
不能等于thing
,因为当猜测等于lis
中的一个字母时,您可以使用print
和参数end=“”
验证一个字母,这样光标就不会转到新行。
您可以使用字符串上的isalpha
方法检查字符串是否都是字符,而不是将其与字母表进行比较。
正如本所说,东西总是___
修改代码的这一部分,它就会工作
if start == "y":
print("One game of Hangman comin' right up,", name)
print("Alright then, ", end="")
# letter = input("Alright then, Guess a letter: ")
thing = ''.join(dash)
while guesscomb != thing:
letter = input("Guess a letter: ")
if letter == "" or letter == " " or len(letter) != 1:
print("I don't understand. Please only use singular letters.")
elif letter in lis and letter in alphabet:
print("Nice!")
location = lis.find(letter)
dash[location] = letter
guess.append(letter)
alphabet.replace(letter, " ")
guesscomb = "".join(guess)
else:
print("Wrong.")
wrongcount = wrongcount + 1
print("Total Mistakes:", wrongcount)
thing = ''.join(dash)