我是靠谱客的博主 细腻斑马,最近开发中收集的这篇文章主要介绍python异常添加,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. try and except的使用

try:
    # 不能确定正确之行的代码
    num = int(input('请输入一个数字:'))
    print(num)
except:
    # try里面的代码如果有异常/错误 才会之行以下代码
    print('请输入正确的整数!!!!')
print('*' * 50)

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
在这里插入图片描述

2. try ,except,else 和finally

try:
    num = int(input('Num:'))
    result = 8 / num
    print(result)
except ZeroDivisionError:
    print('0不能做除数')
except Exception as r:
    print('未知错误!!')
# 程序没有碰到致命错误 就执行else
else:
    print('hello')
finally:
    # 无论是否遇到异常都会执行
    print('!!!!')

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 函数的错误

函数的错误:一级一级向上去找 最终会将异常传递到主函数里面去

# 错误发生在demo1中
def demo1():
    try:
        return int(input('请输入正确的整数:'))
    except Exception as r:
        print('未知错误 %s' %r)
def demo2():
    return demo1()
print(demo2())

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

在这里插入图片描述

4. 抛出异常

def input_passwd():
    # 1.提示用户输入密码
    pwd = input('请输入密码:')
    # 2.判断密码长度
    if len(pwd) >= 8:
        return pwd
    # 3.如果<8 就主动抛出异常
    print('主动抛出异常')
    # a.创建异常对象
    ex = Exception('密码长度不够,必须大于8位')
    # b.主动抛出异常
    raise ex
# 注意:只抛出不捕获 代码会报错
try:
    print(input_passwd())
except Exception as re:
    print(re)

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

在这里插入图片描述
在这里插入图片描述

练习

用户可以一直输入数字, 当按ctrl+c之后计算所有数的和;

result = 0
while True:
    try:
        num = int(input('Num:'))
        result += num
    except KeyboardInterrupt:
        print('运行结果:',result)
        break

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

在这里插入图片描述

最后

以上就是细腻斑马为你收集整理的python异常添加的全部内容,希望文章能够帮你解决python异常添加所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部