【发布时间】:2015-03-26 20:28:16
【问题描述】:
所以我有一个类Point,就在这里:
class Point:
def __init__(self,x,y):
self.x = x
self.y = y
def __getitem__(self,index):
self.coords = (self.x, self.y)
if type(index) != str or type(index) != int:
raise IndexError
if index == 'x':
return self.x
elif index == 'y':
return self.y
elif index == 0:
return self.coords[index]
elif index == 1:
return self.coords[index]
如果索引的类型不是 str 或 int,我应该引发 IndexError,但由于某种原因,如果我在函数的开头或结尾引发异常,它就不起作用。我应该在哪里提出异常?
【问题讨论】:
-
您的条件应该是(如果 type(index) != str and type(index) != int) ??你应该把它放在开头。
标签: class exception python-3.x