xlsx文件用什么打开(5 分钟掌握 openpyxl 操作:Python 轻松处理 Excel)

资料来源:Python中文社区

所有类型的数据都需要导入擅长?要合并多个Excel?目前,Python有很多用于处理Excel文件的库,openpyxl就是其中一个功能和性能更好的库。接下来,我将向大家介绍各种excel操作。

打开excel文件

创建一个新的EXCEL文件

>;>;>;来自openpyxlNicholasTse工作簿
>;>;>;wb=工作手册

打开现有的excel文件

>;>;>;来自openpyxlNicholasTseload_工作手册
>;>;>;wb2=加载工作簿('test.xlsx')

打开大文件时,根据需要使用只读或只读模式以减少内存消耗。

wb=load_u工作簿(filename='large_file.xlsx',read_only=True)

wb=工作簿(只写=真)

获取并创建工作表

获取当前活动的工作表:

>;>;>;ws=wb。忙碌的

创建新工作表:

>;>;>;ws1=wb。创建uSheet(“Mysheet”)#在末尾插入(默认)
#或
>;>;>;ws2=wb。创建uSheet(“Mysheet”,0)#在第一个位置插入
#或
>;>;>;ws3=wb。创建uSheet(“Mysheet”,-1)#在倒数第二位插入

使用图纸名称获取图纸:

>;>;>;ws3=wb[“新标题”]

获取所有工作表名称:

xls文件怎么打开

>;>;>;打印(wb.图纸名称)
['Sheet2'、'NewTitle'、'Sheet1']
使用for循环遍历所有工作表:

>;>;>;对于wb中的工作表:
...打印(表格标题)

保护

保存到网络中的流使用:

>;>;>;来自临时文件NicholasTsenamedtemporaryfile
>;>;>;来自openpyxlNicholasTse工作簿
>;>;>;wb=工作簿
>;>;>;将NamedTemporaryFile作为tmp:
wb。保存(tmp.name)
tmp。寻找(0)
stream=tmp。阅读
保存到文件:

>;>;>;wb=工作簿
>;>;>;wb。保存('balances.xlsx')
将模板另存为:

>;>;>;wb=加载工作簿('document.xlsx')
>;>;>;wb。模板=真
>;>;>;wb。保存('document_template.xltx')

单间牢房

单元格位置直接作为工作表的键读取:

>;>;>;c=ws['A4']

为单元格赋值:

>;>;>;ws['A4']=4
>;>;>;c、value='你好,世界'

多个单元格可以使用磁贴访问一系列单元格:

>;>;>;单元格范围=ws['A1':'C2']

使用数字格式:

>;>;>;#使用Pythondatetime设置日期
>;>;>;ws['A1']=datetime。日期时间(2010年7月21日)
>;>;>;
>;>;>;ws['A1']。数字格式
'yyyymmddh:mm:ss'

使用公式:

>;>;>;#添加一个简单的公式
>;>;>;ws[“A1”]=“总和(1,1)”

合并单元格时,除左上角单元格外的所有单元格都将从工作表中删除:

>;>;>;ws。合并单元格('A2:D2')
>;>;>;ws。未合并单元格('A2:D2')
>;>;>;
>;>;>;#或者相当于
>;>;>;ws。合并单元格(开始行=2,开始列=1,结束行=4,结束列=4)
>;>;>;ws。取消合并单元格(开始行=2,开始列=1,结束行=4,结束列=4)

行和列

可以分别指定行、列或行和列的范围:

>;>;>;colC=ws['C']
>;>;>;col_uurange=ws['C:D']
>;>;>;row10=ws[10]
>;>;>;行范围=ws[5:10]

接触Worksheet。国际热核实验堆rows方法遍历行:

>;>;>;对于ws中的行。iter_uurows(最小行=1,最大列=3,最大行=2):
...对于行中的单元格:
...打印(单元格)
&书信电报;牢房床单1。A1>;
&书信电报;牢房床单1。B1>;
&书信电报;牢房床单1。C1>;
&书信电报;牢房床单1。A2>;
&书信电报;牢房床单1。B2>;
&书信电报;牢房床单1。C2>;

同样地Worksheet。国际热核实验堆cols方法将遍历列:

>;>;>;对于ws中的col。itercols(最小行=1,最大列=3,最大行=2):
...对于col中的单元格:
...打印(单元格)
&书信电报;牢房床单1。A1>;
&书信电报;牢房床单1。A2>;
&书信电报;牢房床单1。B1>;
&书信电报;牢房床单1。B2>;
&书信电报;牢房床单1。C1>;
&书信电报;牢房床单1。C2>;

遍历文件的所有行或列,可以使用Worksheet。rows属性:

