Python基础 第十章

Python基础 第十章

10.1 基础概念

抛出异常: 当python试图执行无效代码时,就会抛出异常。其含义为:停止运行这个函数中的代码,将程序执行转到except语句。

抛出异常使用raise语句,包含以下部分:
raise关键字;
对Exception函数的调用;
传递给Exception函数的字符串,包含有用的出错信息。

若没有try和except语句覆盖抛出异常的raise语句,该程序就会崩溃,并且显示异常的出错信息。

取得反向跟踪的字符串: 如果python遇到错误,它就会生成一些错误信息,称为“反向跟踪”,包含了出错消息,导致该错误的代码行号,以及导致该错误的函数调用序列,这个序列称为“调用栈”。

断言: 是一个心智正常的检查,确保代码没有做什么明显错误的事情,由assert语句执行,如果检查失败,就会抛出异常。代码中,包含以下部分:
assert关键字;
条件(求值为True或False的表达式);
逗号;
当条件为False时显示的字符串。

IDLE的调试器: 调试器是IDLE的一项功能,让每次执行一次程序,将运行一行代码,然后等待用户告诉它继续,像这样让程序运行在“调试器”之下,则可以随便花时间,检查程序运行时任意一个时刻的变量的值。

将显示以下信息:
将要执行的代码行;
所有局部变量及其值的列表;
所有全局变量及其值的列表。

**GO:**如果点击GO按钮将导致程序正常执行到终止,或到达一个“断点”,若完成了调试,希望程序继续进行,就点击GO按钮。

Step: 点击Step按钮将令调试器执行下一行代码,然后再次暂停。如果变量的值发生了变化,调试控制窗口的全局变量和局部变量列表会更新。

Over: Over按钮将执行下一行代码,与Step按钮类似,但是若下一行代码是函数调用,Over按钮将“跨过”该函数的代码,该函数的代码将以全速执行。

Out: 点击Out按钮将导致调试器全速执行代码行,直到它从当前函数返回。

Quit: 如果希望完全停止调试,不必继续执行剩下的程序,就可点击Quit按钮,将马上终止该程序。

10.2习题

1.assert(spam >= 10, ‘The spam variable is less than 10.’)

2.assert(eggs.lower() != bacon.lower(), ‘The eggs and bacon variables are the same!’)
或assert(eggs.upper() != bacon.upper(), ‘The eggs and bacon variables are the same!’)

3.assert(False, ‘This assertion always triggers.’)

4.为了能调用logging.debug(),必须在程序开始时加入以下两行:
import logging
logging.basicConfig(level=logging.DEBUG, format=’ %(asctime)s -
%(levelname)s - %(message)s’)

5.为了能利用logging.debug() 将日志消息发送到文件programLog.txt 中,必须
在程序开始时加入以下两行:
import logging
logging.basicConfig(filename=‘programLog.txt’, level=logging.DEBUG,
format=’ %(asctime)s - %(levelname)s - %(message)s’)

6.DEBUG、INFO、WARNING、ERROR 和CRITICAL

7.logging.disable (logging.CRITICAL)

8.可以禁用日志消息,不必删除日志函数调用。可以选择禁用低级别日志消
息。可以创建日志消息。日志消息提供了时间戳。

9.Step 按扭让调试器进入函数调用。Over 按钮将快速执行函数调用,不会单
步进入其中。Out 按钮将快速执行余下的代码,直到走出当前所处的函数。

10.在点击Go 后,调试器将在程序末尾或断点处停止。

11.断点设在一行代码上,在程序执到到达该行时,它导致调试器暂停。

12.选中代码行,鼠标右击,选择sert breakpoint

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值