python 语法错误
class MyError(Exception):
def __init__(self,value):
self.value=value
def __str__(self):
return repr(self.value)
try:
raise MyError(2*2)
except MyError,e:
print("My exception occured,value:",e.value)
标注地方出现错误! 为啥 怎么改 求解释 python exception
[解决办法]
3.x这样写
except MyError as e:
[解决办法]
如果你贴出来的代码,是当前文件的全部的代码,则很明显,没有可以执行的代码行。
具体如何修改,需要你搞懂代码运行逻辑。
详见:
【教程】详解Python中代码缩进(Indent):影响代码的内在逻辑关系和执行结果
[解决办法]
class MyError(Exception):
def __init__(self,value):
self.value=value
def __str__(self):
return repr(self.value)
#if __name__=="__main__": 去掉这句话,下面抛出的异常MyError类就不会被识别了
try:
raise MyError(2*2)
except MyError,e:
print("My exception occured,value:",e.value)
[解决办法]
class MyError(Exception):
def __init__(self,value):
self.value=value
def __str__(self):
return repr(self.value)
try:
raise MyError(2*2)
except MyError,e:
print("My exception occured,value:",e.value)
2.x 无问题。。
3.x 如1楼
[解决办法]
只是很普通的2.X和3.X语法不兼容问题。3.X中语法变化了,所以会报错,改成1楼那样即可。