随笔记录方便自己和同路人查阅。
#------------------------------------------------我是可耻的分割线-------------------------------------------
当Python试图执行无效代码时,就会抛出异常,以前你可能使用过try和except语句来处理Python的一场,这样程序就可以从你预期的异常中恢复。
但你也可以在代码中抛出自己的异常。抛出异常相当于是说:“停止运行这个函数中的代码,将程序执行转到except语句”。
抛出异常使用raise语句。raise语句包含以下部分:
(1)raise关键字
(2)对Except函数的调用
(3)传递给Except函数的字符串,包含有用的出错信息
#------------------------------------------------我是可耻的分割线-------------------------------------------
示例代码:
#! python 3
# -*- coding:utf-8 -*-
# Autor: Li Rong Yang
def boxPrint(symbol,width,height):
'''
创建一个小盒子图像
symbol: 组成小盒子的符号
width:宽度
height:高度
return:返回值
'''
#判断符号是否不等于1
if len(symbol) !=1:
raise Exception('Sybol must be a single character string')
#判断宽度是否小于等于2
if width <= 2:
raise Exception('Width must be greater than 2.')
#判断高度是否小于等于2
if height <= 2:
raise Exception('Height must be greater than 2.')
print(symbol * width)
for i in range(height - 2):
print(symbol + (' ' * (width - 2)) + symbol)
print(symbol * width)
for sym, w, h in (('*', 4, 4), ('O', 20, 5), ('x', 1, 3), ('ZZ', 3, 3)):
try:
boxPrint(sym, w, h)
except Exception as err:
print('An exception happened: ' + str(err))
运行结果: