【发布时间】:2015-06-02 19:57:45
【问题描述】:
错误提示:
AttributeError: 'list' object has no attribute 'cost'
我正在尝试使用以下类处理自行车字典来进行简单的利润计算:
class Bike(object):
def __init__(self, name, weight, cost):
self.name = name
self.weight = weight
self.cost = cost
bikes = {
# Bike designed for children"
"Trike": ["Trike", 20, 100],
# Bike designed for everyone"
"Kruzer": ["Kruzer", 50, 165]
}
当我尝试使用 for 语句计算利润时,出现属性错误。
# Markup of 20% on all sales
margin = .2
# Revenue minus cost after sale
for bike in bikes.values():
profit = bike.cost * margin
首先,我不知道为什么它指的是一个列表,而且一切似乎都被定义了,不是吗?
【问题讨论】:
-
您没有使用
[]语法创建Bike对象。您正在创建列表。
标签: python list class dictionary attributeerror