Python中的错误与异常处理(Error & Exceptions)

Python有两种错误类型:

1. 语法错误(Syntax Errors)

2. 异常(Exceptions)

例1:

处理异常(Handling Exceptions)
#Example of Syntax errors
#while True print("Hello World!")    #缺少冒号,正确的语法:while True: print("Hello World!")

#Examples of exceptions
#print(8/0)           #分母不能为0
#print(hello * 4)       #name 'hello' is not defined

# num = 6
# print("Hello World " + num)    #正确的方式:print("Hello World " + str(num))

#Handling exceptions
while True:
    try:      #将可能出现异常的代码放到"try:"之后,如果出现异常利用except来处理异常
        x = int(input("Please enter a number"))    #当用户输入字母或字符串之后将会出现异常
        break
    except ValueError:
        print("Not valid input, try again...")

注:

首先,try语句下的(try和except之间的代码)被执行

如果没有出现异常,except语句将被忽略
如果try语句之间出现了异常,try之下异常之后的代码被忽略,直接跳跃到except语句

如果异常出现,但并不属于except中定义的异常类型,程序将执行外围一层的try语句,如果异常没有被处理,将产生unhandled exception的错误

例2:

try:
    f = open('myfile.txt')
    s = f.readline()
    i = int(s.strip())    #strip()读取字符串之后把起始的空格全部删掉
except OSError as err:      #当myfile.txt文件不存在时,将会报错
    print("OS error: {0}".format(err))
except ValueError:          #文件存在,但是文件内的内容不合法时将会报错
    print("Could not convert data to an integer.")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值