关于Python操作Excel的基本方法,以下是完整的实例教程。
1. 安装必备模块
在Python中操作Excel需要使用到xlrd
、xlwt
、openpyxl
等模块,我们可通过pip来进行安装。
pip install xlrd
pip install xlwt
pip install openpyxl
2. 示例1:读取Excel文件数据
下面我们来看如何用Python读取Excel文件数据。假设我们有一个Excel文件,其中存储了商品销售数据:
商品 | 销售量 | 销售额 |
---|---|---|
A商品 | 200 | 4000 |
B商品 | 350 | 7000 |
C商品 | 600 | 12000 |
代码如下:
import xlrd
# 打开Excel文件
workbook = xlrd.open_workbook("sales.xlsx")
# 获取第一个工作表
worksheet = workbook.sheet_by_index(0)
# 获取商品列、销售量列、销售额列数据
product_col = worksheet.col_values(0, 1)
sales_col = worksheet.col_values(1, 1)
revenue_col = worksheet.col_values(2, 1)
# 输出数据
for i in range(len(product_col)):
print(f"商品:{product_col[i]},销售量:{sales_col[i]},销售额:{revenue_col[i]}")
代码解释:
- 首先我们使用
xlrd
模块中的open_workbook()
方法打开Excel文件,注意此时打开的文件必须是xls
格式的Excel文件,若打开的是xlsx
格式的Excel文件则会出现错误; - 我们再使用
sheet_by_index()
方法获取Excel文件中的第一个工作表; - 使用
col_values()
方法获取工作表中的商品列、销售量列、销售额列数据,参数1为数据所在列的索引,参数2为数据起始行的索引。需要注意的是,Excel文件中的索引都是从0开始,因此此处获取数据的时候起始行索引我们写成了1,意为从第2行开始获取数据; - 最后我们遍历所有数据,并输出商品、销售量、销售额三列数据。
3. 示例2:向Excel文件中写入数据
下面我们来看如何用Python向Excel文件中写入数据。假设我们要向上述的Excel文件中添加一列“利润”。
代码如下:
from openpyxl import Workbook, load_workbook
# 打开Excel文件
workbook = load_workbook("sales.xlsx")
# 获取第一个工作表
worksheet = workbook.active
# 添加列标题
worksheet.cell(1, 4, "利润")
# 添加列数据
for i in range(2, 5):
sales = worksheet.cell(i, 2).value
revenue = worksheet.cell(i, 3).value
profit = revenue * 0.3 - sales * 2
worksheet.cell(i, 4, profit)
# 保存Excel文件
workbook.save("sales_profit.xlsx")
代码解释:
- 首先我们使用
openpyxl
模块中的load_workbook()
方法打开Excel文件,此方法可以打开xlsx
格式的Excel文件; - 获取第一个工作表,此处我们使用
active
属性获取; - 使用
cell()
方法定位到某个单元格,并向该单元格写入数据,第一个参数为单元格所在行的索引,第二个参数为单元格所在列的索引,第三个参数为要写入的数据; - 添加利润数据时,我们循环遍历销售量和销售额两列的数据,根据公式计算出每个商品的利润值,并使用
cell()
方法向新添加的“利润”列写入和更新数据; - 最后使用
save()
方法保存更新后的Excel文件。
以上就是Python操作Excel的基本方法,通过示例1我们学习了如何读取Excel文件中的数据,通过示例2我们学习了如何向Excel文件中添加一列数据。