• 主页

  • 投资

  • IT

    🔥
  • 设计

  • 销售

关闭

返回栏目

关闭

返回python栏目

64 - 语句 - try: except: - 尝试获得

作者:

贺及楼

成为作者

更新日期:2024-10-27 17:55:48

尝试获得

try except 简介

Python 中的 try...except 结构用于异常处理。try 块中的代码尝试执行,如果出现异常,则跳转到 except 块执行异常处理代码。这种结构允许程序在遇到错误时不会立即崩溃,而是可以捕获错误并做出相应处理,如记录日志、提供用户反馈或尝试替代方案。try...except 增强了程序的健壮性,使得开发者可以控制错误处理流程,提高用户体验。

格式

  1. try:
  2. <语句> #运行别的代码
  3. except <名字>:
  4. <语句> #如果在try部份引发了'name'异常
  5. except <名字>,<数据>:
  6. <语句> #如果引发了'name'异常,获得附加的数据
  7. else:
  8. <语句> #如果没有异常发生

打印所有异常到屏幕

  1. import traceback
  2. try:
  3. xxxx1
  4. except:
  5. traceback.print_exc() #打印所有异常到屏幕

常规错误的基类 Exception

  1. try:
  2. xxxx1
  3. except Exception as e:
  4. print(e)
