【发布时间】:2015-04-01 14:16:36
【问题描述】:
我收到一个错误:
AttributeError: type object 'Shop' 没有属性 'inventory'
我的班级已设置:
class Shop(object):
def __init__(self, name, inventory, margin, profit):
self.name = name
self.inventory = inventory
self.margin = margin
self.profit = profit
# Initial inventory including 2 of each 6 models available
inventory = 12
# Markup of 20% on all sales
margin = .2
# Revenue minus cost after sale
for bike in bikes.values():
profit = bike.cost * margin
我想打印库存:
print "Mike's Bikes has {} bikes in stock.".format(Shop.inventory)
但不断收到同样的错误。我可以让它工作:
print "Mike's Bikes has %d bikes in stock." % (inventory)
但我正在尝试切换到 .format()
【问题讨论】:
-
你的 class 没有这样的属性;您从未创建过该类的实例。
-
self.inventory = 库存?
-
__init__方法仅在创建了实际的self实例时运行。您需要调用该类来创建实例。 -
那么在开放代码中添加Shop()来实例化它?
标签: python class variables printing format