[oeasy]python065python报错怎么办_try_试着来_except_发现异常

python报错怎么办_try_试着来_except_发现异常 回忆上次内容

  • 上次回顾了

  • shell环境

  • python3游乐场

  • vim编辑器

  • 以及他们之间的切换

添加图片注释,不超过 140 字(可选)

  • 准备 编辑个 好玩的程序

编辑文件

  • 每个 苹果 2公斤

  • 根据 苹果数量

  • 算出 苹果份量

a = input("How many apples do you have:") weight = a * 2 print("You have ",weight, "kg apples.")

  • 尝试运行

结果

  • 尝试运行

  • 注意其中的数字是运行时输入的!

添加图片注释,不超过 140 字(可选)

  • 3个苹果

  • 理论上是6公斤

  • 现在 怎么就33公斤了呢?🤔

深入调试

  • :!pdb3 %

添加图片注释,不超过 140 字(可选)

  • 输入函数input的返回值类型

  • 是字符串str

  • 字符串乘法 用的是 拼接法

  • 导致结果出错

添加图片注释,不超过 140 字(可选)

求助

添加图片注释,不超过 140 字(可选)

  • 需要将 输入的 苹果数量

  • 从 字符串类型 (str)

  • 转化为 整数类型 (int)

尝试转化 a = input("How many apples do you have:") weight = int(a) * 2 print("You have ",weight, "kg apples.")

  • 修改之后 问题解决

添加图片注释,不超过 140 字(可选)

  • 但是

  • 如果 输入的数值

  • 无法转化 为 数字 呢?

  • 比如 输入的 苹果数量 是

  • 字符串"abc"

  • int("abc")会发生什么??😱

错误输入

添加图片注释,不超过 140 字(可选)

  • 输入了abc

添加图片注释,不超过 140 字(可选)

  • 该 怎么办 呢?

问问ai

  • 直接 把报错信息

  • 复制出来

添加图片注释,不超过 140 字(可选)

  • 告诉ai

ai结果

添加图片注释,不超过 140 字(可选)

  • 新关键字 try

试着来

  • try

  • 试着来

  • try后面跟 冒号

  • 就像 之前的 for和if

  • <font color="red">注意!!!</font>

  • 冒号

  • 是英文半角的

  • except 后面也是

try: # 接收用户输入苹果数量 a = input("How many apples do you have:") # 将输入转换为整数并乘以 2 得到重量 weight = int(a) * 2 # 打印结果 print("You have ", weight, "kg apples.") except ValueError: print("Please enter a valid integer.")

  • 冒号后面有缩进

  • 缩进的是

  • 需要try的 内容

  • 缩进 4字符

  • 怎样

  • 快速 缩进 来着?

TAB 空格数量

  • 缩进距离 不多不少

  • 4字符刚好

添加图片注释,不超过 140 字(可选)

  • 使用 键盘中的Tab

  • 进行缩进

  • vim 会把 \t

  • 转化为4个空格

添加图片注释,不超过 140 字(可选)

  • 就像 for循环 冒号后面

  • 需要缩进 一样

  • try 也需要 缩进

  • 为什么要使用try

try的必要性

  • 使用python就像科学小实验

  • 你不知道会发生什么异常

添加图片注释,不超过 140 字(可选)

  • 有了try就可以试着做

  • 并且 能够处理各种情况

065_python报错怎么办_try_试着来_except

try

  • 输出结果

添加图片注释,不超过 140 字(可选)

  • 我想 把错误瞒下来

  • 不报错🤪

  • 可以么?

不报错

  • <font style="color:red;font-size:48px;">这不行!!!😡</font>

  • 异常错误 不处理不行

  • 要明确地报错

  • 要明确地处理

  • 知道哪里错了

  • 才好修改

添加图片注释,不超过 140 字(可选)

  • 如果 假装 没犯错

  • 就会 失去处理线索

  • 会犯 更大的错误

  • 错误 大 了

  • 到时候 就算想改

  • 也不知道 怎么改了

  • 绝对让人 彻底崩溃

对应禅语 import this

  • 错误 不应被 悄悄传递

  • 除非 你确定 需要这样做

添加图片注释,不超过 140 字(可选)

  • 精准地 捕获异常

  • 不写 except:pass 风格的代码

  • 那什么是

  • except:pass 风格的代码呢?

异常飘过 try: a = input("How many apples do you have:") weight = int(a) * 2 print("You have ",weight, "kg apples.") except: pass

  • 知错不报错

  • 虽然 except接收到了错误

  • 但是 轻轻飘过pass

添加图片注释,不超过 140 字(可选)

  • 上面这种是最要命的

  • 让人没法追踪trace的痕迹

  • 无法调试debug!

  • 无语问苍天😭!

  • pass、try、except也是关键字吗?

如何查看关键字

添加图片注释,不超过 140 字(可选)

新关键字 help("keywords")

  • 新关键字增加了

添加图片注释,不超过 140 字(可选)

  • 去总结

总结

  • 这次学习了

  • try

  • except

  • try着 尝试着 运行

  • 一旦发现了 错误

  • 就 终止 try中的执行

  • 直接跳转到

  • except块

添加图片注释,不超过 140 字(可选)

  • 注意要点

  1. 半角冒号

  2. 缩进

  3. 错误信息输出

  • 有错 就报

  • 不要 忽略、隐瞒

  • 否则 找不到 出错位置

  • 究竟 应该如何理解

  • try...except...呢?🤔

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值