异常名称 描述
BaseException 所有异常的基类
SystemExit 解释器请求退出
KeyboardInterrupt 用户中断执行(通常是输入^C)
Exception 常规错误的基类
StopIteration 迭代器没有更多的值
GeneratorExit 生成器(generator)发生异常来通知退出
StandardError 所有的内建标准异常的基类
ArithmeticError 所有数值计算错误的基类
FloatingPointError 浮点计算错误
OverflowError 数值运算超出最大限制
ZeroDivisionError 除(或取模)零 (所有数据类型)
AssertionError 断言语句失败
AttributeError 对象没有这个属性
EOFError 没有内建输入,到达EOF 标记
EnvironmentError 操作系统错误的基类
IOError 输入/输出操作失败
OSError 操作系统错误
WindowsError 系统调用失败
ImportError 导入模块/对象失败
LookupError 无效数据查询的基类
IndexError 序列中没有此索引(index)
KeyError 映射中没有这个键
MemoryError 内存溢出错误(对于Python 解释器不是致命的)
NameError 未声明/初始化对象 (没有属性)
UnboundLocalError 访问未初始化的本地变量
ReferenceError 弱引用(Weak reference)试图访问已经垃圾回收了的对象
RuntimeError 一般的运行时错误
NotImplementedError 尚未实现的方法
SyntaxError Python 语法错误
IndentationError 缩进错误
TabError Tab 和空格混用
SystemError 一般的解释器系统错误
TypeError 对类型无效的操作
ValueError 传入无效的参数
UnicodeError Unicode 相关的错误
UnicodeDecodeError Unicode 解码时的错误
UnicodeEncodeError Unicode 编码时错误
UnicodeTranslateError Unicode 转换时错误
Warning 警告的基类
DeprecationWarning 关于被弃用的特征的警告
FutureWarning 关于构造将来语义会有改变的警告
OverflowWarning 旧的关于自动提升为长整型(long)的警告
PendingDeprecationWarning 关于特性将会被废弃的警告
RuntimeWarning 可疑的运行时行为(runtime behavior)的警告
SyntaxWarning 可疑的语法的警告
UserWarning 用户代码生成的警告
  1. BaseException 所有异常的基类
  2. +-- SystemExit 解释器请求退出
  3. +-- KeyboardInterrupt 用户中断执行(通常是输入^C)
  4. +-- GeneratorExit 生成器(generator)发生异常来通知退出
  5. +-- Exception 常规错误的基类
  6. +-- StopIteration 迭代器没有更多值
  7. +-- StopAsyncIteration 必须通过异步迭代器对象的__anext__()方法引发以停止迭代
  8. +-- ArithmeticError 所有数值计算错误的基类
  9. | +-- FloatingPointError 浮点计算错误
  10. | +-- OverflowError 数值运算超出最大限制
  11. | +-- ZeroDivisionError 除(或取模)零 (所有数据类型
  12. +-- AssertionError 断言语句失败
  13. +-- AttributeError 对象没有这个属性
  14. +-- BufferError 与缓冲区相关的操作时引发
  15. +-- EOFError 没有内建输入,到达EOF 标记
  16. +-- ImportError 导入失败
  17. | +-- ModuleNotFoundError 找不到模块
  18. +-- LookupError 无效数据查询的基类
  19. | +-- IndexError 序列中没有此索引(index)
  20. | +-- KeyError 映射中没有这个键
  21. +-- MemoryError 内存溢出错误
  22. +-- NameError 未声明、初始化对象
  23. | +-- UnboundLocalError 访问未初始化的本地变量
  24. +-- OSError 操作系统错误,
  25. | +-- BlockingIOError 操作将阻塞对象设置为非阻塞操作
  26. | +-- ChildProcessError 子进程上的操作失败
  27. | +-- ConnectionError 与连接相关的异常的基类
  28. | | +-- BrokenPipeError 在已关闭写入的套接字上写入
  29. | | +-- ConnectionAbortedError 连接尝试被对等方中止
  30. | | +-- ConnectionRefusedError 连接尝试被对等方拒绝
  31. | | +-- ConnectionResetError 连接由对等方重置
  32. | +-- FileExistsError 创建已存在的文件或目录
  33. | +-- FileNotFoundError 请求不存在的文件或目录
  34. | +-- InterruptedError 系统调用被输入信号中断
  35. | +-- IsADirectoryError 在目录上请求文件操作
  36. | +-- NotADirectoryError 在不是目录的事物上请求目录操作
  37. | +-- PermissionError 在没有访问权限的情况下运行操作
  38. | +-- ProcessLookupError 进程不存在
  39. | +-- TimeoutError 系统函数在系统级别超时
  40. +-- ReferenceError 弱引用试图访问已经垃圾回收了的对象
  41. +-- RuntimeError 一般的运行时错误
  42. | +-- NotImplementedError 尚未实现的方法
  43. | +-- RecursionError 解释器检测到超出最大递归深度
  44. +-- SyntaxError Python 语法错误
  45. | +-- IndentationError 缩进错误
  46. | | +-- TabError Tab 和空格混用
  47. +-- SystemError 一般的解释器系统错误
  48. +-- TypeError 对类型无效的操作
  49. +-- ValueError 传入无效的参数
  50. | +-- UnicodeError Unicode 相关的错误
  51. | | +-- UnicodeDecodeError Unicode 解码时的错误
  52. | | +-- UnicodeEncodeError Unicode 编码时错误
  53. | | +-- UnicodeTranslateError Unicode 转换时错误
  54. +-- Warning 警告的基类
  55. | +-- DeprecationWarning 关于被弃用的特征的警告
  56. | +-- PendingDeprecationWarning 关于构造将来语义会有改变的警告
  57. | +-- RuntimeWarning 可疑的运行行为的警告
  58. | +-- SyntaxWarning 可疑的语法的警告
  59. | +-- UserWarning 用户代码生成的警告
  60. | +-- FutureWarning 有关已弃用功能的警告的基类
  61. | +-- ImportWarning 模块导入时可能出错的警告的基类
  62. | +-- UnicodeWarning Unicode相关的警告的基类
  63. | +-- BytesWarning bytesbytearray相关的警告的基类
  64. | +-- ResourceWarning 与资源使用相关的警告的基类
BaseException 所有异常的基类
SystemExit 解释器请求退出
KeyboardInterrupt 用户中断执行(通常是输入^C)
GeneratorExit 生成器(generator)发生异常来通知退出
Exception 常规错误的基类
StopIteration 迭代器没有更多值
StopAsyncIteration 必须通过异步迭代器对象的anext()方法引发以停止迭代
ArithmeticError 所有数值计算错误的基类
FloatingPointError 浮点计算错误
OverflowError 数值运算超出最大限制
ZeroDivisionError 除(或取模)零(所有数据类型
AssertionError 断言语句失败
AttributeError 对象没有这个属性
BufferError 与缓冲区相关的操作时引发
EOFError 没有内建输入,到达EOF标记
ImportError 导入失败
ModuleNotFoundError 找不到模块
LookupError 无效数据查询的基类
IndexError 序列中没有此索引(index)
KeyError 映射中没有这个键
MemoryError 内存溢出错误
NameError 未声明、初始化对象
UnboundLocalError 访问未初始化的本地变量
OSError 操作系统错误,
BlockingIOError 操作将阻塞对象设置为非阻塞操作
ChildProcessError 子进程上的操作失败
ConnectionError 与连接相关的异常的基类
BrokenPipeError 在已关闭写入的套接字上写入
ConnectionAbortedError 连接尝试被对等方中止
ConnectionRefusedError 连接尝试被对等方拒绝
ConnectionResetError 连接由对等方重置
FileExistsError 创建已存在的文件或目录
FileNotFoundError 请求不存在的文件或目录
InterruptedError 系统调用被输入信号中断
IsADirectoryError 在目录上请求文件操作
NotADirectoryError 在不是目录的事物上请求目录操作
PermissionError 在没有访问权限的情况下运行操作
ProcessLookupError 进程不存在
TimeoutError 系统函数在系统级别超时
ReferenceError 弱引用试图访问已经垃圾回收了的对象
RuntimeError 一般的运行时错误
NotImplementedError 尚未实现的方法
RecursionError 解释器检测到超出最大递归深度
SyntaxError Python 语法错误
IndentationError 缩进错误
TabError Tab 和空格混用
SystemError 一般的解释器系统错误
TypeError 对类型无效的操作
ValueError 传入无效的参数
UnicodeError Unicode相关的错误
UnicodeDecodeError Unicode解码时的错误
UnicodeEncodeError Unicode编码时错误
UnicodeTranslateError Unicode转换时错误
Warning 警告的基类
DeprecationWarning 关于被弃用的特征的警告
PendingDeprecationWarning 关于构造将来语义会有改变的警告
RuntimeWarning 可疑的运行行为的警告
SyntaxWarning 可疑的语法的警告
UserWarning 用户代码生成的警告
FutureWarning 有关已弃用功能的警告的基类
ImportWarning 模块导入时可能出错的警告的基类
UnicodeWarning 与Unicode相关的警告的基类
BytesWarning bytes和bytearray相关的警告的基类
ResourceWarning 与资源使用相关的警告的基类