@Channelchan
2018-09-29T14:27:28.000000Z
字数 1951
阅读 78404
你父亲有的你也有,但你有的特有属性和方法你父亲就没有。
class Stock:def __init__(self,stockName, price, volume):self.stockName=stockNameself.price = priceself.volume = volumedef calAmount(self):return {self.stockName+'_Amount': self.price*self.volume}class BABA(Stock):passb = BABA('BABA', 180, 30000).calAmount()
b
{'BABA_Amount': 5400000}
class Stock:def __init__(self,stockName, price, volume):self.stockName=stockNameself.price = priceself.volume = volumedef calAmount(self):return {self.stockName+'_Amount': self.price*self.volume}class BABA(Stock):passclass TENCETN(Stock):passclass BIDU(Stock):passclass BuyMaxAmount(Stock):def __init__(self):self.haveCapital = Truedef buy(self):if self.haveCapital:print('I have cash to buy stock')self.haveCapital = Falseelse:print("I don't have any cash now")
BuyMaxAmount('TENCETN', 350, 20000).calAmount()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-6-64ba8ab1d9a5> in <module>()
----> 1 BuyMaxAmount('TENCETN', 350, 20000).calAmount()
TypeError: __init__() takes 1 positional argument but 4 were given
class Stock:def __init__(self,stockName, price, volume):self.stockName=stockNameself.price = priceself.volume = volumedef calAmount(self):return {self.stockName+'_Amount': self.price*self.volume}class BABA(Stock):passclass BuyAmount(Stock):def __init__(self, stockName, price, volume):self.haveCapital = Truesuper().__init__(stockName, price, volume)def buy(self):if self.haveCapital:print('I have cash to buy stock')self.haveCapital = Falseelse:print("I don't have any cash now")
buyBABA = BuyAmount('BABA', 2500, 50000)
buyBABA.buy()
I have cash to buy stock
class StockA:def __init__(self,price):self.price = priceclass StockB:def __init__(self, price):self.price = priceclass TwoStock:def __init__(self, priceA, priceB):self.stockA = StockA(priceA)self.stockB = StockB(priceB)def printStocks(self):print('StockA $ %d , StockB $ %d '% (self.stockA.price, self.stockB.price))twoStock = TwoStock(220, 350)
twoStock.printStocks()
StockA $ 220 , StockB $ 350
