python 设计一个名为Stock的类来表示一个公司的股票?

Python011

python 设计一个名为Stock的类来表示一个公司的股票?,第1张

是的,设计一个名为 Stock的类表示股票,该类包括:

1、一个名为symbol的字符串数据域表示股票代码:

2、一个名为name的字符串数据域表示股票名称

3、一个名为previousPrice的double型数据域,用来存储股票的前一 日收盘价:

4、一个名为currentPrice的double型数据域,用来存储股票的当前价格:

5、创建一个给定特定代码和名称的股票构造方法:

6、一个名为getChangePercentO方法,返回从前的日价格到当前价格变化的百分比。

实现这个类,编写个测试程序,创建一个Stock 对象,它的股票代码是600000,股票名称是“浦发银行”,前一日收盘价是 25.5元,当前的最新价是28.6元,显示市值变化的百分比。

拓展资料

设计一个Stock类和DividendStock类

编写了一个表示拥有股票情况的Stock类,这里给出了一个简化版,去掉了对参数的合法性的检查等细节,现在需要创建一个可以发放分红的股票。红利的多少和持有股票的数量成正比,不是所有的股票都是会有分红的,所以不能直接在Stock类上直接增加这个功能,而是应该在Stock类的基础上,继承一个DividendStock类。并在这个子类中增加分红的属性和行为。

(1)一个用于记录分红的字段dividents

(2)重写父类的getProfit方法(在父类的getProfit方法的基础上还要加上分红的)

父类的getProfit+股票的总的分红(也就是字段dividents的值)

(3)增加计算分红的方法,方法中的参数表示每股的红利,可以理解为成员变量dividents赋值: 股票的总的分红=每股的红利*总股数

public void payDividend(double amountPerShare)

编写一个测试的程序,创建一个名为”Oracle”的分红股票,先后以单价32元购买200股,以单价40元购买350股。每股的分红2.8元。这支股票的当前价格是每股50元。

你先把价格按日期排序之后变成一个list的话,比如:

price=[70,74, 73, 72, 71,75]

你可以这么办:

operations=[]

isLong=False

for i in range(len(price)-1):

if(not isLong):

if(price[i]<price[i+1]):

print "Go long on day " + str(i)

operations.append(-1)

isLong=True

else:

operations.append(0)

else:

if(price[i]>price[i+1]):

print "Go short on day " + str(i)

operations.append(1)

isLong=False

else:

operations.append(0)

if(isLong):

print "Go short on day " + str(len(price)-1)

operations.append(1)

else:

operations.append(0)

ProfitPerShare=0

for i in range(len(price)):

ProfitPerShare+=price[i]*operations[i]

print "Summary profit per share: "+str(ProfitPerShare)

这里面就是说,如果你是空仓,那么如果明天比今天高就买,否则明天买就比今天买更划算;如果你不空仓,那么如果明天比今天价低你就要清仓,否则明天卖就会更划算。然后用一个叫operations的list来记录你每天的操作,-1表示买,0表示没有,1表示卖,所以最后可以计算每股获得的收入price[i]*operations[i]的总和。