-1
基本上我想做的是做一个hang子手游戏。虽然我在比赛中有所转变。我想要做的是让程序需要帮助从列表中删除到另一个
因此,如果用户输入“a”作为第一次尝试,则游戏然后将找到其中具有“a”的所有单词并将它们从列表中移除等等,这意味着你几乎总是会错过前4个元音。最终你会让程序坚持一个单词,因为没有一个有效的单词可以切换到没有用户选择的字母。
我的问题是,我怎么能让所有的删除单词进入删除列表?
# HANGMAN
import random
def main():
num_wrong=0
word_list=['car', 'road', 'truck', 'dog', 'desk', 'tree', \
'cat', 'zug', 'acu', 'python']
left=['a','b','c','d','e','f','g','h','i','j','k','l',\
'm','n','o','p','q','r','s','t','u','v','w','x',\
'y','z']
let_guessed=[]
let_unguessed=['a','b','c']
finished=False
r=random.randint(0,len(word_list)-1)
answer=word_list[r]
current='_'*len(answer)
show_status(current,num_wrong,left)
guess=input('Guess a letter: ')
while num_wrong<6 and not finished: # after 6 you lose
left.remove(guess)
if guess not in answer:
num_wrong+=1
print(guess,'is not in the word')
else: # if the guess is correct
print(guess,'is in the word')
# modify current
for z in range(len(answer)):
# check to see if we have an alphabetic at that spot already
if answer[z]==guess:
current=current[0:z]+guess+current[z+1:]
if answer==current:
print('You win!')
finished=True
show_status(current,num_wrong,left)
if not finished:
guess=input('Guess a letter: ')
def show_status(str1,x,letters):
for a in str1:
print(a+' ',end='')
print('You have made',x,'wrong guesses so far.')
print('The following letters are still available:')
str1=''
for each in letters:
str1+=each+' '
print(str1)
main()
你缺少你的问题中一些字母,后“有计划......” –