Python 初级刽子手游戏:Can';我做不到
我前天刚开始(在Python 3上)编写代码(这让我成为了一个真正的新手),我想我会尝试制作自己的刽子手游戏,但我只是不知道我到目前为止所做的有什么不对就是这样:Python 初级刽子手游戏:Can';我做不到,python,Python,我前天刚开始(在Python 3上)编写代码(这让我成为了一个真正的新手),我想我会尝试制作自己的刽子手游戏,但我只是不知道我到目前为止所做的有什么不对就是这样: L = ["cat", "dog", "rabbit"] from random import randrange random_index = randrange(0,len(L)) w = L[random_index] W = list(w) a = input() tries = 1 print(W) while len(W)
L = ["cat", "dog", "rabbit"]
from random import randrange
random_index = randrange(0,len(L))
w = L[random_index]
W = list(w)
a = input()
tries = 1
print(W)
while len(W) != 0 and tries<10:
if a in W:
print("yes")
W.remove(a)
tries += 1
a = input()
elif a not in W:
print("no")
tries += 1
a = input()
else:
if len(W) == 0:
print("Well done! Your word was")
print(w)
elif tries == 10:
print("You died!")
L=[“猫”、“狗”、“兔子”]
从随机输入范围
随机指数=随机范围(0,len(L))
w=L[随机指数]
W=列表(W)
a=输入()
尝试=1
打印(W)
而len(W)!=0并尝试当您猜到上一个循环末尾的最后一个字母时,当前循环将告诉您猜测正确,然后请求另一个字母。试试这样的
L = ["cat", "dog", "rabbit"]
from random import randrange
random_index = randrange(0,len(L))
w = L[random_index]
W = list(w)
tries = 0
print(W)
while len(W) != 0 and tries<10:
a = input()
if a in W:
print("yes")
W.remove(a)
tries += 1
elif a not in W:
print("no")
tries += 1
else:
if len(W) == 0:
print("Well done! Your word was")
print(w)
elif tries == 10:
print("You died!")
L=[“猫”、“狗”、“兔子”]
从随机输入范围
随机指数=随机范围(0,len(L))
w=L[随机指数]
W=列表(W)
尝试=0
打印(W)
而len(W)!=0并尝试
- 可以有多个字母的变量名
random.choice(L)
比L[random.randrange(len(L))]更简单。
所以
如果我很了解您的问题,您可以这样解决您的问题,还请记住,您可以向用户提供信息,并在输入法中添加提示:
L = ["cat", "dog", "rabbit"]
from random import randrange
random_index = randrange(0,len(L))
w = L[random_index]
W = list(w)
tries = 1
print(W)
while len(W) != 0 and tries<10:
a = input("select word")
if a in W:
print("yes")
W.remove(a)
tries += 1
else:
print("no")
tries += 1
if len(W) == 0:
print("Well done! Your word was")
print(w)
elif tries == 10:
print("You died!")
L=[“猫”、“狗”、“兔子”]
从随机输入范围
随机指数=随机范围(0,len(L))
w=L[随机指数]
W=列表(W)
尝试=1
打印(W)
而len(W)!=0和tries您需要实际描述发生了什么(以及您期望发生什么)。此外,您应该首先尝试自己调试(例如:在怀疑错误的地方添加print
语句),虽然这不是最佳解决方案,但您始终可以在While循环的exit语句中添加break
。。。出于这个原因,我倾向于避免在while循环中使用多个逻辑语句。同样,这可能不是最好的解决方案,但是……您的代码应该在每个循环的开始而不是结束时请求新的输入。@UnholySheep“它不会在应该的时候停止!(意思是当应该没有什么可猜测的了!)”这是一个足够清晰的描述,不是吗?您可以删除elif
并使用else
。而tries+=1
对于if
和else
可能都很常见,非常感谢!我的a=input()放错地方了^_^@库罗:是的,但这些都不是真正合乎逻辑的变化,我不想把我的生活搞得一团糟answer@PatrickHaugh,明白了。我只是觉得这是值得一提的专家方法,很好。加一!:D
L = ["cat", "dog", "rabbit"]
from random import randrange
random_index = randrange(0,len(L))
w = L[random_index]
W = list(w)
tries = 1
print(W)
while len(W) != 0 and tries<10:
a = input("select word")
if a in W:
print("yes")
W.remove(a)
tries += 1
else:
print("no")
tries += 1
if len(W) == 0:
print("Well done! Your word was")
print(w)
elif tries == 10:
print("You died!")