我正在编写一个函数,它将链接列表作为参数,并将节点中存在的值转换为数字Ex:1->2->0
是一个链接列表,它应该返回120。
我试着用这种方式:
def list_to_number(head):
a0 = head.value
a1 = head.next
a2 = a1.next
num1 = (a0*100)
num2 = (a1*10)
num3 = a2
num4 =sum(num1,num2,num3)
return num4
当我打电话时显示错误:TypeError: unsupported operand type(s) for *: 'Node' and 'int'
。
答案 0 :(得分:2)
您无法添加Node
和int
。您需要从每个节点获取一个整数值:
def list_to_number(head):
a0 = head.value
a1 = head.next
a2 = a1.next
num1 = (a0*100)
num2 = (a1.value*10)
num3 = a2.value
num4 =num1 + num2 + num3
return num4
当然,这段代码可以推广到任何长度的列表。这种概括留给了读者。