[英]Python Exception handling when Importing
第一個文件:
class E1Exception (Exception):
def __init__(self,x):
self.x=x
def raiser (self,x):
self.x=x
if x=='So sue me':
raise E1Exception('New Yorker')
else:
try:
number = (int)(x)
pass
except ValueError:
raise ValueError ()
第二檔:
import e1a
from e1a import *
def reporter (f,x):
try:
print f(x)
return ('no problem')
except ValueError:
return ('Value')
except E1Exception:
return ('E1')
else:
return ('generic')
問題1:
為了在第二個文件中使用,功能提升器是否必須是靜態的?
問題是E1Exception從未捕獲到任何解決方案嗎?
為了在第二個文件中使用,功能提升器是否必須是靜態的?
Python沒有“靜態”的概念。 您所說的“靜態”是什么意思?
另外,我認為您沒有意識到(int)(x)
在做什么。 在我看來,這就像您嘗試將x轉換為int一樣。 盡管它可以工作,但這只是偶然。 您真正在做什么是在x
上調用int
函數。 所以這相當於
number = int(x)
這與您的問題無關,但我認為我應該指出這一點,以防任何人感到困惑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.