代码使用了Python内置的 random 模块来随机选择要猜测的单词,

import random
# 定义单词列表
words = ['apple', 'banana', 'orange', 'pear', 'grape']# 随机选择一个单词
word = random.choice(words)

使用了集合 letters_guessed 来存储玩家猜测过的字母,

# 创建一个用于存储玩家猜测过程的集合
letters_guessed = set()

并且使用循环和条件语句来控制游戏流程。

# 玩家有6次猜测机会
num_guesses = 6
# 游戏循环
while num_guesses > 0:

具体来说,代码先定义了需要猜测的单词列表 words,然后使用 random.choice() 方法从列表中随机选择一个单词。接下来,代码使用 set() 函数创建了一个空集合 letters_guessed,该集合用于存储玩家猜测过的字母。然后,代码设置了玩家可以猜测的次数 num_guesses,并输出欢迎信息和猜测次数。

接下来进入游戏循环。在每个循环迭代中,代码首先使用列表推导生成一个字符串,其包含已经猜测出的字母和尚未猜测出的字母的占位符 _。

# 输出当前猜测情况
print(' '.join([letter if letter in letters_guessed else '_' for letter in word]))

该字符串由 join() 方法连接起来并输出到控制台。然后,代码使用 input() 方法让玩家猜一个字母(注意,这里将玩家的输入全部转换为小写字母),并检查该字母是否存在于要猜的单词中。

# 让玩家猜一个字母guess = input('请猜一个字母:').lower()# 判断玩家是否猜对了if guess in word:

如果是,代码输出恭喜信息并将该字母添加到集合 letters_guessed 中;

 # 判断玩家是否猜对了if guess in word:print('恭喜你,你猜对了!')letters_guessed.add(guess)

否则,代码减少了一次猜测机会。

    else:print('很遗憾,你猜错了。')num_guesses -= 1

在每个循环迭代中,代码还检查玩家是否已经猜对了整个单词。如果是,代码输出恭喜信息并使用 break 退出游戏循环。

# 判断是否猜到了整个单词if word == guess:guesses_all_flag = Truebreak

最后,代码检查玩家是否还有剩余的猜测机会,如果没有,输出失败信息和正确的单词。

# 判断游戏是否结束
if guesses_all_flag:print('恭喜你,你猜对了整个单词!你还有{}次猜测机会!'.format(num_guesses))
elif num_guesses == 0:print('很遗憾,你没有猜对。正确的单词是 %s' % word)

完整代码:

import random# 定义单词列表
words = ['apple', 'banana', 'orange', 'pear', 'grape']# 随机选择一个单词
word = random.choice(words)# 创建一个用于存储玩家猜测过程的集合
letters_guessed = set()# 玩家有6次猜测机会
num_guesses = 6
guesses_all_flag = Falseprint('欢迎来到猜单词游戏!')
print('你有 %d 次猜测机会' % num_guesses)# 游戏循环
while num_guesses > 0:# 输出当前猜测情况print(' '.join([letter if letter in letters_guessed else '_' for letter in word]))# 让玩家猜一个字母guess = input('请猜一个字母:').lower()# 判断是否猜到了整个单词if word == guess:guesses_all_flag = Truebreak# 判断玩家是否猜对了if guess in word:print('恭喜你,你猜对了!')letters_guessed.add(guess)else:print('很遗憾,你猜错了。')num_guesses -= 1# 输出还有多少次猜测机会print('你还有 %d 次猜测机会' % num_guesses)# 判断游戏是否结束
if guesses_all_flag:print('恭喜你,你猜对了整个单词!你还有{}次猜测机会!'.format(num_guesses))
elif num_guesses == 0:print('很遗憾,你没有猜对。正确的单词是 %s' % word)

封装为一个方法以此可以继续游戏:

import randomdef play_game():# 定义单词列表words = ['apple', 'banana', 'orange', 'pear', 'grape']# 随机选择一个单词word = random.choice(words)# 创建一个用于存储玩家猜测过程的集合letters_guessed = set()# 玩家有6次猜测机会num_guesses = 6print('欢迎来到猜单词游戏!')print('你有 %d 次猜测机会' % num_guesses)# 游戏循环while num_guesses > 0:# 输出当前猜测情况current_guess = ' '.join([letter if letter in letters_guessed else '_' for letter in word])print(f'当前猜测情况:{current_guess}')# 让玩家猜一个字母guess = input('请猜一个字母:').lower()if len(guess) != 1 or not guess.isalpha():print('请输入一个字母!')continue# 判断玩家是否猜对了if guess in word:if guess not in letters_guessed:print('恭喜你,你猜对了!')letters_guessed.add(guess)else:print('你已经猜过这个字母了,请重新猜测。')else:print('很遗憾,你猜错了。')num_guesses -= 1# 检查是否猜对了整个单词if set(word) == letters_guessed:print(f'恭喜你,你猜对了整个单词【{word}】!')return True# 输出还有多少次猜测机会print(f'你还有 {num_guesses} 次猜测机会')print(f'很遗憾,你没有猜对。正确的单词是 {word}')return False# 主程序
while True:continue_playing = input('是否开始新游戏?(Y/N)').upper()if continue_playing != 'Y':breakplay_game()print('谢谢游玩,再见!')

