想要将Python中的字典列表导出为Excel文件,在Python中可以使用第三方库Pandas来实现,以下是详细的攻略:
安装Pandas
在终端中输入以下命令安装Pandas:
pip install pandas
导入所需库
在Python中导入需要使用的库
import pandas as pd
创建字典列表
首先,我们需要创建一个包含一些字典的列表,每个字典代表一行数据,且字典的键代表列名,值则代表列的具体数据,例如:
data = [
{'姓名': '小明', '年龄': 24, '电话号码': '123456789'},
{'姓名': '小红', '年龄': 25, '电话号码': '987654321'},
{'姓名': '小刚', '年龄': 22, '电话号码': '543216789'}
]
创建DataFrame对象
使用Pandas的DataFrame对象将数据转换成表格形式,代码如下:
df = pd.DataFrame(data)
导出数据到Excel文件
使用to_excel()方法将DataFrame对象中的数据导出到Excel文件中,需要指定文件名及文件路径,例如:
df.to_excel('sample.xlsx', index=False)
- df.to_excel():将数据导出到Excel文件
- 'sample.xlsx':Excel文件名,可以根据需要进行修改
- index=False:不将行索引列导出到Excel文件中,可有可无,根据需要设置
完整示例
假设我们要将以下数 据导出为Excel文件
姓名 | 年龄 | 电话号码 |
---|---|---|
小明 | 24 | 123456789 |
小红 | 25 | 987654321 |
小刚 | 22 | 543216789 |
完整代码如下:
import pandas as pd
# 创建字典列表
data = [
{'姓名': '小明', '年龄': 24, '电话号码': '123456789'},
{'姓名': '小红', '年龄': 25, '电话号码': '987654321'},
{'姓名': '小刚', '年龄': 22, '电话号码': '543216789'}
]
# 创建DataFrame对象
df = pd.DataFrame(data)
# 导出数据到Excel文件
df.to_excel('sample.xlsx', index=False)
运行后,在当前目录下会生成一个名为sample.xlsx的Excel文件,打开后即可查看导出的数据。
另一个示例
现在,我们来看一个稍微复杂一点的示例,具体代码如下:
import pandas as pd
# 创建字典列表
data = [
{'日期': '2021-01-01', '销售额': 1000, '成本': 500, '利润': 500},
{'日期': '2021-01-02', '销售额': 1200, '成本': 600, '利润': 600},
{'日期': '2021-01-03', '销售额': 1500, '成本': 700, '利润': 800},
{'日期': '2021-01-04', '销售额': 1800, '成本': 900, '利润': 900},
{'日期': '2021-01-05', '销售额': 2000, '成本': 1000, '利润': 1000},
{'日期': '2021-01-06', '销售额': 2200, '成本': 1300, '利润': 900},
{'日期': '2021-01-07', '销售额': 2500, '成本': 1500, '利润': 1000},
]
# 创建DataFrame对象
df = pd.DataFrame(data)
# 创建ExcelWriter对象
writer = pd.ExcelWriter('销售记录.xlsx')
# 将DataFrame中的数据导出到Excel文件中
df.to_excel(writer, sheet_name='销售记录', index=False)
# 获取当前的Workbook对象
workbook = writer.book
# 创建一个新的worksheet对象
worksheet = workbook.add_worksheet('利润汇总')
# 设置worksheet中每列的宽度
worksheet.set_column(0, 0, 12)
worksheet.set_column(1, 1, 10)
worksheet.set_column(2, 2, 10)
# 写入数据
worksheet.write(0, 0, '日期')
worksheet.write(0, 1, '销售额')
worksheet.write(0, 2, '利润')
for i in range(len(data)):
worksheet.write(i+1, 0, data[i]['日期'])
worksheet.write(i+1, 1, data[i]['销售额'])
worksheet.write(i+1, 2, data[i]['利润'] - data[i]['成本'])
# 保存Excel文件
writer.save()
运行后,会生成一个名为销售记录.xlsx的Excel文件,其中包含一个名为"销售记录"的sheet以及一个名为"利润汇总"的sheet,"销售记录"sheet中包含我们一开始创建的数据,"利润汇总"sheet中则包含了根据原始数据计算出的利润情况。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python将字典列表导出为Excel文件的方法 - Python技术站