Python openpyxl库

2023-05-16

1. 读写单元格

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')

# 获取活动的表单
sheet = wb.active

# 读取第三行第一列的值,行和列都是从1开始计数的。
value = sheet.cell(row=3, column=1).value
print(value)

# 写入第三行第七列
sheet.cell(row=3, column=7).value = 123

wb.save('tmp.xlsx')
wb.close()

注意:写完之后必须保存才能生效。

2. 创建表单

from openpyxl import Workbook

wb = Workbook()

# 创建表单
wb.create_sheet('sheet1')
wb.create_sheet('sheet2')

# 选择表单
sheet2 = wb['sheet2']
print(sheet2)

wb.save('file.xlsx')
wb.close()

3. 遍历表单

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')
sheet = wb.active

# 遍历 3~10 行,包括首尾
for row in sheet.iter_rows(min_row=3, max_row=10):
    for cell in row:
        print(cell.value, end=',')
    print()
        
    wb.close()

遍历的同时进行写入:

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')
sheet = wb.active

for row in sheet.iter_rows(min_row=3, max_row=10):
	# row 的下标从 0 开始
    print(row[0].value)
    row[1].value = 'abc'

wb.save('tmp.xlsx')
wb.close()

遍历一个区域:

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')
sheet = wb.active

# 包括首尾
for row in sheet.iter_rows(min_row=3, max_row=10, min_col=1, max_col=3):
    for cell in row:
        print(cell.value, end=',')
    print()

wb.close()

4. 合并单元格

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')
sheet = wb.active

# 合并指定的区域
sheet.merge_cells(start_row=1, end_row=2, start_column=8, end_column=10)

# 通过起始行和起始列来指定合并后的单元格
sheet.cell(row=1, column=8).value = 'Hello, World!'

wb.save('tmp.xlsx')
wb.close()

5. 拆分单元格

from openpyxl import load_workbook

wb = load_workbook('tmp.xlsx')
sheet = wb.active

sheet.unmerge_cells(start_row=1, end_row=2, start_column=8, end_column=10)

wb.save('tmp.xlsx')
wb.close()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python openpyxl库 的相关文章

