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

简介: 本文介绍了Python中处理异常的基本方法,重点讲解了`try`和`except`的用法。通过一个计算苹果重量的小程序示例,展示了如何捕获用户输入错误并进行处理。主要内容包括:1. **回顾上次内容**:简要回顾了Shell环境、Python3游乐场和Vim编辑器的使用。2. **编写程序**:编写了一个简单的程序来计算苹果的总重量,但发现由于输入类型问题导致结果错误。3. **调试与修正**:通过调试发现输入函数返回的是字符串类型,需要将其转换为整数类型才能正确计算。

python报错怎么办_try_试着来_except_发现异常

回忆上次内容

  • 上次回顾了
  • shell环境
  • python3游乐场
  • vim编辑器
  • 以及他们之间的切换

  • 准备 编辑个 好玩的程序

编辑文件

  • 每个 苹果 2公斤
  • 根据 苹果数量
  • 算出 苹果份量

a = input("How many apples do you have:")

weight = a * 2

print("You have ",weight, "kg apples.")

  • 尝试运行

结果

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

  • 3个苹果
  • 理论上是6公斤
  • 现在 怎么就33公斤了呢?🤔

深入调试

  • :!pdb3 %

  • 输入函数input的返回值类型
  • 是字符串str
  • 字符串乘法 用的是 拼接法
  • 导致结果出错

求助

  • 需要将 输入的 苹果数量
  • 从 字符串类型 (str)
  • 转化为 整数类型 (int)

尝试转化

a = input("How many apples do you have:")

weight = int(a) * 2

print("You have ",weight, "kg apples.")

  • 修改之后 问题解决

  • 但是
  • 如果 输入的数值
  • 无法转化 为 数字 呢?
  • 比如 输入的 苹果数量 是
  • 字符串"abc"
  • int("abc")会发生什么??😱

错误输入

  • 输入了abc

  • 怎么办 呢?

问问ai

  • 直接 把报错信息
  • 复制出来

  • 告诉ai

ai结果

  • 新关键字 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字符刚好

  • 使用 键盘中的Tab
  • 进行缩进
  • vim 会把 \t
  • 转化为4个空格

  • 就像 for循环 冒号后面
  • 需要缩进 一样
  • try 也需要 缩进
  • 为什么要使用try

try的必要性

  • 使用python就像科学小实验
  • 你不知道会发生什么异常

  • 有了try就可以试着做
  • 并且 能够处理各种情况

try

  • 输出结果

  • 我想 把错误下来
  • 不报错🤪
  • 可以么?

不报错

  • <font style="color:red;font-size:48px;">这不行!!!😡</font>
  • 异常错误 不处理不行
  • 要明确地报错
  • 要明确地处理
  • 知道哪里错了
  • 才好修改

  • 如果 假装 没犯错
  • 就会 失去处理线索
  • 会犯 更大的错误
  • 错误
  • 到时候 就算想改
  • 也不知道 怎么改了
  • 绝对让人 彻底崩溃

对应禅语

import this

  • 错误 不应被 悄悄传递
  • 除非 你确定 需要这样做

  • 精准地 捕获异常
  • 不写 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

  • 上面这种是最要命的
  • 让人没法追踪trace的痕迹
  • 无法调试debug!
  • 无语问苍天😭!
  • pass、try、except也是关键字吗?

如何查看关键字

新关键字

help("keywords")

  • 新关键字增加了

  • 去总结

总结

  • 这次学习了
  • try
  • except
  • try着  尝试着 运行
  • 一旦发现了 错误
  • 就 终止 try中的执行
  • 直接跳转到
  • except块

  • 注意要点
  1. 半角冒号
  2. 缩进
  3. 错误信息输出
  • 有错 就报
  • 不要 忽略、隐瞒
  • 否则 找不到 出错位置
  • 究竟 应该如何理解
  • try...except...呢?🤔
