Python 如果满足条件,但代码不';跑不动
我正在尝试制作一个基于文本的小游戏,玩家必须猜一个单词。如果秘密单词是water,玩家猜到了barge,游戏应该显示-Ar-e,因为这些是共同的字母,而且a也在正确的位置,所以它显示为大写字母Python 如果满足条件,但代码不';跑不动,python,python-3.x,Python,Python 3.x,我正在尝试制作一个基于文本的小游戏,玩家必须猜一个单词。如果秘密单词是water,玩家猜到了barge,游戏应该显示-Ar-e,因为这些是共同的字母,而且a也在正确的位置,所以它显示为大写字母 from random import randint def lingo(): fp = open("wordsEn.txt","r") words = [] while True: buffer = f
from random import randint
def lingo():
fp = open("wordsEn.txt","r")
words = []
while True:
buffer = fp.readline()
if buffer == "":
break
else:
words.append(buffer[:-1])
secret_word = list(words[randint(0,len(words)-1)])
display_word = []
rand_num = randint(0,len(secret_word)-1)
compare_word = []
for i in range(len(secret_word)):
if i == rand_num:
display_word.append(secret_word[i])
compare_word.append(secret_word[i])
else:
display_word.append("-")
compare_word.append("-")
print(secret_word)
for i in range(5):
print(display_word)
print(compare_word)
if compare_word == secret_word:
break
else:
while True:
guess = input("guess: ")
if guess.isalpha() == False:
print("Only letters")
elif len(guess) > len(secret_word):
print("Too long")
elif len(guess) < len(secret_word):
print("Too short")
else:
break
for j in range(len(guess)):
print(guess[j])
print(guess[j] in secret_word)
if guess[j] in secret_word:
print("I am in")
if guess[j] == secret_word[j]:
display_word[j] == guess[j].upper()
compare_word[j] == guess[j]
else:
display_word[j] == guess[j]
else:
print("I am out")
continue
lingo()
来自随机导入randint
def行话():
fp=打开(“wordsEn.txt”、“r”)
单词=[]
尽管如此:
buffer=fp.readline()
如果缓冲区==“”:
打破
其他:
words.append(缓冲区[:-1])
秘密单词=列表(单词[randint(0,len(单词)-1)])
显示单词=[]
rand_num=randint(0,len(秘密单词)-1)
比较单词=[]
对于范围内的i(len(秘密单词)):
如果i==rand_num:
显示单词。追加(机密单词[i])
比较单词。追加(机密单词[i])
其他:
显示单词。追加(“-”)
比较单词。追加(“-”)
打印(秘密字)
对于范围(5)中的i:
打印(显示文字)
打印(比较单词)
如果compare\u word==secret\u word:
打破
其他:
尽管如此:
猜测=输入(“猜测:”)
如果guess.isalpha()==False:
打印(“仅限字母”)
elif len(猜测)>len(秘密单词):
打印(“太长”)
elif len(猜测)
你的问题/问题是什么?这个显示单词[j]==guess[j]
的计算结果是True
(或False
)-你的意思是用一个=
来做作业吗?所有问题都应该是最小的。现在还不清楚这里的问题是什么。试着减少这个问题的复杂性。“PatrickArtner,你就是问题所在,谢谢你的评论。