python针对excel的操作技巧

yipeiwu_com5年前Python基础

一. openpyxl读

95%的时间使用的是这个模块,目前excel处理的模块,只有这个还在维护

1、workBook

workBook=openpyxl.load_workbook('path(.xlsx)').encode('gbk')
print workBook

2、sheet

sheetList=workBook.get_sheet_names() 获取所有sheet的名称,保存为列表格式
print sheetList

3、cell

(1)sheet1=workBook.get_sheet_by_name('test1') 获取某一个具体的sheet

(2)rowsData=sheet1.rows 获取所有的行,返回一个迭代器

行和列都是从1开始的,不是从0

for i in rowsData:
#print i
#print type(i) 元组格式
for j in i:
print j.coordinate(每一个cell的下表),j.value(cell的值), 打印出所有cell的内容
print

(3)colsData=sheet1.columns 获取所有的列,并返回迭代器

(4)更新某个单元格

j.value=u'重新赋值'
workBook.save(path(之前操作的路径))

 4、单元格的定位

两种方式:

(1)c1=sheet1.cell(coordinate='B2')

print c1.value

(2)c2=sheet1['B2'] 字典格式:通过key值找value

print c2.value

(3)c1=sheet1.cell(row=2,column=3) 第二行第三列

print c1.value

(4)切片,获取一个区域的单元格

area=sheet1['C2':'D7'] 得到一个元组
print area 元组里面嵌套元组
for i in area:
# print i
for j in i:
pass
# print j
print j.coordinate,
j.value = j.coordinate
print

二、写单元格

1、写workBook

workBook=openpyxl.Workbook()

2、sheet

sheet1=workBook.create_sheet(title='sheet1',index=0)
index=0 定位第几个sheet

3、cell

sheet1['B6'].value=u'testB6'
workBook.save(path)

4、在下一空行整行写入

sheet1.append([1,2,3,4,5,6,7])

三、excel相关的样式操作

import openpyxl
from openpyxl.styles import PatternFill,Alignment,Font,colors
workBook=openpyxl.Workbook()
sheet1=workBook.create_sheet('test')

1、合并单元格,两种方式

sheet1.merge_cells(range_string='A2:G2')
sheet1.merge_cells(start_row=2,start_column='A',end_row=2,end_column='G')

2、设置排版样式:对齐方式

al=Alignment(horizontal='center') horizontal:left,center,right
sheet1['A2'].alignment=al 

3、设置背景颜色

fill=PatternFill(patternType='solid',fgColor=colors.BLUE)
sheet1['A2'].fill=fill 

4、字体的颜色

sheet1[A2].value
font=Font(colors=colors.WHITE,size=14)
sheet1['A2'].font=font

总结

以上所述是小编给大家介绍的python针对excel的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

基于Python检测动态物体颜色过程解析

基于Python检测动态物体颜色过程解析

本篇文章将通过图片对比的方法检查视频中的动态物体,并将其中会动的物体定位用cv2矩形框圈出来。本次项目可用于树莓派或者单片机追踪做一些思路参考。寻找动态物体也可以用来监控是否有人进入房间...

Python基于多线程实现ping扫描功能示例

本文实例讲述了Python基于多线程实现ping扫描功能。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python2 import subp...

python Socket之客户端和服务端握手详解

python Socket之客户端和服务端握手详解

简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据 1. 客户端socketClient.py代码 import socket s = socket.soc...

Python松散正则表达式用法分析

本文实例讲述了Python松散正则表达式用法。分享给大家供大家参考,具体如下: Python 允许用户利用所谓的 松散正则表达式来完成这个任务。一个松散正则表达式和一个紧凑正则表达式主要...

pytorch GAN伪造手写体mnist数据集方式

pytorch GAN伪造手写体mnist数据集方式

一,mnist数据集 形如上图的数字手写体就是mnist数据集。 二,GAN原理(生成对抗网络) GAN网络一共由两部分组成:一个是伪造器(Generator,简称G),一个是判别器(...