IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 笨办法学python练习35分支与函数 -> 正文阅读

[Python知识库]笨办法学python练习35分支与函数

1. 画一个这个游戏的流程图,并指出它是如何运转的。

?

?3. 为你不理解的函数写上注释。 4. 为游戏增加一些功能,同时使代码更加简化。

这是原代码未经修改

from sys import exit 
 
def gold_room(): 
    print("这个房间里堆满了金子。你要拿多少?") 

    choice = input("> ") 
    if "0" in choice or "1" in choice: 
        how_much = int(choice) 
    else: 
        dead("老兄,学打字吧。") 
 
    if how_much < 50: 
        print("不错,你不贪心,你赢了!") 
        exit(0) 
    else: 
        dead("你贪婪的混蛋!") 
 
 
def bear_room(): 
    print("这里有一只熊。") 
    print("熊有一堆蜂蜜。") 
    print("胖熊在另一扇门前。") 
    print("你打算怎么移动这只熊?") 
    bear_moved = False 

    while True: 
        choice = input("> ") 

        if choice == "拿走蜂蜜": 
            dead("熊看着你,然后打了你一巴掌") 
        elif choice == "嘲讽熊" and not bear_moved: 
            print("熊已经从门口走了.") 
            print("你现在可以走了。") 
            bear_moved = True 
        elif choice == "嘲讽熊" and bear_moved: 
            dead("熊生气了,咬了你的腿。") 
        elif choice == "开门" and bear_moved: 
            gold_room() 
        else: 
            print("我不知道那是什么意思。") 


def cthulhu_room(): 
    print("这里你看到了伟大的恶魔克苏鲁") 
    print("他,不管是什么,只要盯着你,你就会发疯。") 
    print("你是逃命呢,还是吃自己的头呢?") 

    choice = input("> ") 

    if "逃离" in choice: 
        start() 
    elif "头" in choice: 
        dead("嗯,那很好吃!") 
    else: 
        cthulhu_room() 


def dead(why): 
    print(why, "好运") 
    exit(0) 

def start(): 
    print("你在一个黑暗的房间里。") 
    print("你的左右各有一扇门。") 
    print("你选哪一个?") 

    choice = input("> ") 

    if choice == "左": 
        bear_room() 
    elif choice == "右": 
        cthulhu_room() 
    else: 
        dead("你在房间里走来走去,直到饿死。") 


start() 


运行结果?

?

5. 这个 gold_room 让你输入数字的方式有点奇怪。这样做有哪些 bug ?你能改善我的代码吗?可以 查查看 int() 的相关知识。

如果输入的数字不是0或者1,就会“ 提示老兄,学打字吧。”直接结束

改善

使用isdigit()来判断输入的是否为正整数代码修改如下

from sys import exit 
 
def gold_room(): 
    print("这个房间里堆满了金子。你要拿多少?") 

    choice = input("> ")
    if choice.isdigit():
        how_much = int(choice)
        if how_much < 50: 
            print("不错,你不贪心,你赢了!") 
            exit(0) 
        else: 
            dead("你贪婪的混蛋!")
    else: 
        dead("老兄,学打字吧。") 
 
     
def dead(why): 
    print(why, "好运") 
    exit(0) 
gold_room() 

输出为

?

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-08 13:46:09  更:2021-12-08 13:48:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:29:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码