2017-07-25 145 views
0

我正在编写一个购物车类来实现一个购物车,我经常在 网站上找到我可以购买一些商品的网站。我想想我可以存储在购物车中的东西以及我可以在购物车上执行的操作。至 简化事项,我认为该网站是一个电子商店, 有像平板电视,音箱,iPods,摄像机等商品。这是我最后的代码完成退出代码0?

class ShoppingCart(object): 
    def __init__(self, s_name = ""): 
     self.s_items = [] 
     self.s_total = 0 
     self.s_shopper = s_name 
     self.s_address = "" 
    def add_item(self, s_T): 
     self.s_items.append(s_T) 
     self.s_total = sum([s_t[2]for s_t in self.s_items]) 
    def print_cart(self): 
     print("\n Shipping:",self.s_address) 
     print("\n Cart:") 
     print("Name, \t\t ID, quantity, price") 
     for s_t in self.s_items: 
      print(s_t[0],"\t",s_t[3],"\t",s_t[1],"\t",s_t[2]) 
      print("\n Total:", self.s_total) 
    def set_address(self,a): 
     self.s_address = a 
    def get_address(self): 
     return self.s_address 
    def demo(self): 
     R = ShoppingCart('Karlson') 
     R.add_item(('boom', 1, 23, 123)) 
     R.add_item(('baam', 2, 130, 242)) 
     R.set_address('123 main, smweher, MN') 
     R.print_cart() 

当我运行的代码,没有任何反应,我得到了“处理退出码完0”通常,当我的代码心不是工作,我得到的语法或缩进错误,是在一个小白编码在这里得到了downvotes为0的原因,我不知道这个错误只发生在我的机器或它是否与代码有关?

+0

你的代码并不显示你曾经调用过任何函数。这只是一堂课。如果你想像'python my_script.py'那样运行脚本,你需要添加更多的脚本。就像'if __name__ =='__main __':'到底部那样,你可以调用你想要运行的任何函数。 –

回答

3

您需要在模块范围内编写一些代码以实际使用您的类。看看你的代码,你可能想要这样的事情:

if __name__ == '__main__': 
    cart = ShoppingCart() 
    cart.demo()