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)
Python 利用Python操作excel表格之openyxl介绍Part1的更多相关文章
- Python 利用Python操作excel表格之openyxl介绍Part2
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart() ...
- Python 利用Python操作excel表格之xlwt介绍
利用Python操作excel表格之xlwt介绍 by:授客 QQ:1033553122 直接上代码 案例1 #!/usr/bin/env python # -*- coding:utf-8 ...
- Python利用xlutils统计excel表格数据
假设有像上这样一个表格,里面装满了各式各样的数据,现在要利用模板对它进行统计每个销售商的一些数据的总和.模板如下: 代码开始: 1 #!usr/bin/python3 2 # -*-coding=ut ...
- C++中利用libxl操作Excel表格
libxl是一款操作excel的商业库,支持C.C++.C#和Delphi.下文利用libxl在C++中实现了从excel文档的表1中随机挑选记录,保存到新建的表中.以下为代码: #include & ...
- Python使用openpyxl操作excel表格
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 ht ...
- 用NPOI、C#操作Excel表格生成班级成绩单
在C#中利用NPOI操作Excel表格非常方便,几乎上支持所有的Excel表格本身所有的功能,如字体设置.颜色设置.单元格合并.数值计算.页眉页脚等等. 这里准备使用NPOI生成一个班级成绩单Exce ...
- 【转】python操作excel表格(xlrd/xlwt)
[转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...
- 转载:python操作excel表格(xlrd/xlwt)
python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而 ...
- python - 操作excel表格
说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...
随机推荐
- 基于.NET框架的消息通信组件ZMQ资料汇编-总目录
ZMQ是一个比较轻量级的消息通信组件,引用官方的说法: “ZMQ (以下 ZeroMQ 简称 ZMQ)是一个简单好用的传输层,像框架一样的一个 socket library,他使得 Socket 编程 ...
- python数据抓取分析(python + mongodb)
分享点干货!!! Python数据抓取分析 编程模块:requests,lxml,pymongo,time,BeautifulSoup 首先获取所有产品的分类网址: def step(): try: ...
- python基础-字符串(6)
一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...
- nginx、swoole高并发原理初探
阅前热身 为了更加形象的说明同步异步.阻塞非阻塞,我们以小明去买奶茶为例. 同步与异步 同步与异步的重点在消息通知的方式上,也就是调用结果通知的方式. 同步:当一个同步调用发出去后,调用者要一直等待调 ...
- 原生端与服务器通过sessionid实现session共享以及登录验证
注:原生端与服务器建立连接时产生的sessionid会变,跟上一次的不一样,为了保证sessionid一样,所以第一次服务器需要把sessionid返回给原生端,下一次与服务端会话时,原生端需要把这个 ...
- iOS逆向开发(3):锁定APP的目标类与函数 | reveal | lldb | debugserver | 远程调试
之前介绍了怎么获取APP的所有类的结构信息,这个有什么用呢?用处大了,比如以这一步为基础,下一步通过注入来做更多研究工作. 注入的最小单位是函数,实际上,编译执行的程序在编译后,类就不复存在了,留下来 ...
- Linux软件包管理之RPM命令
目录 1.Linux软件包分类 一.源码包 二.二进制包 2.rpm 包命名规则 3.rpm包安装 4.rpm包升级 5.rpm包卸载 6.查询rpm包是否安装 7.查询软件包的详细信息 8.查询软件 ...
- [Linux] deepin安装node
安装git sudo apt-get install git git安装 安装node和npm 先下载node node下载 下载完之后将node解压的desktop,然后将文件夹更改为node 之后 ...
- 《C#并发编程经典实例》学习笔记-关于并发编程的几个误解
误解一:并发就是多线程 实际上多线程只是并发编程的一种形式,在C#中还有很多更实用.更方便的并发编程技术,包括异步编程.并行编程.TPL 数据流.响应式编程等. 误解二:只有大型服务器程序才需要考虑并 ...
- C#线程同步--限量使用
问题抽象:当某一资源同一时刻允许一定数量的线程使用的时候,需要有个机制来阻塞多余的线程,直到资源再次变得可用.线程同步方案:Semaphore.SemaphoreSlim.CountdownEvent ...