Python 利用Python操作excel表格之openyxl介绍Part1
利用Python操作excel表格之openyxl介绍
by:授客 QQ:1033553122
欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版)
实验环境
python 3.4.0
penpyxl-2.5.3-py3.4
网盘下载地址:
下载地址:https://pan.baidu.com/s/1RC6O7tKavz8ffPgPOJ4jdg
下载地址:https://bitbucket.org/openpyxl/openpyxl/downloads/
测试代码
from
openpyxl
import
load_workbook
from
openpyxl.chart
import
LineChart, AreaChart
from
openpyxl.chart
import
Reference, Series
from
openpyxl
import
Workbook
##
加载已存在工作簿
work_book
= load_workbook('mydata.xlsx')
##
获取工作簿拥有的所有Sheet名称
sheet_names
= work_book.sheetnames
print('工作簿拥有的所有Sheet名称:%s'
% sheet_names)
print('工作簿拥有的所有Sheet名称:')
for
sheet
in
work_book:
print('%s
'
% sheet.title,
end='
')
##
根据名称获取的Sheet工作表
sheet
= work_book['CPUALL']
##
获取Sheet工作表的名称
sheet_name
= sheet.title
print('\n工作表名称:%s\n'
% sheet_name)
##
获取指定工作表的行数
min_row
= sheet.min_row
print('CPUALL工作表的最小行数:',
min_row)
#
注意:row, column最小值是从1开始的
max_row
= sheet.max_row
print('CPUALL工作表的最大行数:%s\n'
% max_row)
##
获取指定工作表的列数
min_column
= sheet.min_column
print('CPUALL工作表的最小列数:',
min_column)
max_column
= sheet.max_column
print('CPUALL工作表的最大列数:%s\n'
% max_column)
##
获取单元格
A2_cell
= sheet.cell(row=2,
column=1)
#A2_cell
= sheet['A2']
##
获取单元格的值
value_for_A2_cell
= A2_cell.value
print('A2单元格的值:%s\n'
% value_for_A2_cell)
#
修改单元格的值
B2_cell
= sheet['B2']
B2_cell.value
=
30
print('B2单元格的值:%s\n'
% B2_cell.value)
print('B3单元格的值:%s\n'
% sheet.cell(row=3,
column=2,
value=40))
##
获取单元格区域、行、列区域
print('获取单元格区域A2:D7\n')
for
row
in
sheet['A2':
'D7']:
count
=
0
for
cell
in
row:
count
= count +
1
print(cell.value,
end='\t')
if
count ==
len(row):
print()
#
获取指定列
colC
= sheet['C']
#
获取第C列
col_range
= sheet['C:D']
#
获取C到D列
#
获取指定行
row3
= sheet[3]
#
获取第3行
row_range
= sheet[2:4]
#
获取第2到第4行
##
遍历行
print('\n遍历行')
#
方法1
for
row
in
sheet.rows:
count
=
0
for
cell
in
row:
count
= count +
1
print(cell.value,
end='\t')
if
count ==
len(row):
print()
#
方法2
for
row
in
sheet.iter_rows(min_row=1,
max_col=3,
max_row=2):
for
cell
in
row:
print(row)
##
遍历列
print('\n遍历列')
#
方法1:
for
column
in
sheet.columns:
count
=
0
for
cell
in
column:
count
= count +
1
print(cell.value,
end='\t')
if
count ==
len(column):
print()
#
方法2:
for
col
in
sheet.iter_cols(min_row=1,
max_col=3,
max_row=2):
for
cell
in
col:
print(cell)
作者:授客
微信/QQ:1033553122
全国软件测试QQ交流群:7156436
Git地址:https://gitee.com/ishouke
友情提示:限于时间仓促,文中可能存在错误,欢迎指正、评论!
作者五行缺钱,如果觉得文章对您有帮助,请扫描下边的二维码打赏作者,金额随意,您的支持将是我继续创作的源动力,打赏后如有任何疑问,请联系我!!!
微信打赏
支付宝打赏 全国软件测试交流QQ群
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库