描述
附件文件为某股票2019年部分数据,根据要求进行统计分析:
- 若输入为‘最高价’:
再输入一个正整数n按照示例格式每行依次输出最高价由高到低的前n天的日期和当天最高价,行内各数据间用空格分隔
- 若输入为‘开盘价’:
再输入一个正整数m按照示例格式每行依次输出开盘价由低到高的前m天的日期和当天开盘价,行内各数据间用空格分隔
- 若输入为‘成交金额’:再输入一个正整数num输出成交金额最高的num天的成交额
4.若输入为‘日期’:再输入一个日期输出当天的股票信息,各数据间用空格分隔
示例表中数据仅供作为格式参考,数据为模拟值
代码:
def readfile():
with open('\China Minsheng Bank.csv','r') as f:
ls=[]
for line in f.readlines(): #按行读入
ls.append(line.strip().split(',')) #去掉换行符,每行以逗号分隔成小列表,所有小列表共同形成大列表
return ls[1:] #去掉标题
def zgj(ls):
k=int(input())
print('最高价从高到低前%s名:'%k)
ls.sort(key=lambda x:x[4],reverse=1) #按最高价升序排序
for x in ls[:k]:
print(x[0],'%s元'%x[4])
def kpj(ls):
k=int(input())
print('开盘价从低到高前%s名:'%k)
ls.sort(key=lambda x:x[6]) #按开盘价降序排序
for x in ls[:k]:
print(x[0],'%s元'%x[6])
def cjje(ls):
k=int(input())
ls_cjje=[]
for x in ls:
ls_cjje.append(int(x[7])) #把成交金额存进列表中
cje=sum(sorted(ls_cjje,reverse=1)[:k]) #对成交金额排序,取前几名并求和
print('成交金额最多的%s天成交额为%s元'%(k,cje))
def rq(c):
date=input()
for x in ls:
if x[0]==date: # 日期判断
print(x[2],x[1],x[4],x[5],x[6],x[3],x[7],x[0])
ls=readfile()
c=input()
if c=='最高价':
zgj(ls)
elif c=='开盘价':
kpj(ls)
elif c=='成交金额':
cjje(ls)
elif c=='日期':
rq(ls)
股票信息:
日期,股票代码,名称,收盘价,最高价,最低价,开盘价,成交金额
2019/8/1,'600016,民生银行,6.02,6.06,6.01,6.04,311761690
2019/7/31,'600016,民生银行,6.07,6.08,6.03,6.07,326448065
2019/7/30,'600016,民生银行,6.07,6.1,6.03,6.04,340080157
2019/7/29,'600016,民生银行,6.04,6.05,6.02,6.04,285660271
2019/7/26,'600016,民生银行,6.04,6.05,6.02,6.03,287431301
2019/7/25,'600016,民生银行,6.05,6.05,5.99,6,332686859
2019/7/24,'600016,民生银行,6,6.03,5.98,5.99,326066864
2019/7/23,'600016,民生银行,5.98,5.99,5.96,5.97,209360994
2019/7/22,'600016,民生银行,5.97,6.02,5.96,6.01,290242975
2019/7/19,'600016,民生银行,6,6.02,5.96,5.97,269957396
2019/7/18,'600016,民生银行,5.96,5.98,5.94,5.96,214314730
2019/7/17,'600016,民生银行,5.96,6,5.96,5.98,213993482
2019/7/16,'600016,民生银行,6,6.02,5.99,6.01,170036166
2019/7/15,'600016,民生银行,6.01,6.04,5.93,6.01,414203607
2019/7/12,'600016,民生银行,6.03,6.06,5.99,5.99,311034392
2019/7/11,'600016,民生银行,5.99,6.03,5.98,6,238847824
2019/7/10,'600016,民生银行,5.98,6,5.96,6,222779021
2019/7/9,'600016,民生银行,5.98,6.02,5.96,6.01,285590917
2019/7/8,'600016,民生银行,6,6.09,5.98,6.07,538498352
2019/7/5,'600016,XD民生银,6.09,6.13,6.08,6.13,547646264
2019/7/4,'600016,民生银行,6.44,6.49,6.43,6.47,708623925
2019/7/3,'600016,民生银行,6.46,6.48,6.41,6.43,602269334
2019/7/2,'600016,民生银行,6.44,6.44,6.4,6.42,543618800
2019/7/1,'600016,民生银行,6.42,6.43,6.39,6.41,617829252
2019/6/28,'600016,民生银行,6.35,6.37,6.32,6.37,314502479
2019/6/27,'600016,民生银行,6.36,6.41,6.35,6.36,395789990
2019/6/26,'600016,民生银行,6.34,6.38,6.33,6.35,241076078
2019/6/25,'600016,民生银行,6.34,6.42,6.33,6.41,530869033
2019/6/24,'600016,民生银行,6.41,6.41,6.38,6.39,345878818
2019/6/21,'600016,民生银行,6.39,6.43,6.38,6.41,709009746
2019/6/20,'600016,民生银行,6.4,6.48,6.33,6.34,998833631
2019/6/19,'600016,民生银行,6.34,6.38,6.32,6.37,566269848
2019/6/18,'600016,民生银行,6.31,6.32,6.28,6.28,355572686
2019/6/17,'600016,民生银行,6.28,6.33,6.28,6.29,359399703
2019/6/14,'600016,民生银行,6.29,6.34,6.27,6.33,456979908
2019/6/13,'600016,民生银行,6.28,6.3,6.25,6.27,339999689
2019/6/12,'600016,民生银行,6.27,6.28,6.25,6.26,338747232
2019/6/11,'600016,民生银行,6.28,6.29,6.23,6.25,592255143
2019/6/10,'600016,民生银行,6.23,6.27,6.21,6.22,532782247
2019/6/6,'600016,民生银行,6.2,6.22,6.17,6.2,420158149
2019/6/5,'600016,民生银行,6.19,6.22,6.18,6.19,400593075
2019/6/4,'600016,民生银行,6.18,6.18,6.14,6.16,321442425
2019/6/3,'600016,民生银行,6.17,6.17,6.11,6.12,631792447
2019/5/31,'600016,民生银行,6.11,6.15,6.11,6.13,321839947
2019/5/30,'600016,民生银行,6.13,6.15,6.1,6.14,351017665
2019/5/29,'600016,民生银行,6.13,6.17,6.12,6.15,435755276
2019/5/28,'600016,民生银行,6.18,6.18,6.11,6.13,807721308
2019/5/27,'600016,民生银行,6.14,6.16,6.05,6.1,536311301
2019/5/24,'600016,民生银行,6.1,6.12,6.08,6.09,348519438
2019/5/23,'600016,民生银行,6.08,6.12,6.06,6.1,499580793
2019/5/22,'600016,民生银行,6.11,6.15,6.1,6.13,458850111
2019/5/21,'600016,民生银行,6.12,6.17,6.11,6.12,505994927
2019/5/20,'600016,民生银行,6.11,6.15,6.09,6.09,451882223
2019/5/17,'600016,民生银行,6.08,6.16,6.07,6.15,635652340
2019/5/16,'600016,民生银行,6.14,6.16,6.12,6.14,472733087
2019/5/15,'600016,民生银行,6.15,6.18,6.12,6.13,487542377
2019/5/14,'600016,民生银行,6.11,6.17,6.1,6.1,572564214
2019/5/13,'600016,民生银行,6.14,6.17,6.12,6.15,390705066
2019/5/10,'600016,民生银行,6.19,6.22,6.1,6.15,668822088
2019/5/9,'600016,民生银行,6.12,6.21,6.1,6.18,623382302
2019/5/8,'600016,民生银行,6.19,6.24,6.17,6.19,603018630
2019/5/7,'600016,民生银行,6.24,6.28,6.21,6.25,701579854
2019/5/6,'600016,民生银行,6.23,6.32,6.16,6.31,1356245739
2019/4/30,'600016,民生银行,6.4,6.44,6.34,6.38,762768456
2019/4/29,'600016,民生银行,6.38,6.41,6.29,6.3,926344681
2019/4/26,'600016,民生银行,6.28,6.39,6.28,6.36,850392047
2019/4/25,'600016,民生银行,6.38,6.45,6.37,6.44,774565840
2019/4/24,'600016,民生银行,6.44,6.5,6.36,6.5,706881918
2019/4/23,'600016,民生银行,6.47,6.52,6.47,6.5,649498740
2019/4/22,'600016,民生银行,6.5,6.64,6.49,6.63,1054698596
2019/4/19,'600016,民生银行,6.63,6.68,6.58,6.61,728127725
2019/4/18,'600016,民生银行,6.61,6.66,6.6,6.64,593660448
2019/4/17,'600016,民生银行,6.64,6.71,6.63,6.68,1318171983
2019/4/16,'600016,民生银行,6.69,6.7,6.45,6.46,2296552264
2019/4/15,'600016,民生银行,6.5,6.64,6.5,6.59,1387959057
2019/4/12,'600016,民生银行,6.51,6.54,6.45,6.49,503872267
2019/4/11,'600016,民生银行,6.49,6.59,6.46,6.52,752979033
2019/4/10,'600016,民生银行,6.53,6.56,6.48,6.55,931227853
2019/4/9,'600016,民生银行,6.56,6.63,6.53,6.61,1011607087
2019/4/8,'600016,民生银行,6.61,6.73,6.54,6.6,1675284468
2019/4/4,'600016,民生银行,6.56,6.59,6.49,6.5,1305293548
2019/4/3,'600016,民生银行,6.5,6.5,6.4,6.42,974711626
2019/4/2,'600016,民生银行,6.45,6.5,6.43,6.48,905682763
2019/4/1,'600016,民生银行,6.46,6.5,6.39,6.39,1249759635
2019/3/29,'600016,民生银行,6.34,6.37,6.18,6.19,826587085
2019/3/28,'600016,民生银行,6.2,6.23,6.16,6.22,609607778
2019/3/27,'600016,民生银行,6.25,6.31,6.22,6.26,510704491
2019/3/26,'600016,民生银行,6.26,6.33,6.22,6.32,592112519
2019/3/25,'600016,民生银行,6.29,6.38,6.28,6.38,964215887
2019/3/22,'600016,民生银行,6.42,6.47,6.4,6.46,702052672
2019/3/21,'600016,民生银行,6.45,6.5,6.44,6.48,694223458
2019/3/20,'600016,民生银行,6.48,6.53,6.45,6.48,596918440
2019/3/19,'600016,民生银行,6.5,6.56,6.48,6.54,667046132
2019/3/18,'600016,民生银行,6.54,6.54,6.43,6.45,1110242155
2019/3/15,'600016,民生银行,6.45,6.51,6.43,6.44,648728228
2019/3/14,'600016,民生银行,6.44,6.52,6.42,6.44,667924603
2019/3/13,'600016,民生银行,6.44,6.53,6.4,6.46,815718937
2019/3/12,'600016,民生银行,6.45,6.55,6.42,6.46,964195152
2019/3/11,'600016,民生银行,6.43,6.46,6.38,6.38,886267064
2019/3/8,'600016,民生银行,6.4,6.56,6.39,6.56,1228822449
2019/3/7,'600016,民生银行,6.65,6.74,6.63,6.74,1311880738
2019/3/6,'600016,民生银行,6.75,6.81,6.68,6.75,1253910802
2019/3/5,'600016,民生银行,6.75,6.76,6.69,6.72,1009631194
2019/3/4,'600016,民生银行,6.74,6.92,6.67,6.73,2158849606
2019/3/1,'600016,民生银行,6.69,6.71,6.43,6.54,1400757858
2019/2/28,'600016,民生银行,6.53,6.62,6.49,6.54,895789473
2019/2/27,'600016,民生银行,6.56,6.72,6.46,6.49,1875499056
2019/2/26,'600016,民生银行,6.46,6.63,6.44,6.48,1992927842
2019/2/25,'600016,民生银行,6.48,6.55,6.1,6.1,2263037510
2019/2/22,'600016,民生银行,6.07,6.07,5.97,6,596448399
2019/2/21,'600016,民生银行,6,6.06,5.99,6.03,583249231
2019/2/20,'600016,民生银行,6.03,6.07,6.02,6.05,420564984
2019/2/19,'600016,民生银行,6.03,6.1,6.01,6.03,733171324
2019/2/18,'600016,民生银行,6.04,6.04,5.97,5.98,576795541
2019/2/15,'600016,民生银行,5.95,6.03,5.94,6,469398175
2019/2/14,'600016,民生银行,6.03,6.05,6,6.02,429550458
2019/2/13,'600016,民生银行,6.04,6.06,5.92,5.94,729615673
2019/2/12,'600016,民生银行,5.94,5.96,5.91,5.95,472752304
2019/2/11,'600016,民生银行,5.94,5.95,5.89,5.91,573575361
2019/2/1,'600016,民生银行,5.94,5.97,5.9,5.97,481152090
2019/1/31,'600016,民生银行,5.95,5.99,5.91,5.93,710234342
2019/1/30,'600016,民生银行,5.91,5.94,5.9,5.91,309022018
2019/1/29,'600016,民生银行,5.93,5.95,5.85,5.87,413860845
2019/1/28,'600016,民生银行,5.88,5.96,5.85,5.92,355346134
2019/1/25,'600016,民生银行,5.9,5.93,5.83,5.85,542058219
2019/1/24,'600016,民生银行,5.83,5.86,5.8,5.84,329153778
2019/1/23,'600016,民生银行,5.82,5.86,5.79,5.81,243200746
2019/1/22,'600016,民生银行,5.81,5.84,5.78,5.84,275131189
2019/1/21,'600016,民生银行,5.82,5.88,5.81,5.85,378036939
2019/1/18,'600016,民生银行,5.83,5.86,5.76,5.8,540950513
2019/1/17,'600016,民生银行,5.76,5.82,5.75,5.8,262622360
2019/1/16,'600016,民生银行,5.79,5.8,5.76,5.78,202496924
2019/1/15,'600016,民生银行,5.79,5.81,5.74,5.75,340057298
2019/1/14,'600016,民生银行,5.73,5.78,5.72,5.77,236881827
2019/1/11,'600016,民生银行,5.77,5.8,5.74,5.75,286784852
2019/1/10,'600016,民生银行,5.74,5.76,5.71,5.74,328164876
2019/1/9,'600016,民生银行,5.76,5.84,5.76,5.78,503711898
2019/1/8,'600016,民生银行,5.75,5.78,5.73,5.76,249315680
2019/1/7,'600016,民生银行,5.76,5.81,5.74,5.8,397508249
2019/1/4,'600016,民生银行,5.78,5.79,5.63,5.64,486294555
2019/1/3,'600016,民生银行,5.67,5.69,5.62,5.63,339066044
2019/1/2,'600016,民生银行,5.65,5.73,5.61,5.72,326923639