Python学习记录9:异常&文件操作补充

本篇博客为python学习记录系列博客内容,欢迎访问python速成博客导航

👉不会吧,都2021年了还有人不会Python?三天急速入门教程!👈


1、“异常”的概念

每当发生让python不知所措的错误时,他都会创建一个异常对象。
如果你编写了处理该异常的代码,程序将继续运行;
否则,程序将停止运行,并显示一个traceback,其中包含有关异常的报告。

2、处理ZeroDvisionError

总所周知,不能除0。如果你这么做了,python将会报错;但如果使用以下try-except代码块:

try:
    print(5/0)
except ZeroDivisionError:
    print("这种玩意儿你也写得出来?")
输出:这种玩意儿你也写得出来?

程序正常运行结束。

应用举例:

print("输入两个数,我来除它!")
print("输入q退出程序!")

while True:
    first_number = input("\n第一个数:")
    if first_number =='q':
        print("拜拜了您嘞!")
        break
    second_number =input("\n第二个数,搞快点:")
    try:
        ans=int(first_number)/int(second_number)
    except ZeroDivisionError:
        print("除0这种事你都干得出来??")
    else:
        print(ans)

输出如下:

输入两个数,我来除它!
输入q退出程序!

第一个数:2

0.6666666666666666

第一个数:5

第二个数,搞快点:0
除0这种事你都干得出来??

3、处理FileNotFoundError

与上同理

filename = 'zhebushiyaobaiyangma.txt'#没有这文件

try:
    with open(filename) as a:
        b = a.read()
except FileNotFoundError:
    msg = "麻了,你这 "+filename + " 文件找不到嘞"
    print(msg)

输出如下:

麻了,你这 zhebushiyaobaiyangma.txt 文件找不到嘞

4、分析文本

方法split()以空格为分隔符将字符串分拆成多个部分,并将这些部分都存储到一个列表中

filename = 'alice.txt'#这个文件存了《Alice in Wonderland》

try:
    with open(filename) as f_obj:
        contents = f_obj.read()
except FileNotFoundError as e:
    msg = "Sorry, the file " + filename + " does not exist."
    print(msg)
else:
    # 计算这个文件大约有多少个词
    words = contents.split()
    num_words = len(words)
    print("The file " + filename + " has about " + str(num_words) + " words.")

输出:The file alice.txt has about 29461 words.

5、装哑巴

try:
    #sth.
except FileExistsError:
    pass    #这里
else:
    #sth.

这里的pass就是什么都不做,啥也不会发生。
pass也可以用作占位符,以便日后的操作

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值