教你用python将数据写入Excel文件中

yizhihongxing

下面为你详细讲解“教你用python将数据写入Excel文件中”的完整实例教程。

1. 准备工作

首先,我们需要安装两个库来实现将数据写入Excel的功能,分别是pandasopenpyxl。我们可以通过在命令行中执行以下两个命令来进行安装:

pip install pandas
pip install openpyxl

2. 创建Excel文件

接下来,我们需要创建一个Excel文件,并且添加一个工作表。可以通过以下代码来实现:

import pandas as pd

# 创建一个新的Excel文件
writer = pd.ExcelWriter('example.xlsx', engine='openpyxl')

# 加载已存在的Excel文件并创建一个可写的副本
# writer = pd.ExcelWriter('existing_file.xlsx', engine='openpyxl')

# 添加一个名为Sheet1的工作表
writer.book.create_sheet('Sheet1', 0)

# 关闭Excel文件
writer.save()

在上述代码中,我们首先导入了pandas库,并通过ExcelWriter方法创建了一个名为example.xlsx的新Excel文件。如果你已经有一个现有的Excel文件想写入数据,可以采用注释内容的代码部分。

然后,我们通过create_sheet方法添加了一个名为Sheet1的工作表,并通过writer.save()方法保存了Excel文件。

3. 将数据写入Excel文件

有了Excel文件和工作表之后,我们就可以开始将数据写入文件了。下面是一个常用的将Pandas DataFrame写入Excel的方法:

import pandas as pd

# 读取数据
data = pd.read_csv('data.csv')

# 创建一个新的Excel文件
writer = pd.ExcelWriter('example.xlsx', engine='openpyxl')

# 在指定工作表中写入数据
data.to_excel(writer, sheet_name='Sheet1', index=False)

# 关闭Excel文件
writer.save()

在上述代码中,我们首先使用pandas库的read_csv方法读入了一个名为data.csv的数据文件。

然后,我们通过ExcelWriter方法创建了一个名为example.xlsx的新Excel文件,并通过to_excel方法将读入的数据写入了名为Sheet1的工作表中。其中,index=False表示在写入文件时不包含DataFrame的索引。最后,我们通过writer.save()方法保存了Excel文件。

示例1

为了更好地理解代码,这里还有一个示例。如下代码表示将一个Python列表的数据写入到Excel中:

import pandas as pd

# 要写入Excel的数据
data = [
    ['Tim', 18, 'Male'],
    ['Tom', 22, 'Male'],
    ['Lucy', 19, 'Female'],
    ['Lily', 20, 'Female']
]

# 创建一个Pandas DataFrame
df = pd.DataFrame(data, columns=['Name', 'Age', 'Gender'])

# 创建一个新的Excel文件
writer = pd.ExcelWriter('example.xlsx', engine='openpyxl')

# 在指定工作表中写入数据
df.to_excel(writer, sheet_name='Sheet1', index=False)

# 关闭Excel文件
writer.save()

在上述示例中,我们定义了一个名为data的Python列表,表示要写入Excel中的数据。通过pandas库的DataFrame方法将数据转化为Pandas DataFrame对象,然后使用to_excel方法将数据写入到Sheet1工作表中。

示例2

下面给出一个使用pandas和openpyxl实现多次写入功能的示例。

import pandas as pd
from openpyxl import Workbook
import os

# 定义写入excel的日期格式
date_format = 'YYYY-MM-DD'

# 创建可写入多个工作表的空的Excel文件
wb = Workbook()

# 通过openpyxl的worksheets方法创建工作表
ws1 = wb.worksheets[0]
ws2 = wb.create_sheet('Sheet2')
ws3 = wb.create_sheet('Sheet3')

# 把数据写入第一个工作表ws1
df1 = pd.DataFrame({"name": ['Alice', 'Bob', 'Charlie'], "age": [25, 30, 35]})
ws1['A1'].value = 'Name'
ws1['B1'].value = 'Age'
for index, row in df1.iterrows():
    ws1.cell(row=index + 2, column=1).value = row['name']
    ws1.cell(row=index + 2, column=2).value = row['age']

# 把数据写入第二个工作表ws2
df2 = pd.DataFrame({"date": ['2022-01-01', '2022-02-01', '2022-03-01'], "value": [100, 200, 300]})
ws2['A1'].value = 'Date'
ws2['B1'].value = 'Value'
for index, row in df2.iterrows():
    ws2.cell(row=index + 2, column=1).value = row['date']
    ws2.cell(row=index + 2, column=2).value = row['value']
    ws2.cell(row=index + 2, column=1).number_format = date_format

