python - 猜单词游戏
代码使用了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 - 猜单词游戏相关推荐
- python猜单词游戏_python实现猜单词游戏
本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下 0.效果 1.代码 # 猜单词游戏 import random #添加 WORDS = ("python& ...
- python猜单词游戏心得_【Python】猜单词游戏
#猜单词游戏 import random #创建单词序列 WORDS = ['python', 'shampoo', 'war', 'despair', 'distach', 'ultimate', ...
- python猜单词游戏代码_Python之猜单词游戏
最近上完python课,老师让用python中的字典写一个猜单词游戏,于是就自己写了一个代码,可用于自己背单词,如果觉得我写的单词太简单,可以改成自己想要背诵的单词. 代码可能存在瑕疵,还请大佬指教! ...
- python猜单词游戏_Python小程序之猜单词游戏
计算机随机产生一个单词,打乱字母顺序,供玩家去猜.(可供猜的单词自己定义) import random WORDS = ("math","english",&q ...
- python猜单词游戏实验原理_猜单词游戏课程设计报告
告 一 . 程 序 功 能 一个猜单词游戏.两人进行游戏时,由一个玩家给出一个单词, 在人与计算机游戏时候, 由计算机给出一个单词, 另一个玩家根据组 成单词的字母个数猜出单词,猜的次数可以指定,若猜 ...
- python猜单词游戏_python 游戏(猜单词Hangman)
1.游戏思路和流程图 实现功能:随机一个单词让玩家猜测(后续难度实现修改为成语填空,成语必须要有提示,可修改猜的次数,增加连续猜成语,难度系数随着次数的增加而增加) 游戏流程图 2. 单词库和模块 i ...
- python猜单词游戏
import random word=['hello','write','blue','shit','double'] word=random.choice(word) answer=word jum ...
- python猜单词游戏_17.Python猜单词游戏
image 任务目的 1.掌握字符串常用操作 2.掌握随机数的用法 3.掌握控制台基本输入输出 4.掌握循环,分支条件的用法 5.培养编程思维,提高分析问题能力` 任务描述 image 需求 给定单词 ...
- python猜单词游戏_Python简单猜单词游戏
import random lists = ["house", "hello", "world", "please"] ...
最新文章
- Android移动端音视频的快速开发教程(十)
- 扫地机器人的特点描写_描写扫地机器人五年级作文500字
- Android开发;Activity-Hook你了解多少?一起来debug
- python 小说 云_小说python操作PLC
- HTML关于机器猫的小游戏,HTML5/CSS3 哆啦A梦 | 机器猫卡通肖像
- Android AutoCompleteTextView悬浮提示列表原理简单分析
- 某运动APP登录协议分析
- SAP库存查询MB52报表如何设置为ALV格式显示?
- onenote同步问题
- TCR宝藏级隐藏项目National Writing Board
- 图片标注软件labelImg使用指南
- 百度网盘会员-免费领取
- 详解Unity中的粒子系统Particle System (七)
- 电子商务网站建设策划书_竞赛解析 | 全国大学生电子商务“创新、创意及创业”挑战赛...
- 删除VSCode 中自定义的snippets
- 网络世界有哪些不为人知的秘密?
- Django搭建简单网站
- 计算机一级B考试总结500字,期中考试反思作文500字
- 在Excel VBA中使用字典
- Activity has leaked window that was originally added解决办法
热门文章
- 域名购买 估价与域名的备案
- JS 前20个常用字符串方法及使用方式
- GO语言圣经习题:5.2 函数递归
- Android 系统报告收集和查看
- 微信公众号配置IP白名单返回“errcode”: 40164
- B站兄弟连Linux学习——Linux系统简介
- KubePi可视化管理面板升级,集群扩容步骤分解,KubeOperator开源容器平台v3.11.2发布
- ipad屏幕旋转后的代理
- instagram架构设计_在Photoshop中设计基于Instagram的简单作品集
- 千锋为你解读Android培训课程体系