Python3.2 官方文档翻译--错误与异常

2024-03-02 20:48

本文主要是介绍Python3.2 官方文档翻译--错误与异常,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第六章 错误和异常

直到现在错误信息还没有被涉及到。但你如果已经尝试了实例你可能已经看到一些相关信息。在python中至少有两种不同的错误:syntax errors exceptions

6.1 语法错误(syntax errors

   语法错误,也就是编译错误,当你开始学习python时,这种错误可能是你最常见的抱怨。

>>> while True print(Hello world)

File "<stdin>", line 1, in ?

while True print(Hello world)

^

SyntaxError: invalid syntax

 

语法分析器会知道出错的语句,并在检查到错误的位置前面显示一个小“箭头”。错误是由于箭头编辑的字符引起的或者至少探测到的。在例子中,在函数print()上探测到错误,由于在它前面少了一个:.从文本输入情况下, 文件名称和行数将会被打印出来,因此在你可以知道从哪儿定位错误。

8.2 异常

如果语句和表达式在语法上是正确的,当尝试去运行它时可能会产生一个错误。在执行过程中被检测到的错误称为异常和程序不会无条件的崩溃。接下来你会学到在python程序中如何处理异常。但是,许多异常不能被程序处理,就会导致如下的错误信息:

>>> 10*(1/0)

Traceback (most recent call last):

File "<stdin>", line 1, in ?

ZeroDivisionError: int division or modulo by zero

>>> 4 + spam*3

Traceback (most recent call last):

File "<stdin>", line 1, in ?

NameError: name spam’ is not defined

>>> 2’ + 2

Traceback (most recent call last):

File "<stdin>", line 1, in ?

TypeError: Cant convert int’ object to str implicitly

错误信息的最后一行描述产生错误的原因,异常产生有不同方式并且错误类型会作为信息的一部分打印出来: 在实例中错误信息是 ZeroDivisionError,NameErrorTypeError。 作为错误类型打印出来的字符串是出现在内置异常的名称。这对内置异常是正常的结果,但对于用户自定义异常(尽管这是一个有用的规范)就不可而知了。标准异常的名称都是内置的标识符。(这不是保留关键字)。

剩下的行信息基于异常类型和产生原因提供更加详细信息。

错误信息的前面部分会显示异常发生的上下文,并且以栈的形式打印出来。总的来说,它包含一个包含源代码的堆栈的列表;但是它不会显示从标准行读取的信息。

Bltin-exception显示内置所有的异常和所有的信息。

这篇关于Python3.2 官方文档翻译--错误与异常的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/767384

相关文章

解决Java异常报错:java.nio.channels.UnresolvedAddressException问题

《解决Java异常报错:java.nio.channels.UnresolvedAddressException问题》:本文主要介绍解决Java异常报错:java.nio.channels.Unr... 目录异常含义可能出现的场景1. 错误的 IP 地址格式2. DNS 解析失败3. 未初始化的地址对象解决

正则表达式r前缀使用指南及如何避免常见错误

《正则表达式r前缀使用指南及如何避免常见错误》正则表达式是处理字符串的强大工具,但它常常伴随着转义字符的复杂性,本文将简洁地讲解r的作用、基本原理,以及如何在实际代码中避免常见错误,感兴趣的朋友一... 目录1. 字符串的双重翻译困境2. 为什么需要 r?3. 常见错误和正确用法4. Unicode 转换的

python利用backoff实现异常自动重试详解

《python利用backoff实现异常自动重试详解》backoff是一个用于实现重试机制的Python库,通过指数退避或其他策略自动重试失败的操作,下面小编就来和大家详细讲讲如何利用backoff实... 目录1. backoff 库简介2. on_exception 装饰器的原理2.1 核心逻辑2.2

如何合理管控Java语言的异常

《如何合理管控Java语言的异常》:本文主要介绍如何合理管控Java语言的异常问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、Thorwable类3、Error4、Exception类4.1、检查异常4.2、运行时异常5、处理方式5.1. 捕获异常

ubuntu系统使用官方操作命令升级Dify指南

《ubuntu系统使用官方操作命令升级Dify指南》Dify支持自动化执行、日志记录和结果管理,适用于数据处理、模型训练和部署等场景,今天我们就来看看ubuntu系统中使用官方操作命令升级Dify的方... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。

浅谈Redis Key 命名规范文档

《浅谈RedisKey命名规范文档》本文介绍了Redis键名命名规范,包括命名格式、具体规范、数据类型扩展命名、时间敏感型键名、规范总结以及实际应用示例,感兴趣的可以了解一下... 目录1. 命名格式格式模板:示例:2. 具体规范2.1 小写命名2.2 使用冒号分隔层级2.3 标识符命名3. 数据类型扩展命

解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException: org.junit.Test问题

《解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException:org.junit.Test问题》:本文主要介绍解决tomcat启动时报Junit相... 目录tomcat启动时报Junit相关错误Java.lang.ClassNotFoundException

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B