相关文章
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
PAI Model Gallery 支持云上一键部署 DeepSeek-V3、DeepSeek-R1 系列模型
DeepSeek 系列模型以其卓越性能在全球范围内备受瞩目,多次评测中表现优异,性能接近甚至超越国际顶尖闭源模型(如OpenAI的GPT-4、Claude-3.5-Sonnet等)。企业用户和开发者可使用 PAI 平台一键部署 DeepSeek 系列模型,实现 DeepSeek 系列模型与现有业务的高效融合。
|
6天前
|
人工智能 搜索推荐 Docker
手把手教你使用 Ollama 和 LobeChat 快速本地部署 DeepSeek R1 模型,创建个性化 AI 助手
DeepSeek R1 + LobeChat + Ollama:快速本地部署模型,创建个性化 AI 助手
2522 111
手把手教你使用 Ollama 和 LobeChat 快速本地部署 DeepSeek R1 模型,创建个性化 AI 助手
|
13天前
|
Linux iOS开发 MacOS
deepseek部署的详细步骤和方法,基于Ollama获取顶级推理能力!
DeepSeek基于Ollama部署教程,助你免费获取顶级推理能力。首先访问ollama.com下载并安装适用于macOS、Linux或Windows的Ollama版本。运行Ollama后,在官网搜索“deepseek”,选择适合你电脑配置的模型大小(如1.5b、7b等)。通过终端命令(如ollama run deepseek-r1:1.5b)启动模型,等待下载完成即可开始使用。退出模型时输入/bye。详细步骤如下图所示,轻松打造你的最强大脑。
9274 86
|
4天前
|
人工智能 自然语言处理 JavaScript
宜搭上新,DeepSeek 插件来了!
钉钉宜搭近日上线了DeepSeek插件,无需编写复杂代码,普通用户也能轻松调用强大的AI大模型能力。安装后,平台新增「AI生成」组件,支持创意内容生成、JS代码编译、工作汇报等场景,大幅提升工作效率。快来体验这一高效智能的办公方式吧!
1262 5
|
1月前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
阿里云与企业共筑容器供应链安全
171375 18
|
5天前
|
API 开发工具 Python
阿里云PAI部署DeepSeek及调用
本文介绍如何在阿里云PAI EAS上部署DeepSeek模型,涵盖7B模型的部署、SDK和API调用。7B模型只需一张A10显卡,部署时间约10分钟。文章详细展示了模型信息查看、在线调试及通过OpenAI SDK和Python Requests进行调用的步骤,并附有测试结果和参考文档链接。
1163 7
阿里云PAI部署DeepSeek及调用
|
1月前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
随着云计算和DevOps的兴起,容器技术和自动化在软件开发中扮演着愈发重要的角色,但也带来了新的安全挑战。阿里云针对这些挑战,组织了一场关于云上安全的深度访谈,邀请了内部专家穆寰、匡大虎和黄竹刚,深入探讨了容器安全与软件供应链安全的关系,分析了当前的安全隐患及应对策略,并介绍了阿里云提供的安全解决方案,包括容器镜像服务ACR、容器服务ACK、网格服务ASM等,旨在帮助企业构建涵盖整个软件开发生命周期的安全防护体系。通过加强基础设施安全性、技术创新以及倡导协同安全理念,阿里云致力于与客户共同建设更加安全可靠的软件供应链环境。
150313 32
|
1天前
|
人工智能 自然语言处理 API
DeepSeek全尺寸模型上线阿里云百炼!
阿里云百炼平台近日上线了DeepSeek-V3、DeepSeek-R1及其蒸馏版本等六款全尺寸AI模型,参数量达671B,提供高达100万免费tokens。这些模型在数学、代码、自然语言推理等任务上表现出色,支持灵活调用和经济高效的解决方案,助力开发者和企业加速创新与数字化转型。示例代码展示了如何通过API使用DeepSeek-R1模型进行推理,用户可轻松获取思考过程和最终答案。
|
4天前
|
JavaScript 前端开发 API
低代码+阿里云部署版 DeepSeek,10 分钟速成编剧大师
阿里云部署版DeepSeek重磅发布,钉钉宜搭低代码平台已首发适配,推出官方连接器。用户可轻松调用DeepSeek R1、V3及蒸馏系列模型。通过宜搭低代码技术,结合DeepSeek大模型,仅需10分钟即可制作编剧大师应用。
561 19
|
5天前
|
缓存 自然语言处理 安全
快速调用 Deepseek API!【超详细教程】
Deepseek 强大的功能,在本教程中,将指导您如何获取 DeepSeek API 密钥,并演示如何使用该密钥调用 DeepSeek API 以进行调试。

热门文章

最新文章