随机推荐

  • error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项的原因及解决方案

    值 0 不匹配值 2 xff0c Debug使用了Release下的库文件 值 2 不匹配值 0 xff0c Release使用了Debug下的库文件 对于上述两种情况 xff0c 只需要在预处理定义中设定其值使其符合要调用的程序即可 VS
  • SNMP协议详解<二>

    上一篇文章讲解了SNMP的基本架构 xff0c 本篇文章将重点分析SNMP报文 xff0c 并对不同版本 xff08 SNMPv1 v2c v3 xff09 进行区别 xff01 四 SNMP协议数据单元 在SNMP管理中 xff0c 管理
  • SNMP协议详解<三>

    在上篇文章中 xff0c 说到了SNMPv3主要在安全性方面进行了增强 xff0c 采用USM xff08 基于用户的安全模型 xff09 和VACM xff08 基于视图的访问控制模型 xff09 技术 下面我们就主要讲解SNMPv3的报
  • SNMPv3的加密和认证过程

    前面的一些文章详细讲解了SNMPv3的报文内容 xff0c 下面主要的内容就是SNMPv3的加密和认证过程 xff01 USM的定义为实现以下功能 xff1a 鉴别 数据加密 密钥管理 时钟同步化 避免延时和重播攻击 1 UsmSecuri
  • H3C SNMPv3 配置

    1 xff09 H3C SNMPv3 配置 html view plain copy print snmp agent mib view included MIB 2 mib 2 snmp agent mib view included M
  • SNMPv3原理-SNMPv3协议框架

    1 SNMPv3的体系结构 SNMPv3定义了新的体系结构 xff0c 并在其中包含了对SNMPv1和SNMPv2c的兼容 xff0c 即这个新的体系结构也适用于SNMPv1及SNMPv2c xff0c 弥补了SNMP没有完整体系结构的缺点
  • MBR与GTP

    现有的PC机架构 xff0c 是沿用了数十年的主板BIOS 43 硬盘MBR分区的组合模式 随着不久的将来 xff08 2009年 xff1f xff09 硬盘容量突破2TB xff0c BIOS xff0b MBR组合估计会被主板EFI和
  • R6002-floating point not loaded 的问题解决方法 .

    最近项目的要计算浮点数据 xff0c 为了调试方便 xff0c 输出计算结果值到DEBUG信息 xff0c 结果却出现 R6002 错误 Google了一下 xff0c MSDN上对于R6002的描述信息是 xff1a 错误消息 未加载浮点
  • KVM修改虚拟机配置

    1 修改内存或 CPU 编辑虚拟机配置文件 xff1a root 64 controller virsh edit centos2 如 xff0c span class token tag span class token tag span
  • 调试笔记之观察中断

    调试笔记之观察中断 中断好比计算机系统的脉搏 xff0c 是系统生命力的源泉 在WinDBG做内核调试时该如何观察系统的中断分配和响应情况呢 xff1f WinDBG的帮助文件对此描述甚少 xff0c 已经有的几个重要扩展命令居然也没有出现
  • 活动目录域控制器端口

    活动目录域控制器端口 域成员与域控之间通讯需要开放什么端口 xff0c 除了LDAP389 139 445 DNS21 xff0c 还有其他吗 xff1f 回答 xff1a 根据您的描述 xff0c 我对这个问题的理解是 xff1a DC和
  • Apollo编译卡死问题

    最近在研究apollo xff0c 按照他们官方教程下载安装后 输入下面命令开启并进入docker bash docker scripts dev start sh bash docker scripts dev into sh 然后就进入
  • docker服务器的图形显示方案

    问题描述 xff1a 一般docker实操时都是作为服务器 xff0c 以字符方式交互 xff0c 非常不方便 本人尝试各种图形解决方案 xff0c 最终找到完美方案 最初本人尝试过VNC和SSH方式 xff0c 最终被否定了 1 本来do
  • Centos7下使用CMake

    在进行需要提供跨平台服务的项目时 xff0c 最好有相应的跨平台项目构建工具 本文所述的CMake即其中比较好用的跨平台构建工具之一 下文主要以C 43 43 语言为例进行使用演示 安装C 43 43 所需的环境 xff1a yum ins
  • 树莓派+神经计算棒2实时人脸检测

    树莓派配置摄像头 sudo apt get install python opencv sudo apt get install fswebcam 配置摄像头 sudo nano etc modules 查看树莓派CPU型号 cat pro
  • 学习总结-编写自己的CMakeLists.txt

    cmake minimum required span class token punctuation span VERSION span class token number 3 3 span span class token punct
  • 7.4V锂电池USB平衡充电器 串联锂电池充电器

    7 4V锂电池USB平衡充电器 串联锂电池充电器 本文介绍一种简单实用的串联锂电池充电器 大家知道 xff0c 串联电池的充电 xff0c 是一个麻烦的问题 如果直接拿7 4V来充 xff0c 可能会因为两颗电池的参数差异 xff0c 会导
  • 【Echarts】数据可视化完成大屏地图(拓展乡镇地区)的绘制

    绘制地图要素 地图边缘 地理位置 xff08 中心点或者自定义的未知 xff09 echarts绘制 实现在前 成品展示放在最后 代码太长 xff0c 参考代码可见Github Github地址 获取地图 获取精确到乡镇街道的地图JSON数
  • K8s问题【flannel一直重启问题,CrashLoopBackOff】

    kubectl describe 命令查看 Events Type Reason Age From Message Normal Scheduled 13m default scheduler Successfully assigned k
  • Python openpyxl库

    1 读写单元格 span class token keyword from span openpyxl span class token keyword import span load workbook wb span class tok