python - 当测试没有在 Python 中引发错误时,执行代码的最佳方法是什么?
问题描述
背景故事:我正在处理一些用 Excel 制作的凌乱数据表。使用 pandas (首选)阅读此内容有时会保存单元格的 Excel 数据类型。由于我想处理的所有条目在某个列中都有一个可以转换为整数的值,所以我想在该列可以转换时执行一个代码块(即不抛出错误)。我知道有一些方法可以解决这个问题,但我想知道如果你想在没有 try/except 语句的语句返回错误时执行代码,你会怎么做。
到目前为止,我想出了 try/except 块:
try:
int(x)
# Big code chunk goes here
....
# Exception can be found much further down in the code
except ValueError:
pass
这让我觉得有点奇怪。为了使其更具可读性,可以将代码块放在一个函数中,但我真正想要的是这样的:
if int(x) == NoError:
# Lets go ahead with the code chunk
....
对于一般用例,有没有很好的方法来实现这样的东西?
解决方案
您可能正在寻找的是一个try-except-else
块
try:
int(x)
except ValueError:
...
else:
# No error
推荐阅读
- arrays - 底层数组如何在 Golang 中的“切片”中表现
- pyspark - 如何在分组值上将一行的值与 PySpark 中的所有其他行进行比较
- php - php 中的 strip_tags 没有帮助,需要更好的选择
- javascript - ReactJS Canvas 没有 captureStream
- java - 引起:java.lang.ClassCastException:类 org.hibernate.jpa.HibernatePersistenceProvider
- windows - 如何使用 BAT 和 PUTTY 在 1000 个 SSH 会话中执行多命令?
- java - 如何在 Spring Batch 中使用 ResourceItemReader
- powershell - 通过powershell在sharepoint中创建和移动文件
- google-chrome-extension - 在 chrome 扩展(内容脚本等)中使用 es6
- php - 如何将 POST 请求从 Flutter 应用程序发送到 PHP 服务器