class database(object):
def __init__(self):
self.l = []
def insert(self, e):
for i in range[len(self.l)]:
if i == e: return
self.l.append(e)
为什么插件给我一个未绑定的方法可以有人帮忙吗?
答案 0 :(得分:3)
你不需要循环,你可以这样做:
def insert(self, e):
if e not in self.l:
self.l.append(e)
或者,如果您只是想确保没有重复项;使用set
,这是无序唯一项的集合;并且你不能有重复:
>>> s = set()
>>> s.add(1)
>>> s.add(2)
>>> s.add(1) # Note, no error message on duplicate
>>> s.add(4)
>>> s
set([1, 2, 4])
答案 1 :(得分:2)
原因是你的拼写错误:
range[len(self.l)]
应该是
range(len(self.l))
您使用括号()
来调用函数。括号[]
用于列表和其他功能,如切片。