首页 JS游戏攻略 正文

hangman游戏规则是什么?这样玩才不会被“吊”起来!

今天心血来潮,想搞点有意思的编程小玩意儿,就琢磨着弄个Hangman游戏。这名字听起来有点吓人,“上吊的人”,哈哈,就是个猜单词的游戏。 小时候经常和同学们在课间玩这个,拿张纸,一支笔就能玩。规则也简单: ...

今天心血来潮,想搞点有意思的编程小玩意儿,就琢磨着弄个Hangman游戏。这名字听起来有点吓人,“上吊的人”,哈哈,就是个猜单词的游戏。

小时候经常和同学们在课间玩这个,拿张纸,一支笔就能玩。规则也简单:

  • 我先在心里想一个单词,然后在纸上画几个横线,每个横线代表一个字母的位置。
  • 然后让其他人猜这个单词里有什么字母。
  • 要是猜对,我就把这个字母写在对应的横线上。
  • 小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

  • 要是猜错,我就画“上吊的人”的一笔,脑袋,身子,胳膊腿儿啥的。
  • 如果在“上吊的人”画完之前,单词被猜出来,那猜的人就赢,反之,出题的人赢。

这回我用 Python 来写这个游戏,毕竟 Python 用起来顺手,而且代码看起来也清楚。

第一步:我先得弄个单词库,让程序能从里面随机挑一个单词出来。简单起见,我就直接在代码里写一个单词列表,都是些常见的水果:


words = ['apple', 'banana', 'orange', 'grape', 'watermelon']

第二步:得有个函数来负责从单词库里随机挑一个单词:


import random

def choose_word(word_list):

return *(word_list)

这里用到 Python 自带的 random 模块,里面的 choice 函数可以直接从列表里随机选一个元素出来。

第三步: 游戏的主体部分,我用一个 while 循环来实现:

def play_hangman():

word_to_guess = choose_word(words)

guessed_letters = []

tries = 6 # 可以猜错的次数

# 显示初始的横线

display = "_" len(word_to_guess)

print(display)

while tries > 0 and "_" in display:

guess = input("猜一个字母: ").lower()

# 检查输入

if len(guess) != 1 or not *():

print("请输入一个有效的字母。")

continue

if guess in guessed_letters:

print("你已经猜过这个字母。")

continue

guessed_*(guess)

if guess in word_to_guess:

# 更新显示

new_display = ""

for i in range(len(word_to_guess)):

if word_to_guess[i] == guess:

new_display += guess

else:

new_display += display[i]

display = new_display

print("猜对!", display)

else:

tries -= 1

print("猜错,你还有", tries, "次机会。")

# 游戏结束

if "_" not in display:

print("恭喜你,猜对!单词是", word_to_guess)

else:

print("很遗憾,你没有猜出来。单词是", word_to_guess)

  • 先用 choose_word 函数选一个单词。
  • 用一个列表 guessed_letters 来记录猜过的字母。
  • 设定猜错次数 tries 为 6 次。
  • display 变量来显示当前的猜测情况,一开始全是横线。
  • while 循环里,让玩家输入猜测的字母。
  • 检查输入是不是有效的字母,是不是已经猜过。
  • 如果猜对,就更新 display,把猜对的字母显示出来。
  • 如果猜错,就减少一次机会。
  • 循环直到猜对所有字母,或者猜错次数用完。
  • 根据结果,显示游戏结束的信息。

运行效果

把上面的代码保存成一个 .py 文件,比如 ,然后在命令行里运行 python *,就可以开始玩!


猜一个字母: a

猜对! a____a

猜一个字母: e

猜错,你还有 5 次机会。

猜一个字母: b

猜对! ba_a_a

猜一个字母: n

猜对! banana

恭喜你,猜对!单词是 banana

实现这个小游戏还是挺有成就感的。虽然简单,但也算是把 Python 的一些基本用法都过一遍,挺适合新手朋友们练手的。而且自己玩自己写的游戏,感觉还真不一样!