笔者在之前使用python将数据写入到Excel表格中,一般都只需要写入一张Sheet表中就可以了
因最近一个小的需求,需要将不同的大列表数据写入到不同的Sheet表中
这样,再使用之前的 pandas.DataFrame(content_list),然后.to_excel("./xxxxx.xlsx") 就不再好用了
于是笔者又去看了一个pandas模块的,发现也还是有办法实现的,那就是使用 pandas.ExcelWriter的机制
这里笔者通过一个简单的代码进行说明,就可以很好的看出效果
import pandas
Data_A_Sheet=[["Name","QQ"],["Author","QQ:5201351"]]
Data_B_Sheet=[["Name","URL"],["Cnblogs","https://www.cnblogs.com/5201351"]]
writer=pandas.ExcelWriter("DataResult.xlsx")
Data_A=pandas.DataFrame(Data_A_Sheet[1:],columns=Data_A_Sheet[0])
Data_B=pandas.DataFrame(Data_B_Sheet[1:],columns=Data_B_Sheet[0])
Data_A.to_excel(writer,sheet_name="Data_A",index=False)
Data_B.to_excel(writer,sheet_name="Data_B",index=False)
writer.close()
这样就会生成 DataResult.xlsx 文件,打开会,会发现有 Data_A 和 Data_B 两个Sheet表了
说明:如果文件已经存在,重复执行代码,会覆盖重写之前的Excel表中的数据的,即相当于之前文件存在的内容都会被清空,最后使用新的数据进行重写
当然如果重复执行代码时,之前的Excel文件处于打开状态,则不能成功,且会报错~ PermissionError: [Errno 13] Permission denied: 'DataResult.xlsx'
尊重别人的劳动成果 转载请务必注明出处:
https://www.cnblogs.com/5201351/p/17369455.html