17 lines
361 B
Python
17 lines
361 B
Python
|
# stock.py
|
||
|
|
||
|
from structure import Structure
|
||
|
from validate import String, PositiveInteger, PositiveFloat
|
||
|
|
||
|
class Stock(Structure):
|
||
|
name = String()
|
||
|
shares = PositiveInteger()
|
||
|
price = PositiveFloat()
|
||
|
|
||
|
@property
|
||
|
def cost(self):
|
||
|
return self.shares * self.price
|
||
|
|
||
|
def sell(self, nshares: PositiveInteger):
|
||
|
self.shares -= nshares
|