>;>;>;ws=wb。忙碌的
>;>;>;ws['C9']='helloworld'
>;>;>;元组(远景:rows)
((<;单元格表A1>;,<;单元格表B1>;,<;单元格表C1>;),
(<;单元格表A2>;、<;单元格表B2>;、<;单元格表C2>;),
(<;单元格表A3>;,<;单元格表B3>;,<;单元格表C3>;),
(<;单元格表A4>;,<;单元格表B4>;,<;单元格表C4>;),
(<;单元格表A5>;、<;单元格表B5>;、<;单元格表C5>;),
(<;单元格表A6>;、<;单元格表B6>;、<;单元格表C6>;),
(<;CellSheet.A7>;、<;CellSheet.B7>;、<;CellSheet.C7>;),
(<;CellSheet.A8>;,<;CellSheet.B8>;,<;CellSheet.C8>;),
(<;CellSheet.A9>;、<;CellSheet.B9>;、<;CellSheet.C9>;)

Worksheet。柱属性:

>;>;>;元组(ws.columns)
((<;单元格表A1>;);,
&书信电报;牢房床单。A2>;,
&书信电报;牢房床单。A3>;,
&书信电报;牢房床单。A4>;,
&书信电报;牢房床单。A5>;,
&书信电报;牢房床单。A6>;,
...
&书信电报;牢房床单。B7>;,
&书信电报;牢房床单。B8>;,
&书信电报;牢房床单。B9>;),
(<;单元格表C1>;);,
&书信电报;牢房床单。C2>;,
&书信电报;牢房床单。C3>;,
&书信电报;牢房床单。C4>;,
&书信电报;牢房床单。C5>;,
&书信电报;牢房床单。C6>;,
&书信电报;牢房床单。C7>;,
&书信电报;牢房床单。C8>;,
&书信电报;牢房床单。C9>;))

使用Worksheet。append或反复使用Worksheet。单间牢房添加一行新数据:

>;>;>;对于范围(1,40)内的行:
...ws1。append(射程(600))

>;>;>;对于范围(10,20)内的行:
...对于范围(27,54)中的列:
..._=ws3。单元格(column=col,row=row,value=“{0}”。格式(get_column_letter(col)))

插入操作很麻烦。接触Worksheet。插入uurows插入一行或多行:

>;>;>;来自openpyxl。import收到了一封信
>;>;>;ws。插入rows(7)
>;>;>;row7=ws[7]
>;>;>;对于范围内的col(27,54):
..._=ws3。单元格(column=col,row=7,value=“{0}”。格式(get_column_letter(col)))

Worksheet。插入cols操作与此类似。Worksheet。删除uurowsWorksheet。删除uucols用于批量删除行和列。

只读值

使用Worksheet。价值观属性遍历工作表中的所有行,但只返回单元格值:

对于ws中的行。价值观:
对于行中的值:
打印(值)

Worksheet。国际热核实验堆rowsWorksheet。国际热核实验堆cols可以设定仅限价值观参数仅返回单元格的值:

>;>;>;对于ws中的行。iter_urows(最小行=1,最大列=3,最大行=2,仅值=true):
...打印(行)
(没有,没有,没有)
(没有,没有,没有)

作者:辛查德,主要研究python图书馆文档翻译,开发代码片段,源代码分析

博客:志虎。com/people/aiApple

微软年初,我们推出了自己的Python教程。我们将用中文提供给您。欢迎您收集并关注。(20集中文版已经完成,1集每日更新,我们会尽快更新未完成部分)

您可以还会对下面的文章感兴趣

最新评论

  1. 春日无尾熊
    春日无尾熊
    发布于:2022-04-27 03:33:43 回复TA
    格式(get_column_letter(col)))插入操作很麻烦。接触Worksheet。插入uurows插入一行或多行:>;>;>;来自openpyxl
  1. 少小离家老大回
    少小离家老大回
    发布于:2022-04-27 09:36:07 回复TA
    t;>;对于wb中的工作表:...打印(表格标题)保护保存到网络中的流使用:>;>;>;来自临时文件NicholasTsenamedtemporaryfile>;>;>;来自openpyxlNichol
  1. 撩妹奶狗
    撩妹奶狗
    发布于:2022-04-27 04:38:05 回复TA
    >;>;wb=工作手册打开现有的excel文件>;>;>;来自openpyxlNicholasTseload_工作手册>;>;>;wb2=加载
  1. 秦蓓山颖
    秦蓓山颖
    发布于:2022-04-27 02:03:50 回复TA
    生活,就是生下来,活下去。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

使用微信扫描二维码后

点击右上角发送给好友