假设我有一个班级“shoppingCart”。我在购物车中添加了各种商品:鸡蛋,牛奶,奶酪,面包,牙刷,培根,洗碗皂,薯片和瓶装水。
class shoppingCart(object):
def __init__(self):
self.eggs = 12
self.milk = 2
self.cheese = 1
self.bread = 0
self.toothbrush = 1
self.bacon = 10
self.soap = 1
self.chips = 2
self.bottlewater = 24
myCart = shoppingCart()
是否可以在班级中创建一个组,以便我可以识别购物车中属于特定类别的商品数量?例如,如果我想调用饮料(牛奶,水)或所有非食品(牙刷,肥皂)或美味食品(奶酪,培根,薯条)的所有属性 - 怎么可能我这样做了吗?
答案 0 :(得分:1)
你不应该只用一个班级。 我会创造两个分支。一个是购物车项目,另一个是购物车。例如:
ng-bind-html
然后是购物车:
class cartItem(object):
def __init__(self, amount=0):
self.amount = amount
self._is_beverage = False
@property
def is_beverage(self):
return self._is_beverage
@is_beverage.setter
def is_beverage(self, value):
self._is_beverage = value
所以你要这样做:
class shoppingCart(object):
def __init__(self):
self._cart_items = []
@property
def cart_items(self):
return self._cart_items
@cart_items.setter
def cart_items(self, value):
self._cart_items = value
def append_cart_item(self, new_cart_item):
self._cart_items = self._cart_items.append(new_cart_item)
我甚至会为每个购物车项目类型创建一个特定的类(我稍后可能会改进该示例)。 我建议您了解有关类和子类的更多信息,例如:http://www.jesshamrick.com/2011/05/18/an-introduction-to-classes-and-inheritance-in-python/