您现在的位置是:百科 >>正文
人机猜拳游戏python
百科978人已围观
简介人机猜拳,代码量不大,坑却不少。我写这个Python小游戏时,最意外的不是逻辑判断,而是玩家输入。你以为用户会乖乖输“石头”“剪刀”“布”?不,他们可能打“石头!”、“布吧”、“剪刀啊”,甚至直接敲个 ...
人机猜拳,人机代码量不大,猜拳坑却不少。游戏我写这个Python小游戏时,人机最意外的猜拳不是逻辑判断,而是游戏玩家输入。你以为用户会乖乖输“石头”“剪刀”“布”?人机不,他们可能打“石头!猜拳”、游戏“布吧”、人机“剪刀啊”,猜拳甚至直接敲个“1”。游戏光清洗输入就占了我一半代码。人机
import random choices = ["石头",猜拳 "剪刀", "布"] user = input("出拳:石头/剪刀/布 → ").strip().replace("!",游戏 "").replace("吧", "") if user not in choices: print("别闹,正经出拳。") exit() comp = random.choice(choices) print(f"你出{ user},电脑出{ comp}") 规则本身简单得让人怀疑人生:石头赢剪刀,剪刀赢布,布赢石头。用字典映射胜负关系,比一堆if else清爽得多。 win_map = { "石头": "剪刀", "剪刀": "布", "布": "石头"} if user == comp: print("平局,再来。") elif win_map[user] == comp: print("你赢了,但别得意。") else: print("你输了,菜就多练。") 写这段时我盯着屏幕笑了——三行代码,人类几千年的猜拳博弈就这么被驯服了。可真正有趣的是循环逻辑。你总不能让玩家玩一把就退出吧?我加了个while True,输了必须继续,赢了可以见好就收。 while True: # 上面那堆猜拳代码缩进来 again = input("再来一局?(y/n) ").lower() if again != 'y': print("溜了溜了。") break 这里有个细节:如果玩家输入“Y”或“yes”,我的.lower()能兜住。但要是手滑打个“y空格”,又得strip()。这种边界处理,写的时候觉得啰嗦,实际跑起来才知道多救命。 有个朋友试玩后吐槽:“电脑出拳太随机了,跟傻子似的。”我反驳:“随机才公平。你要是觉得傻,说明你被自己的套路骗了。”他愣住,然后笑了。人机猜拳的乐趣不在输赢,而在观察自己——你是不是总爱出石头?赢了一局就想继续,输了就想翻盘,这种心态比代码本身更值得琢磨。 最后贴个完整版,加了计分和异常处理。代码不长,但够你消磨十分钟。 import random choices = ["石头", "剪刀", "布"] win_map = { "石头": "剪刀", "剪刀": "布", "布": "石头"} score = 0 while True: raw = input("出拳:石头/剪刀/布(或按q退出)").strip().lower() if raw == 'q': break if raw not in choices: print("输入无效,重来。") continue comp = random.choice(choices) print(f"你出{ raw},电脑出{ comp}") if raw == comp: print("平局。") elif win_map[raw] == comp: print("你赢一局。") score += 1 else: print("你输了。") score -= 1 print(f"当前比分:{ score}") print(f"最终得分:{ score}。玩得开心。") 别小看这个游戏。它逼你思考随机性怎么模拟、输入怎么容错、循环怎么退出——全是编程的基本功。而且你写完会发现,自己不知不觉理解了“状态”这个概念:每局游戏其实都是一次独立的状态机转换。 下次有人让你练手Python,别写什么计算器了。猜拳游戏,够味。Tags:
上一篇:安全漏洞情况
相关文章
一次性渗透
百科凌晨两点十七分,我盯着屏幕上那个跳动的光标,像盯着一条准备咬人的蛇。目标系统是个老旧的医疗档案库,防火墙厚得像九十年代的砖墙,但有个漏洞——它的密码重置接口没做频率限制。我输入了第七次尝试的密码组合, ...
【百科】
阅读更多dell add boot option
百科戴尔的BIOS界面,说好听点叫“复古”,说难听点就是“反人类”。别的厂商早把UEFI图形化做得像手机设置页了,戴尔还在搞蓝底白字的文字菜单,鼠标?不存在的。但你要是真学会了手动加启动项,这套老古董反而 ...
【百科】
阅读更多严格实行一案双查
百科2016年春天,某县交通局原局长被带走调查时,局里正在开项目推进会。他前脚刚出会议室,后脚就有干部掏出手机给施工方通风报信——这事儿后来查实了。但纪检组没有只盯着局长本人,而是顺着项目审批链条往上摸, ...
【百科】
阅读更多