gpt4 book ai didi

python - 我应该把 try/except 放在哪里?

转载 作者:太空宇宙 更新时间:2023-11-03 12:38:52 25 4
gpt4 key购买 nike

为了改进我的编码,我想知道我应该将 try/except 放在函数内部还是放在函数外部。以下示例说明了我的意思。

    import pandas as pd

df = pd.read_csv("data.csv")

# Example 1
def do_something(df):
# Add some columns
# Split columns
return df

try:
df = do_something(df)
except Exception, e:
print e

# Example 2
def do_something(df):
try:
# Add some columns
# Split columns
except Exception, e:
print e
df = pd.DataFrame()
return df

df = do_something(df)

它可能看起来相同,但第一个示例更清楚发生了什么,而第二个示例看起来更干净。

最佳答案

内部处理的可能性

如果该函数可以提供从异常中恢复的合理并在其职责范围内处理它并且不需要任何其他信息,那么您可以在那里捕获异常

提高或翻译给来电者

否则,最好由调用者来处理。有时即使在这种情况下,该函数也可能会捕获异常,然后立即通过对调用者有意义的翻译再次引发它

关于python - 我应该把 try/except 放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31632050/

25 4 0