第一档:
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从来没有找到任何解决方案吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
函数提升者是否必须是静态的才能在中使用 第二档?
Python没有“静态”的概念。 “静态”是什么意思?
另外,我认为你没有意识到(int)(x)
正在做什么。在我看来,你正试图将x转换为int。虽然它有效,但这只是巧合。你真正在做的是调用int
上的x
函数。所以这相当于
number = int(x)
这与你的问题无关,但我认为我应该指出这一点,万一有人会感到困惑。