我在代码中多次收到此错误。我在使用时发生了:
pos -= 1
错误当然是:TypeError: unsupported operand type(s) for -=: 'instance' and 'int'
感谢任何帮助!
def DELETE(pos, lst) :
temp = FIRST(lst)
# move to just before pos
if pos == 0 :
lst.head = temp.nxt
elif pos == END(lst) :
if temp.nxt == None :
lst = MAKENULL()
else :
while (temp.nxt).nxt :
temp = temp.nxt
temp.nxt = None
else :
while pos - 1 > 0 :
temp = temp.nxt
pos -= 1
first = temp
second = temp.nxt
first.nxt = second.nxt
lst.cur = lst.head
答案 0 :(得分:1)
您获得的错误仅取决于您展示的代码 - 它主要是关于pos
的内容 - 显然是旧式Python 2类的实例未实现尝试假装为整数的特殊方法(特别是__isub__
用于就地减法。