gpt4 book ai didi

python操作excel的方法

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章python操作excel的方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

摘要:

Openpyxl是一个常用的python库,用于对Excel的常用格式及其模板进行数据读写等操作.

简介与安装openpyxl库 。

Openpyxl is a Python library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files. 。

安装 。

pip install openpyxl 。

pillow:在文件中需要使用images (jpeg, png, bmp,...)时,需要安装pillow库.

注意:写操作时请关闭需要操作的excel文件,否则写不成功 。

加载xlsx操作内容 。

加载外部excel的xlsx步骤:

加载xlsx文件,获得该文件的句柄,为workbook 。

?
1
2
3
4
from openpyxl import load_workbook
wb2 = load_workbook( 'test.xlsx' )
print wb2.get_sheet_names()
# ['Sheet2', 'New Title', 'Sheet1']

在内存中新建workbook 。

创建 workbook 。

开始使用openpyxl,没有必要在文件系统上创建一个文件.

只需要导入Workbook类并开始使用它。可以把wordbook想象成一个excel文件.

?
1
2
3
4
from openpyxl import Workbook
wb = Workbook()
workbook创建后至少至少要创建一个worksheet。使用 openpyxl.workbook.Workbook.active()
ws = wb.active

该方法使用了_active_sheet_index属性, 默认会设置0 。

创建worksheet 。

使用 openpyxl.workbook.Workbook.create_sheet() 创建新的worksheet 。

?
1
2
ws1 = wb.create_sheet( "new_sheet_1" ) # 新建sheet,插入到最后(默认)
ws2 = wb.create_sheet( "new_sheet_2" , 0 ) # 插入到最开始的位置

指定worksheet的名称 。

不指定sheet名称时,按照sheet,sheet1,sheet2自动增长 。

?
1
ws3 = wb.create_sheet()

自定义worksheet名称,通过title属性指定名称,设置了sheet的名称 。

?
1
ws3.title = "new_sheet_3"

输出wb现在所有的sheetname查看 。

通过 openpyxl.workbook.Workbook.sheetnames() 输出wb现在所有的sheetname 。

?
1
2
print wb.get_sheet_names()
print (wb.sheetnames)

循环 。

?
1
2
for sheet in wb:
print (sheet.title)

指定worksheet tab按钮的颜色 。

新建的sheet tab颜色为白色,可以另外指定sheet tab按钮的颜色 。

?
1
ws3.sheet_properties.tabColor = "1072BA"

激活某个worksheet 。

通过worksheet名称激活某个sheet使用 。

名称看成workbook中的一个key 。

?
1
ws3 = wb[ "new_sheet_3" ]

通过 _active_sheet_index 激活某个sheet使用 。

?
1
wb._active_sheet_index = 1 # 获取第二个sheet

创建worksheet副本 。

使用 openpyxl.workbook.Workbook.copy_worksheet() 创建worksheet副本 。

?
1
2
source = wb.active
target = wb.copy_worksheet(source)

只能复制cell和style。不能复制工作表之间的工作簿.

操作单元格 。

当worksheet在内存中被创建时,是没有包含cells的,cells是在首次访问时创建 。

单元格可以看作是worksheet的key,通过key去访问单元格中的数据 。

?
1
2
3
4
5
6
c = ws[ 'A3' ] # 访问单元格,不存在则会自动创建一个
print c.value
ws[ 'A4' ] = 'a4 value' # 指定单元格的值
print ws[ 'A4' ].value
d = ws.cell(row = 4 , column = 2 , value = '通过cell指定' ) # 通过row column数字指定
print d.value

循环在内存中创建cells 。

不用指定其值也可以在内存中创建 。

?
1
2
3
for i in range ( 1 , 10 ):
for j in range ( 1 , 10 ):
ws.cell(row = i, column = j)

通过切片Ranges指定许多cells 。

?
1
cell_range = ws[ 'A1' : 'C2' ]

也可以Ranges rows 或者columns 。

?
1
2
3
4
print ws[ 'C' ]
print ws[ 'C:D' ]
print ws[ 10 ]
print ws[ 5 : 10 ]

也可以使用iter_rows() 指定行->行,截止列 。

?
1
2
3
4
5
6
7
for row in ws.iter_rows(min_row = 1 , max_col = 3 , max_row = 2 ):
for c in row:
print (c)
iter_cols() 指定列 - >列,截止行
for row in ws.iter_rows(min_row = 1 , max_col = 3 , max_row = 2 ):
for c in row:
print (c)

遍历所有文件的行或列 。

?
1
2
3
ws[ 'C9' ] = 'hello world'
tuple (ws.rows) # 转化成tuple方便for in操作
tuple (ws.columns)

保存文件 。

?
1
2
wb = Workbook()
wb.save( "assets/sample.xlsx" )

此操作将覆盖现有的文件没有警告.

所有的操作都需要保存到excel才能看见 。

保存为模板 。

指定属性 as_template=True ,就可以将文档保存为模板.xltx 。

?
1
2
3
wb = load_workbook( 'document.xlsx' )
wb.template = True
wb.save( 'document_template.xltx' )

或者将该属性设置为False(默认),另存为一个文档

?
1
2
3
wb = load_workbook( 'document_template.xltx' )
wb.template = False
wb.save( 'document.xlsx' , as_template = False )

使用公式 。

?
1
2
3
4
wb = load\_workbook\( 'assets/sample.xlsx' \)
ws = wb.active
ws\[ "A5" \] = "=SUM\(2, 1\)"
wb.save\( "assets/sample.xlsx" \)

总结 。

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

原文链接:http://www.cnblogs.com/for-you/p/9481869.html 。

最后此篇关于python操作excel的方法的文章就讲到这里了,如果你想了解更多关于python操作excel的方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com