Python教程

看漫画学Python 第十章代码

本文主要是介绍看漫画学Python 第十章代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

10.1 除零异常

i = input("请输入数字:")

n = 8888
result = n / int(i)
print(result)
print("{0}除以{1}等于{2}".format(n,i,result))

10.2 捕获异常

i = input("请输入数字:")
n = 8888
try:
	result = n / int(i)
	print(result)
	print("{0}除以{1}等于{2}".format(n,i,result))
except ZeroDivisionError as e:
	print("不能除以0,异常:{}".format(e))

10.2.2 多个except代码块

i = input("请输入数字:")
n = 8888
try:
	result = n / int(i) #表达式可能发生除0异常。另外,int(i)表达式也可能发生整数转换异常
	print(result)
	print("{0}除以{1}等于{2}".format(n,i,result))
except ZeroDivisionError as e: #捕获零异常
	print("不能除以0,异常:{}".format(e))
except ValueError as e: #捕获整数异常
	print("输入的是无效数字,异常:{}".format(e))

10.2.3 多重异常捕获

i = input("请输入数字:")
n = 8888
try:
	result = n / int(i)
	print(result)
	print("{0}除以{1}等于{2}".format(n,i,result))
except (ZeroDivisionError,ValueError) as e:
	print("不能除以0,异常:{}".format(e))

10.2.4 try-except语句嵌套

i = input("请输入数字:")
n = 8888

try:
	i2 = int(i) #整数转换可能发生异常,需要捕获异常
	try:
		result = n / i2
		print(result)
		print("{0}除以{1}等于{2}".format(n,i2,result))
	except ZeroDivisionError as e1:
		print("不能除以0,异常:{}".format(e1))
except ValueError as e2:
	print("输入的是无效数字,异常:{}".format(e2))

10.3 使用finally代码块释放资源

i = input("请输入数字:")
n = 8888
try:
	result = n / int(i) #表达式可能发生除0异常。另外,int(i)表达式也可能发生整数转换异常
	print(result)
	print("{0}除以{1}等于{2}".format(n,i,result))
except ZeroDivisionError as e: #捕获零异常
	print("不能除以0,异常:{}".format(e))
except ValueError as e: #捕获整数异常
	print("输入的是无效数字,异常:{}".format(e))
finally:
	#释放资源代码
	print("资源释放")

10.4 自定义异常类

class zhijieketangException(Exception):
	def __init__(self,message): #构造方法,其中的参数message是异常描述信息
		super().__init__(message) #调用父类构造方法,并把参数message传给父类构造方法

10.5 手动引发异常

class ZhijieketangException(Exception):
	def __init__(self,message): #构造方法,其中的参数message是异常描述信息
		super().__init__(message) #调用父类构造方法,并把参数message传给父类构造方法

i = input("请输入数字:")
n = 8888
try:
	result = n / int(i) #表达式可能发生除0异常。另外,int(i)表达式也可能发生整数转换异常
	print(result)
	print("{0}除以{1}等于{2}".format(n,i,result))
except ZeroDivisionError as e: #捕获零异常
	#print("不能除以0,异常:{}".format(e))
	raise ZhijieketangException("不能除以0")
except ValueError as e: #捕获整数异常
	#print("输入的是无效数字,异常:{}".format(e))
	raise ZhijieketangException("输入的是无效数字")

这篇关于看漫画学Python 第十章代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!