python核心入门笔记,python全栈核心提炼-第一章

第一章:python基础主要有6个板块,都是学习python的重中之重!!需要反复学习,多敲代码:

  1. 数据类型
  2. 语法(语句)
  3. 函数
  4. 异常
  5. IO操作

先看本次内容的目录:

一:异常

  1. try
  2. traceback.print_exc()
  3. raise

二:调试


正文:

这次我们来梳理下python中的异常。还有学习编程必知必会的调试。

先来说异常:

我们在写代码的过程中,难免会有一些bug。为了防止一些bug的出现导致软件崩溃或卡死,我们可以使用异常处理语句来使程序处理这种bug,继续执行下去。

有主流的3种方法:

一:try 语句

""" 异常进阶: try except BaseException as(可以通过BaseException类(万能异常类)输出错误的原因) else """ try: a = int(input('请输入一个数字')) b = int(input('请输入第二个数字')) result = a/b except BaseException as e: print('错误为', e) else: print('a/b=', result)

当被除数输入0,结果为:

请输入一个数字12

请输入第二个数字0

错误为 division by zero

当输入非整数时,结果为:

请输入一个数字12.4

错误为 invalid literal for int() with base 10: '12.4'

当正常输入整数,可以执行除法时:

请输入一个数字12

请输入第二个数字4

a/b= 3.0

二:traceback.print_exc()

这是traceback模块的函数,利用关键字传参(file=),可以把异常内容记录到文件里。方便问题定位。上面的代码稍微修改就可以:

import traceback try: a = int(input('请输入一个数字')) b = int(input('请输入第二个数字')) result = a/b except Exception as e: traceback.print_exc(file=open('err.log', 'a')) # 这里涉及到了随后要讲的IO操作,用追加的方式写日志到err.log里 else: print('a/b=', result)

当故意给第二个数字0时:

请输入一个数字12

请输入第二个数字0

就会把错误信息记录到err.log这个文件里:

python核心入门笔记,python全栈核心提炼-第一章(1)

三: raise语句, 可以自定义错误类型。

下面例子中, 自定义了一个异常, 当发现年龄不在范围内,就会报错

score = int(input('请输入学生成绩:(0-100)')) if score not in range(0, 101): raise Exception("输入异常") # 手动抛出异常 else: print(f"分数为{score}")

最后, 我们梳理必知必会的调试。

调试:英文叫debug。从字面意思看就是和bug对着干的。通过打断点,可以跟随程序的执行,以便于排查解决问题。

大体分三步走:

  1. 打断点
  2. 开始调试
  3. 最后三种快捷键(步过, 步入,步出)组合调试即可,不想调试也可以退出。

步过:不进入函数往下执行

步入:进入函数

步出:跳出函数

python核心入门笔记,python全栈核心提炼-第一章(2)


老规矩,上思维导图链接:

异常 - 幕布

调试 - 幕布

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页