python - 猜单词游戏相关推荐

  1. python猜单词游戏_python实现猜单词游戏

    本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下 0.效果 1.代码 # 猜单词游戏 import random #添加 WORDS = ("python& ...

  2. python猜单词游戏心得_【Python】猜单词游戏

    #猜单词游戏 import random #创建单词序列 WORDS = ['python', 'shampoo', 'war', 'despair', 'distach', 'ultimate', ...

  3. python猜单词游戏代码_Python之猜单词游戏

    最近上完python课,老师让用python中的字典写一个猜单词游戏,于是就自己写了一个代码,可用于自己背单词,如果觉得我写的单词太简单,可以改成自己想要背诵的单词. 代码可能存在瑕疵,还请大佬指教! ...

  4. python猜单词游戏_Python小程序之猜单词游戏

    计算机随机产生一个单词,打乱字母顺序,供玩家去猜.(可供猜的单词自己定义) import random WORDS = ("math","english",&q ...

  5. python猜单词游戏实验原理_猜单词游戏课程设计报告

    告 一 . 程 序 功 能 一个猜单词游戏.两人进行游戏时,由一个玩家给出一个单词, 在人与计算机游戏时候, 由计算机给出一个单词, 另一个玩家根据组 成单词的字母个数猜出单词,猜的次数可以指定,若猜 ...

  6. python猜单词游戏_python 游戏(猜单词Hangman)

    1.游戏思路和流程图 实现功能:随机一个单词让玩家猜测(后续难度实现修改为成语填空,成语必须要有提示,可修改猜的次数,增加连续猜成语,难度系数随着次数的增加而增加) 游戏流程图 2. 单词库和模块 i ...

  7. python猜单词游戏

    import random word=['hello','write','blue','shit','double'] word=random.choice(word) answer=word jum ...

  8. python猜单词游戏_17.Python猜单词游戏

    image 任务目的 1.掌握字符串常用操作 2.掌握随机数的用法 3.掌握控制台基本输入输出 4.掌握循环,分支条件的用法 5.培养编程思维,提高分析问题能力` 任务描述 image 需求 给定单词 ...

  9. python猜单词游戏_Python简单猜单词游戏

    import random lists = ["house", "hello", "world", "please"] ...

最新文章

  1. Android移动端音视频的快速开发教程(十)
  2. 扫地机器人的特点描写_描写扫地机器人五年级作文500字
  3. Android开发;Activity-Hook你了解多少?一起来debug
  4. python 小说 云_小说python操作PLC
  5. HTML关于机器猫的小游戏,HTML5/CSS3 哆啦A梦 | 机器猫卡通肖像
  6. Android AutoCompleteTextView悬浮提示列表原理简单分析
  7. 某运动APP登录协议分析
  8. SAP库存查询MB52报表如何设置为ALV格式显示?
  9. onenote同步问题
  10. TCR宝藏级隐藏项目National Writing Board
  11. 图片标注软件labelImg使用指南
  12. 百度网盘会员-免费领取
  13. 详解Unity中的粒子系统Particle System (七)
  14. 电子商务网站建设策划书_竞赛解析 | 全国大学生电子商务“创新、创意及创业”挑战赛...
  15. 删除VSCode 中自定义的snippets
  16. 网络世界有哪些不为人知的秘密?
  17. Django搭建简单网站
  18. 计算机一级B考试总结500字,期中考试反思作文500字
  19. 在Excel VBA中使用字典
  20. Activity has leaked window that was originally added解决办法

热门文章

  1. 域名购买 估价与域名的备案
  2. JS 前20个常用字符串方法及使用方式
  3. GO语言圣经习题:5.2 函数递归
  4. Android 系统报告收集和查看
  5. 微信公众号配置IP白名单返回“errcode”: 40164
  6. B站兄弟连Linux学习——Linux系统简介
  7. KubePi可视化管理面板升级,集群扩容步骤分解,KubeOperator开源容器平台v3.11.2发布
  8. ipad屏幕旋转后的代理
  9. instagram架构设计_在Photoshop中设计基于Instagram的简单作品集
  10. 千锋为你解读Android培训课程体系