python针对excel的操作技巧

yipeiwu_com6年前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实现手机短信监控通知的方法

日常运维工作中,通常是邮件报警机制,但邮件可能不被及时查看,导致问题出现得不到及时有效处理。所以想到用Python实现发短信功能,当监控到问题出现时,短信报警,使问题能得到及时的处理。当...

用Python+OpenCV对比图像质量的几种方法

用Python+OpenCV对比图像质量的几种方法

前言 图片的本质就是大量像素在二维平面上的组合,每个像素点用数字化方式记录颜色。可以直观的想象,一张图片就是一个巨大的电子栅格,每个格子内有一盏灯泡,这个灯泡可以变换256的三次方种颜色...

python素数筛选法浅析

python素数筛选法浅析

原理:   素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超...

使用python实现tcp自动重连

操作系统: CentOS 6.9_x64 python语言版本: 2.7.13 问题描述 现有一个tcp客户端程序,需定期从服务器取数据,但由于种种原因(网络不稳定等)需要自动重连。 测...

对python多线程中Lock()与RLock()锁详解

资源总是有限的,程序运行如果对同一个对象进行操作,则有可能造成资源的争用,甚至导致死锁 也可能导致读写混乱 锁提供如下方法: 1.Lock.acquire([blocking]) 2.L...