# 把数据写入第三个工作表ws3
df3 = pd.DataFrame({"id": [1, 2, 3, 4], "name": ['Alice', 'Bob', 'Charlie', 'David'], "gender": ['F', 'M', 'M', 'M']})
ws3['A1'].value = 'ID'
ws3['B1'].value = 'Name'
ws3['C1'].value = 'Gender'
for index, row in df3.iterrows():
    ws3.cell(row=index + 2, column=1).value = row['id']
    ws3.cell(row=index + 2, column=2).value = row['name']
    ws3.cell(row=index + 2, column=3).value = row['gender']

# 保存Excel文件
wb.save(os.path.join(os.getcwd(), 'example.xlsx'))

在上述示例中,我们首先通过openpyxlWorkbook方法创建了一个可写入多个工作表的Excel文件,并通过create_sheet方法创建了三个工作表。使用pandas库的DataFrame方法,我们分别定义了三个DataFrame对象df1df2df3, 然后通过循环遍历DataFrame,并分别将数据写入到三个工作表中。注意到我们还添加了日期格式的设置。

最后,我们通过save方法将数据保存到名为example.xlsx的excel文件中。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:教你用python将数据写入Excel文件中 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python中aiohttp的简单使用

    在Python中,aiohttp是一个异步HTTP客户端/服务器框架,可以用于编写高性能的异步Web应用程序。本文将详细讲解Python中aiohttp的简单使用,包括如何使用aiohttp发送HTTP请求、如何使用aiohttp处理HTTP响应、以及两个示例。 安装aiohttp 在使用aiohttp之前,我们需要先安装aiohttp库。我们可以使用pip…

    python 2023年5月15日
    00
  • Python使用CMD模块更优雅的运行脚本

    Python自带了CMD模块,这个模块可以使Python程序更加优雅地运行脚本。下面是如何使用CMD模块运行Python脚本的详细攻略。 安装CMD模块 CMD模块在Python官方文档中的称呼是cmd — Support for line-oriented command interpreters。这个模块已经默认安装在标准Python环境中,你无需再次安…

    python 2023年5月20日
    00
  • Python基础中所出现的异常报错总结

    当我们在Python编程中,经常会遇到各种异常报错。以下是一些常见的Python异常报错及其解决方案: 1. SyntaxError Syntax通常是由于代码中语法错误引起的。解决方案是检查代码中的语法错误,并进行修正。 示例1:缺少冒号 # 错误示例 if x == 1 print("x is 1") # 正确示例 if x == 1…

    python 2023年5月13日
    00
  • Excel 对过滤的单元格/列表进行平均化

    在 Excel 中,我们可以使用 AVERAGE 函数和筛选功能来对过滤的单元格或列表进行平均。以下是如何在 Excel 中实现此功能的完整攻略: 在 Excel 中,选择您要计算平均值的数据范围。 使用筛选功能筛选出您要计算平均值的数据。 在公式栏中输入公式:=AVERAGE(range),其中 range 是您筛选后的数据范围。 按下 Enter 键,E…

    云计算 2023年5月10日
    00
  • python 包实现 urllib 网络请求操作

    Python包中的urllib模块提供了一组用于处理URL的标准Python库。它包含了用于发送HTTP请求、处理cookie、处理URL编码等功能。本文将介绍如何使用Python包实现urllib网络请求操作,并提供两个示例。 1. 使用urllib.request发送GET请求 我们可以使用urllib.request发送GET请求。以下是一个示例,演示…

    python 2023年5月15日
    00
  • 用python如何绘制表格不同颜色的excel

    下面是使用Python绘制表格不同颜色的Excel的完整实例教程。 前置条件 在开始之前,需要有以下内容: Python 3.x 环境 pandas 库 openpyxl 库 如果没有安装任何一个库,可以使用 pip 安装,例如运行以下命令: pip install pandas openpyxl 示例1 假设有以下数据: data = { ‘Name’: …

    python 2023年5月13日
    00
  • 一文教会你用Python读取PDF文件

    当需要读取PDF文件时,Python通过第三方库PyPDF2可以帮助我们完成此任务。本文将为您详细介绍如何使用PyPDF2模块,一步一步来教你如何在Python中读取PDF文件。 安装PyPDF2的方法 首先,在Python中使用pip安装PyPDF2模块。请在CMD终端中输入以下命令: pip install PyPDF2 打开PDF文件 在阅读PDF文件…

    python 2023年6月5日
    00
  • django-rest-swagger的优化使用方法

    下面我将为您详细讲解“django-rest-swagger的优化使用方法”的完整攻略: 1. 什么是django-rest-swagger? django-rest-swagger 是rest_framework 的一个扩展,它可以自动生成 API 的文档页面,让前端和其他开发者更方便的查看和测试 API 接口。 2. 使用django-rest-swag…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部