温馨提示:本文最后更新于
2024-12-11 16:45:38
,某些文章具有时效性,若有错误或已失效,请在下方留言。猜单词游戏的基本业务流程如下所示
生成单词,检测答案
生成随机单词,并检测用户输入的单词是否在选定的单词中
import random
word_list = ["aardvark", "baboon", "camel"]
chosen_word = random.choice(word_list)
guess = input("Guess a letter: ").lower()
for letter in chosen_word:
if letter == guess:
print("Right")
else:
print("Wrong")
字母替换空格
选定单词后,生成相同长度的空格,如果用户测对字母,用字母替换对应位置的空格。
import random
word_list = ["aardvark", "baboon", "camel"]
chosen_word = random.choice(word_list)
print(chosen_word)
placeholder = ""
for _ in range(len(chosen_word)):
placeholder += "_"
print(f"Word to guess: {placeholder}")
guess = input("Guess a letter: ").lower()
display = ""
for letter in chosen_word:
if letter == guess:
display += letter
else:
display += "_"
print(display)
检测用户是否赢得游戏
import random
word_list = ["aardvark", "baboon", "camel"]
chosen_word = random.choice(word_list)
print(chosen_word)
placeholder = ""
word_length = len(chosen_word)
for position in range(word_length):
placeholder += "_"
print(placeholder)
game_over = False
correct_letters = []
while not game_over:
guess = input("Guess a letter: ").lower()
display = ""
for letter in chosen_word:
if letter == guess:
display += letter
correct_letters.append(guess)
elif letter in correct_letters:
display += letter
else:
display += "_"
print(display)
if "_" not in display:
game_over = True
print("You win.")
追踪用户生命数
import random
stages = [r'''
+---+
| |
O |
/|\ |
/ \ |
|
=========
''', r'''
+---+
| |
O |
/|\ |
/ |
|
=========
''', r'''
+---+
| |
O |
/|\ |
|
|
=========
''', '''
+---+
| |
O |
/| |
|
|
=========''', '''
+---+
| |
O |
| |
|
|
=========
''', '''
+---+
| |
O |
|
|
|
=========
''', '''
+---+
| |
|
|
|
|
=========
''']
word_list = ["aardvark", "baboon", "camel"]
lives = 6
chosen_word = random.choice(word_list)
print(chosen_word)
placeholder = ""
word_length = len(chosen_word)
for position in range(word_length):
placeholder += "_"
print(placeholder)
game_over = False
correct_letters = []
while not game_over:
guess = input("Guess a letter: ").lower()
display = ""
for letter in chosen_word:
if letter == guess:
display += letter
correct_letters.append(guess)
elif letter in correct_letters:
display += letter
else:
display += "_"
print(display)
if guess not in chosen_word:
lives -= 1
if lives == 0:
game_over = True
print("You lose.")
if "_" not in display:
game_over = True
print("You win.")
print(stages[lives])
提升用户体验
import random
from hangman_words import word_list
from hangman_art import stages, logo
lives = 6
print(logo)
chosen_word = random.choice(word_list)
print(chosen_word)
placeholder = ""
word_length = len(chosen_word)
for position in range(word_length):
placeholder += "_"
print("Word to guess: " + placeholder)
game_over = False
correct_letters = []
while not game_over:
print(f"****************************{lives}/6 LIVES LEFT****************************")
guess = input("Guess a letter: ").lower()
if guess in correct_letters:
print(f"You've already guessed {guess}")
display = ""
for letter in chosen_word:
if letter == guess:
display += letter
correct_letters.append(guess)
elif letter in correct_letters:
display += letter
else:
display += "_"
print("Word to guess: " + display)
if guess not in chosen_word:
lives -= 1
print(f"You guessed {guess}, that's not in the word. You lose a life.")
if lives == 0:
game_over = True
print(f"***********************IT WAS {chosen_word}! YOU LOSE**********************")
if "_" not in display:
game_over = True
print("****************************YOU WIN****************************")
print(stages[lives])
© 版权声明
THE END
暂无评论内容