随笔记录方便自己和同路人查阅。

#------------------------------------------------我是可耻的分割线-------------------------------------------

  当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))

  运行结果:

Python学习笔记调式之抛出异常的更多相关文章

  1. Python学习笔记(15)- os\os.path 操作文件

    程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...

  2. Python学习笔记之类与对象

    这篇文章介绍有关 Python 类中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中类的使用技巧 1.与类和对象相关的内置方法 issubclass(class, classinfo) ...

  3. Python 学习笔记(下)

    Python 学习笔记(下) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(下) 函数设计与使用 形参与实参 ...

  4. Python 学习笔记(上)

    Python 学习笔记(上) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(上) 基础知识 基本输入输出 模 ...

  5. [Python学习笔记]调试

    编码占了编程工作量的90%,调试占了另外90%,这是一个流传着的笑话.调试在编程中占有很大的分量,即使专业的程序员也一直在制造缺陷. 抛出异常 抛出异常相当于是说:"停止运行这个函数中的代码 ...

  6. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  7. VS2013中Python学习笔记[Django Web的第一个网页]

    前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...

  8. python学习笔记之module && package

    个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...

  9. python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...

  10. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

随机推荐

  1. mui、拍照、个推推送消息【问题链接】

    HTML5 Plus 拍照或者相册选择图片上传 HBuilder webApp开发(四)相册/拍照-图片上传 HTML5+ API 个推推送, APP是用Webview内嵌WEB程序,个推角标如何实现 ...

  2. 面向对象程序设计第三次blog

    一.前言 第六次题目集总结-- 题量:较少 难度:较高 知识点: 判断输入内容 提取输入的有效信息并进行计算 总结:题目比较难,题量较少. 第七次题目集总结-- 题量:较少 难度:一般 知识点: 输入 ...

  3. 利用socket以及多线程、文件流等方法实现通信,互发文本信息以及文件

    服务器端: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data ...

  4. '大龄‘后端程序员,快速捡起ECMAScript6

    1.Promise 2.迭代器 3.async 4.module 5. this的理解

  5. codeforce F. Multicolored Markers

    http://codeforces.com/contest/1029/problem/F 这道题真的一点都不难-------------------- 对于大矩形面积a+b,从差距最小的因数开始遍历, ...

  6. CF单机版终极猎手30人版安装教程

    本游戏是CF的单机版本,内含终极猎手30人版,可变身四种终极猎手.这个版本只有这一种模式,没有其他的幽灵模式.生化模式.爆破模式.团队模式等等,如果想玩上述的模式,你可以在其他地方找.值得注意的是这个 ...

  7. VUE学习-自定义指令

    自定义指令 有的情况下,你仍然需要对普通 DOM 元素进行底层操作,这时候就会用到自定义指令. <div id="directive-demo"> <input ...

  8. python获取上月、当月、下月的开始和结束日期

    获取上月开始结束日期 方法一 import datetime def get_date_of_last_month(form="%Y-%m-%d"): ""&q ...

  9. Mysql昨天,上个月条件查询

    1.查询昨日数据 SELECT * FROM test WHERE DATEDIFF(DATE_FORMAT(NOW(),'%Y%m%d'),DATE_FORMAT(created_time,'%Y% ...

  10. RabbitMQ-00-Windows10安装RabbitMQ及安装使用过程中遇到的一些问题

    Window系统安装教程 安装参考博客:https://blog.csdn.net/spl545056/article/details/81392015 重装RabbitMQ时遇到的问题 安装提示成功 ...