pandas读取写入Excel文件中的多个sheet

import pandas as pd

#df = pd.read_excel(“D:\x’x’x用户反馈2020.11.05_11.11(1).xlsx”, sheet_name=None) # 这里的 df 是一个字典

#df = pd.read_excel(“D:\x’x’x用户反馈2020.11.05_11.11(1).xlsx”, sheet_name=‘用户反馈_当周’) 这里的 df 就是 一个 DataFrame 了

print(df)
#print(type(df)) # <class ‘pandas.core.frame.DataFrame’>

#print(type(df)) # <class ‘collections.OrderedDict’> # 字典类类型 ,并且每一组的key 就是sheet名,values 就是每个sheet里边的数据,并且每个values 是 DataFrame类型

#NO 1 设置sheet_name=None,会得到一个字典变量,字典的key就是sheet名,value就是对应sheet里的数据
#查看所有sheet名字
#print(df.keys()) # odict_keys([‘用户反馈_总表’, ‘用户反馈_当周’, ‘周反馈总结’]) # 这个完全是按照一个excel文件中sheet文件的建表顺序来写的,顺序依次是从左到右

#print(type(df.keys())) # <class ‘odict_keys’> # 类型是一个字典的keys集合 #

#print(len(df.keys())) # 3

#-----------------------------------
#for i in df.keys():
#print(i)
#print(type(i)) # type : str

#— 输出 ------------------------------------------------------------------------------------
#用户反馈_总表
#<class ‘str’>
#用户反馈_当周
#<class ‘str’>
#周反馈总结
#<class ‘str’>

#print(df.values()) # value 就是对应的sheet里面的数字
#print(type(df.values())) # <class ‘odict_values’>
#print(len(df.values())) # 3 # (结果是3 里边有3个表格里面的数据,形式类似于frame 形式) # 这里可以读取出表格里边刻意隐藏的列 # 强大 !!!

#第二个表格由隐藏 --------------------------------------------------------------------------------

#引用其中单独一个sheet里边的数据集
#m = df[‘用户反馈_当周’] # <class ‘pandas.core.frame.DataFrame’> # 每一个表格 是一个 DataFrame 表格
#print(type(m))
#print(m.columns)
#pd.set_option(‘display.max_rows’, 10, ‘display.max_columns’, 15)
#print("========= w hahah hahha ================")
#m.to_excel(“D:\testdjf.xlsx”, index=False)
#print(m)

#NO 2 --------------------------------------------------------------------------------------------

df = pd.ExcelFile(‘D:\xxx用户反馈2020.11.05_11.11(1).xlsx’)

#print(type(df)) # <class ‘pandas.io.excel._base.ExcelFile’>
#print(df.sheet_names) # [‘用户反馈_总表’, ‘用户反馈_当周’, ‘周反馈总结’] # 这个也是会按照excel表格中 sheet 表格的顺序,从左到右选取的 ----
#print(type(df.sheet_names)) # <class ‘list’>
#df.sheet_names # 查看所有sheet 名字
#print(df.parse(“用户反馈_总表”)) #为读取“AAA"工作薄中的内容

#print(type(df.parse(“用户反馈_总表”))) # <class ‘pandas.core.frame.DataFrame’>
#不同sheet 写入到一个excel 文件中
#利用 pandas 中的 ExcelWriter() 方法增加一个公共句柄

df1 = df.parse(‘用户反馈_总表’)
df2 = df.parse(‘用户反馈_当周’)
df3 = df.parse(‘周反馈总结’)

print(df1)

print(df2)

writer = pd.ExcelWriter(‘D:\test.xlsx’) # # 这里加入 index=False 没有效果
#df1.to_excel(writer, ‘AAA’, index=False) # 还可以写成 df1.to_excel(writer, sheet_name=‘AAA’, index=False)
#df2.to_excel(writer, ‘BBB’, index=False)
#df3.to_excel(writer, ‘CCC’, index=False)
##writer.save() # 这句一定要加上 否则 excel 不能生成 # !!!!

#------ 下面这个方法的弊端 -------------------------------------------------------------------
#df1.to_excel(“D:\newtest.xlsx”,sheet_name=“AAA”)
#df2.to_excel(“D:\newtest.xlsx”,sheet_name=‘BBB’)
#df3.to_excel(“D:\newtest.xlsx”,sheet_name=‘CCC’) # 只有最后 df3 存储在文件中,也就是newtest 这个表格中 只有一个sheet_name 为 CCC 的表格

#参考链接:
#https://blog.csdn.net/weixin_43060843/article/details/100766677?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param
#https://blog.csdn.net/luckywalking/article/details/108225925

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值