美文网首页Pythoner集中营
关于异常和断言的笔记

关于异常和断言的笔记

作者: iris思思 | 来源:发表于2016-03-01 00:07 被阅读0次

1. 异常

1.1异常的概念

  • 异常指的当是我们的程序决定执行一个语义学上有问题而语法无错误的命令时的情况,通常我们遇见异常时,程序通常会抛出一个异常并自动停止,然而,由于有些异常是我们在设计程序时可以预料到的(比如一个交互式程序要求使用者输入一个数字,然而使用者却输入了一个字符串),这时,我们可以自己写处理器来处理这些异常,让这些异常能被我们控制。

1.2 处理异常的方法
我们通常用try/except语句,如下列代码:

val = int(raw_input('Enter an integer: '))
print 'The square of the number you entered is', val**2

在大多数情况下,这段代码没问题,但是当用户输入的不是一个整数时,python解释器会抛出一个异常(ValueError)并终止程序,然而这种异常时可预期的,这时,我们可以利用try/block语句来解决这个问题。

while True:
    val = raw_input('Enter an integer: ')
    try:
        val = int(val)
        print 'The square of the number you entered is', val**2
        break #to exit the while loop
    except ValueError:
        print val, 'is not an integer'

在这段修改好的代码中,当用户的输入与预期不符时,我们跳到except语句,提示用户输入的不是整数,然后回到while语句,直到输入符合预期,程序执行结束。

*hint: *

  • 在代码中只有except:后面不加任何异常类型时,代码中出现任何一类错误都会进入except语句
  • except后可加多种类型的异常,如except(ValueError, TypeError):
  • 当代码中出现raise exceptionName(argument)时,程序会抛出与exceptionName对应的异常,并终止程序,终端上显示为exceptionName:argument

1.3 异常的作用

2. 断言

  • Assertions are a useful defensive programming tool. They can be used toconfirm that the arguments to a function are of appropriate types. They are alsoa useful debugging tool. The can be used, for example, to confirm thatintermediate values have the expected values or that a function returns anacceptable value.
  • 基本形式
    assert Boolean expression, argument

做完 MIT pset4 的收获

当我们在一个函数中,要把另一个函数的返回值赋给一个变量时,要在函数开头把这个变量初始化

相关文章

  • 关于异常和断言的笔记

    1. 异常 1.1异常的概念 异常指的当是我们的程序决定执行一个语义学上有问题而语法无错误的命令时的情况,通常我们...

  • maven tests

    (一)关于断言assert 断言assert与异常exception的区别在于:1、断言用于调试代码2、异常用于捕...

  • 异常引发和断言

    引发异常 您可以使用 raise 语句引发异常。 print(1) raise ValueError print(...

  • Python Debug

    1. 异常: 1.1 抛出异常 使用raise关键字抛出异常 1.2 捕获异常 2. 断言 禁用断言python ...

  • 第7章 异常处理

    7.1 程序的异常处理 7.1.1 异常处理的基本使用 7.1.2 异常处理的高级使用 7.2 断言 断言 ass...

  • C语言接口与实现之异常处理try-except

    前言 最近在学习《C语言接口与实现》,目前阅读到第四章,关于如何实现C语言异常捕获和断言处理,其中的异常捕获的栈和...

  • python核心编程-错误与异常

    本章主题:什么是异常Python中的异常探测和处理异常上下文管理引发异常断言标准异常创建异常相关模块 什么是异常 ...

  • python unittest.TestCase 断言方法

    1、最常见断言方法 2、T与异常、错误、警告和日志相关的断言方法 3、用于完成某种特定检查的断言方法 4、针对特定...

  • Swift3.0 对异常错误的处理

    在OC中,单元测试时我们会使用断言,断言中条件满足时会产生异常,并打印出相应的断言错误。而在Swift对异常的处理...

  • Python ☞ day 5

    Python学习笔记之 装饰器& 偏函数 & 异常处理 & 断言 & 文件读写 &编码与解码 装饰器 概念:是一个...

网友评论

    本文标题:关于异常和断言的笔记

    本文链接:https://www.haomeiwen.com/subject/dsigkttx.html