AttributeError:'tuple'对象没有属性'price'
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AttributeError:'tuple'对象没有属性'price'相关的知识,希望对你有一定的参考价值。
作为一项功课,我必须以节点作为对象来执行链接列表,而节点将携带Car class
作为其数据。不确定我是否正确行事,但我的朋友们试图帮助我,这就是我所拥有的:
class Car:
def __init__(self, identification = None, name = None, brand = None,
price = None, active = None):
self.identification = identification
self.name = name
self.brand = brand
self.price = price
self.active = active
class Node:
def __init__(self, data):
self.prevNode = None
self.nextNode = None
self.data = data
class LinkedList:
def __init__(self):
self.head = None
def insertNode(self, car):
newNode = Node(car)
curNode = self.head
if self.head is None:
self.head = newNode
elif newNode.data.price < curNode.data.price:
newNode.nextNode = self.head
self.head.prevNode = newNode
self.head = newNode
else:
while curNode.nextNode is not None and curNode.nextNode.data.price <= newNode.data.price:
curNode = curNode.nextNode
newNode.nextNode = curNode.nextNode
curNode.nextNode = newNode
db = LinkedList()
def init(cars):
for car in cars:
db.insertNode(car)
def add(car):
db.insertNode(car)
def updateName(identification, name):
curNode = db.head
while curNode.data.id != identification:
curNode = curNode.next
curNode.data.name = name
def activateCar(identification):
curNode = db.head
while curNode.data.id != identification:
curNode = curNode.next
curNode.data.active = True
def calculateCarPrice():
total = 0
for i in range(db):
if db[i].data.active == True:
total += db[i].data.price
i += 1
return total
car1 = (1, 'a', 'audi', 3000, True)
car2 = (1, 'b', 'bmw', 5000, False)
cars = [car1, car2]
init(cars)
在我看来,一切都应该没问题,但是当我调用init
函数时它会返回此错误。
Traceback(最近一次调用最后一次):
文件“C:/Users/Matyas/Desktop/ZAL/Cvičení/showroom.py”,第89行,in
的init(汽车)
文件“C:/Users/Matyas/Desktop/ZAL/Cvičení/showroom.py”,第40行,在init中
db.insertNode(汽车)
在insertNode中输入文件“C:/Users/Matyas/Desktop/ZAL/Cvičení/showroom.py”,第26行
elif newNode.data.price <curNode.data.price:
AttributeError:'tuple'对象没有属性'price'
我不明白为什么它甚至返回'tuple
'..
你写的地方
car1 = (1, 'a', 'audi', 3000, True)
car2 = (1, 'b', 'bmw', 5000, False)
应该说
car1 = Car(1, 'a', 'audi', 3000, True)
car2 = Car(1, 'b', 'bmw', 5000, False)
以上是关于AttributeError:'tuple'对象没有属性'price'的主要内容,如果未能解决你的问题,请参考以下文章
readline() 方法给出错误:AttributeError: 'tuple' object has no attribute 'readline'
在 PySpark 中展开 json 列 - 架构问题 - AttributeError: 'tuple' object has no attribute 'name'
AttributeError: 'tuple' 对象在使用 mysql-connector 插入数据时没有属性 'encode'
Django AttributeError 'tuple' 对象没有属性 'regex'
如何修复“AttributeError at /orders/create/‘tuple’对象在 Django 中没有属性‘get’