我创建了一个类,并且我对add函数进行了改进,但由于某种原因它无法正常工作。这就是我所拥有的:
def __iadd__(self,thing):
try:
tester=True
for y in thing:
if type(y) != type('f'):
tester=False
for j in thing:
self.listt.append(j)
return self
except(tester==False):
return ValueError
每当我这样做时:
f=class('ab')
f += [4]
它应该返回一个ValueError
,因为我正在添加一些不是字符串的东西,但由于某种原因,它正在附加int,即使它也不应该。
答案 0 :(得分:2)
def __iadd__(self, thing):
for y in thing:
if not isinstance(y, str):
raise ValueError
for j in thing:
self.listt.append(j)
return self