import pandas as pd import openpyxl

file_name = r"02-林业.xlsx" wb = openpyxl.load_workbook(file_name, read_only = True) name_lst = wb.sheetnames # 当前excel问题中的名字列表:['平潭发展000592.SZ', 'ST景谷600265.SH']

stock_name = name_lst[0] # 列表的第一个元素:'平潭发展000592.SZ' df_stock_values = pd.read_excel(file_name, sheet_name = stock_name)
lst_date = list(df_stock_values['trade_date']) # 日期列表 lst_open = list(df_stock_values['open']) # 开盘价列表 lst_close = list(df_stock_values['close']) # 收盘价列表 lst_high = list(df_stock_values['high']) # 最大值列表 lst_low = list(df_stock_values['low']) # 最小值列表

-------------------------------------------------------------------------------------------

请编写函数,功能为,分别输出上市公司的名字列表和股票代码列表

提示:可以用切片,可以采用函数式编程

name_sh为上市公司名称和代码的列表,其形式为: ['平潭发展000592.SZ', 'ST景谷600265.SH']

def get_company_info(name_lst): name_sh = [name.split('.')[0] for name in name_lst] return name_sh

-------------------------------------------------------------------------------------------

请编写函数,功能为,输出输入列表的平均数

def get_list_avg(lst): return sum(lst)/len(lst)

------------------------------------------------------------------------------------------

调用函数,输出结果

1. 调用函数,分别输出当前的上市公司列表,和股票代码列表

name_sh = get_company_info(name_lst) print("当前上市公司列表:", [name.split('.')[0] for name in name_lst]) print("当前股票代码列表:", [name.split('.')[1] for name in name_lst])

2. 提示用户,输入一个想要查询的公司名称,或股票代码

input_name = input("请输入公司名称或股票代码:")

3. 输出用户想要查询的公司名称及股票代码

if input_name in name_sh: print("您输入的公司名称为:", input_name) print("对应的股票代码为:", name_lst[name_sh.index(input_name)]) else: print("您输入的股票代码为:", input_name) print("对应的公司名称为:", name_sh[name_lst.index(input_name+'.xlsx')])

4. 根据该公司的名称及代码,查询指定日期内的数据

提示,得到当前股票中,2020年1月的开盘价、收盘价、最大值、最小值数据

#得到2020年1月的数据 df_stock_values['trade_date'] = pd.to_datetime(df_stock_values['trade_date'], format = '%Y%m%d') df_stock_values = df_stock_values.set_index('trade_date') df_stock_values_jan = df_stock_values['2020-01'] lst_open_jan = list(df_stock_values_jan['open']) lst_close_jan = list(df_stock_values_jan['close']) lst_high_jan = list(df_stock_values_jan['high']) lst_low_jan = list(df_stock_values_jan['low'])

5. 调用函数,计算在该时间内的股票开盘价的均值

print("2020年1月的开盘价均值为:", get_list_avg(lst_open_jan))

import pandas as pdimport openpyxlfile_name = r02-林业xlsxwb = openpyxlload_workbookfile_name read_only = Truename_lst = wbsheetnames # 当前excel问题中的名字列表:平潭发展000592SZ ST景谷600265SHstock_name = name_

原文地址: https://www.cveoy.top/t/topic/bZMc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录