第九章——Python异常、模块与包

01-了解异常

一、了解异常,俗称  bug。

运行窗口会提示异常信息——红字

02-异常的捕获

不用再回顾了?

有点类似if else结构?哈哈。

捕获全部异常。exception是属于顶级异常,其他的异常都是他的小弟。

当捕获exception异常的时候,其他异常都可以捕获到。

无异常的输出操作——else。

finally,最后必定会执行的一些代码。

03-异常的传递性

目标:知道异常会传递。

捕获异常的时候,不一定在异常的地方捕获,可以在这个执行代码的上级关系中捕获。

04-模块的概念和导入

目标:1、什么是模块(回答:模块就是各种工具包,方便调用),2,导入内置模块。

星星   *   代表导入模块中的全部内容。

sleep,模块,可以延迟执行后续的代码。

这个  from  的操作,是指,用里面的某一个特定功能。

而直接导入import的话,是导入整个工具包。

用*导入全部的话,不用   .   (点)    来引用了。

05-自定义模块并导入

这样可以进行函数的分文件编写??

重名的时候,后面的会把前边的给覆盖掉。

变黑或者灰色,表示没有使用。

明白了:使用if---main这个操作,既可以单独使用测试文件,在测试文件内部使用 test(1,2),也可以避免在外面使用test(在外边使用的时候,这个是被调用的模块,不属于主函数,主程序,所以不会执行test的测试部分),——通俗来说,判断是不是主程序。

————————————

写了这个all变量之后,即使别的文件,导入本模块的全部内容,也没法使用模块中的全部内容,而是使用all中所包含的部分。

06-自定义Python包

可以把包理解为模块的集合——每个模块是一个功能包,或者函数的集合。

创建python软件包的时候自动会出现___init__文件。

python包的文件夹和普通文件夹的标是不一样的。

新建的时候,这里有目录和软件包。

导入包的方式。

07-安装第三方包

第三方包需要导入。

利用国内网站,更快一些。

安装第三方包的话,可以在这里安装。

添加。

我的没有啊

只能用pip方式安装了?

08-异常-模块-包-综合

第一个模块:

"""
字符串相关工具模块
"""


def str_reverse(s):
    """
    函数的说明文档
    功能是将字符串完成反转
    :param s:  将要被反转的字符串
    :return: 反转后的字符串
    """
    return s[::-1]   # 反转的操作,第一个冒号,起始位置,第二个冒号,结束位置,-1是反着来的


def substr(s, x, y):
    """
    功能是按照给定的下标完成给定字符串的切片

    :param s: 即将被切片的字符串
    :param x: 切片的开始下标
    :param y: 切片的结束下标
    :return: 切片完成后的字符串
    """
    return s[x:y:1]  # 这个默认步长为1可以默认不写  ——  s[x:y]


if __name__ == '__main__':                   # 这个main函数可以保证,测试的时候,会执行下面的代码,但是调用这个包的时候,是不会执行这个代码的。
    str_reverse("中国矿业大学(北京)")
    print(str_reverse("中国矿业大学"))
    print(substr("中国矿业大学", 1, 3))






def print_file_info(file_name):
    """
    功能是:将给定的路径文件内容输出到控制台中
    :param file_name:
    :return:
    """
    f = None
    try:
        f = open("file_name", "r", encoding="UTF-8")  # 这里是函数,不能写具体的文件名,需要在调用的时候,传入文件名。
        content = f.read()
        print("文件的全部内容如下:")
        print(content)
    except Exception as e:
        print(f"程序出现了异常,原因是{e}")
    finally:
        if f:           # 如果变量是None, 表示Flase, 如果有任何内容, 就是True
            f.close()

if __name__ == '__main__':
    print_file_info("D:\word.txt")


print_file_info("word")

def append_to_file(file_name, date):
    """
     功能是:将指定的数据追加到指定的文件中
    :param file_name: 指定的文件路径
    :param date: 指定的数据
    :return:  None
    """
    f = open(file_name, "a", encoding="utf-8")
    f.write(date)
    f.write("\n")
    f.close()


if __name__ == '__main__':
    append_to_file("D:\word.txt", "中国矿业大学")



  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值