|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
设计一个名为Stock类表示一个公司的股票,它包括:
1) 一个名为symbol的私有字符串变量表示股票的代码。
2) 一个名为name的私有字符串变量表示股票的名字。
3) 一个名为preClosingPrice的私有浮点变量存储前一天的股票收盘价格。
4) 一个名为curPrice的私有浮点变量存储当前的股票价格。
5) 一个构造方法创建一个具有特定股票代码、名字、前一天收盘价格和当前价格的股票。
6) 一个返回股票代码的get方法。
7) 一个返回股票名字的get方法。
8) 获取/设置股票前一天收盘价格的get和set方法
9) 获取/设置股票当前价格的get和set方法
10) 一个名为getChangePercent( )的方法返回从preClosingPrice到curPrice所改变的百分比(涨幅)
编写这个类。同时编写一个测试程序,通过Stock类的创建一个股票对象,这个股票的代码是10001、它的名字是平头哥芯片、前一天的收盘价为62.8、当前价格是70.32,并且显示这个股票的股票名字、前一天收盘价、当前价和当前的涨幅。
我写的是:
class Stock:
def __init__(symbol,name,preClosingPrice,curPrice):
self.symbol=symbol
self.name=name
self.preClosingPrice=preClosingPrice
self.curPrice=curPrice
def getsymbol(symbol):
return self.symbol
def getname(name):
return self.name
def getname(preClosingPrice):
return self.preClosingPrice
def getname(curPrice):
return self.curPrice
def getChangePercent(self):
a=((self.curPrice-self.preClosingPrice)/self.preClosingPrice)*100
return a
mycla = Stock(10001,"平头哥芯片",62.8,70.32)
print(mycla.getname())
print(mycla.getpreClosingPrice())
print(mycla.getcurPrice())
print("{:.2%}".format(mycla.getChangePercent))
但运行起来是错误的,错误提示是:
mycla = Stock(10001,"平头哥芯片",62.8,70.32)
TypeError: __init__() takes 4 positional arguments but 5 were given
怎样修改呢?
import math
class QE:
def __init__(self,a,b,c):
self.a=a
self.b=b
self.c=c
def geta(self):
return self.a
def getb(self):
return self.b
def getc(self):
return self.c
def getD(self):
return self.b*self.b-4*self.a*self.c
def getRoot1(self):
d = self.getD()
if d <0:
return 0
else:
return (-self.b+math.sqrt(d))/2/self.a
def getRoot2(self):
d = self.getD()
if d <0:
return 0
else:
return (-self.b-math.sqrt(d))/2/self.a
|
|