Python 板


LINE

# 从 random 套件包里面引入 randint 函数 from random import randint # 初始化财产值 money = 1000 # 当财产值为正值,执行回圈 while money > 0: print('你的总资产为: ', money) needs_go_on = False # 一个标签在之後用来判断是否继续 # 先初始化为 False,在後来的过程判断有没有 # 需要改为 True 让程式继续 while True: debt = int(input('请下注: ')) if 0 < debt <= money: # 下注金额必须小於等於拥有财产 break # 否则结束回圈 first = randint(1, 6) + randint(1, 6) print('玩家摇出了 %d 点' % first) if first == 7 or first == 11: print('玩家胜!') money += debt elif first == 2 or first == 3 or first == 12: print('庄家胜!') money -= debt else: # 上面两个都不满足,玩家跟庄家都没人胜出 needs_go_on = True # 表示程式应该继续执行,把标签值改为 True while needs_go_on: # 标签值用在此处,决定程式游戏是否继续 needs_go_on = False # 游戏继续,但先假设这局会结束 # 看看後面有没有需要更正 current = randint(1, 6) + randint(1, 6) print('玩家摇出了 %d 点' % current) if current == 7: print('庄家胜') money -= debt elif current == first: print('玩家胜') money += debt else: # 发现又再一次不满足庄家和玩家都胜利 needs_go_on = True # 表示还需要继续执行,标签改为 True # 再次进入当前回圈 # 财产值已经不为正值,不会再执行上述回圈才会到这 print('你破产了, 游戏结束!') --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.112.247.1 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1583170440.A.058.html
1F:推 cuteSquirrel: push 03/03 13:07
2F:推 hellokidding: 讲的超清楚!大感谢!! 03/03 15:41
3F:推 hellokidding: 想问一下下注那边的while True:的这个布林判断是第 03/03 15:44
4F:→ hellokidding: 二个判断,还是是needs_go_on = False变成true 03/03 15:45
(1)在骰第一次的 Else 部分,为什麽不直接在 else 後面接着写第二次骰的情形 而要写 needs_go_on = True 回去看看题目的要求,掷骰子分成两种阶段,有着不同的胜负条件: - 只有第一次 - 7 or 11 - 2, 3 or 12 - 除了第一次的其他次 - 7 - 与第一次同 needs_go_on 用来处理「除了第一次的其他次」的状况,他要是个回 圈。你如果单纯用 else 的话,只会个别处理一次。 (2)所以我的理解是needs_go_on 这个布林比较像是一段回圈的启动和暂停按键 那为什麽第一次 else 的时候不直接写 needs_go_on = False就好? 还要特别写一段while needs_go_on: needs_go_on = False 是 while needs_go_on: 这个回圈根据他来判断是不是第一次掷骰子 ,还是除了第一次掷骰子之外的其他次。
5F:→ Hsins: 建议你自己找地方插 print() 语句,把实际上运作逻辑动手 03/03 17:06
6F:→ Hsins: 画个图出来走走看。 03/03 17:06
7F:→ Hsins: 然後把你觉得奇怪的地方,觉得可以自己更动的地方动手改一 03/03 17:07
8F:→ Hsins: 改,看看跑出来跟题目要求符不符合?他解答写的未必就好, 03/03 17:08
9F:→ Hsins: 实作方法也不是只有这一种。 03/03 17:08
※ 编辑: Hsins (140.112.247.1 台湾), 03/03/2020 17:24:48
10F:推 hellokidding: 我懂了!谢谢h大 03/03 23:35
11F:推 xsubarux: # 下注金额必须小於等於拥有财产 03/04 03:10
12F:→ xsubarux: # 否则结束回圈 <-这句注解意思错了吧?应该是下注 03/04 03:10
13F:→ xsubarux: 小於 03/04 03:10
14F:→ xsubarux: 等於财产时才会从输入下注金额的回圈结束,进行後面的 03/04 03:10
15F:→ xsubarux: 程式 03/04 03:10
16F:→ Hsins: 你说的是对的,看太快ㄌ>< 03/04 07:09







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP