python处理excel之openpyxl模块的使用
python处理excel之openpyxl模块的使用
from openpyxl import Workbook
from openpyxl import load_workbook################################################## 工作表、工作簿操作 ##################################################
# wb = load_workbook('D:\work\CBS-SW V500R021C00SPC009_FranceBYG_patch001_任务书_Oraclecutgaussdb.xlsx') # 打开已有工作簿
wb = Workbook() # 新建工作簿
ws_active = wb.active # 获取活动工作表
ws_active.title = 'mySheet1' # 重命名活动工作表
ws = wb['mySheet1'] # 获取特定工作表
print(wb.active.title) # 查看当前活动工作表名wb.create_sheet('mySheet2') # 创建新的工作表(默认添加至最后)
wb.create_sheet('mySheetTest', 1) # 创建新的工作表(添加至指定位置)
# wb.active = wb['mySheet2'] # 修改当前活动工作表
print(wb.active.title)
print(wb.sheetnames) # 所有sheet名列表
print(wb.worksheets) # 所有sheet对象列表
print(wb.read_only) # 是否只读wb.save('D:\codehub_note\\test.xlsx') # 覆盖同名文件保存print(wb.encoding) # 工作簿编码
print(wb.properties) # 工作簿属性################################################## 单元格操作 ##################################################
cell = ws['B1'] # 获取单元格
ws['B1'] = 'aaa' # 单元格赋值print(cell.row) # 获取单元格行值 1
print(cell.column) # 获取单元格列值 2
print(cell.col_idx) # 获取单元格列值 2
print(cell.coordinate) # 获取单元格列值 B1print(cell.data_type) # 单元格类型 s--string n--number d--date
print(cell.encoding) # 单元格编码print(cell.has_style) # 是否有样式 style为normal,返回False
print(cell.style) # 样式
print(cell.style_id) # 样式id,normal为0print(cell.value) # 获取单元格值
cell.value = "bbb" # 修改单元格值
print(cell.value) # 获取单元格值################################################## 通过行列操作单元格 ##################################################
values = ws.values # 获取工作表所有数据
print(list(values)) # 一行对应一个值,每行为一个元组 [(None, 'bbb', None), (1, 2, 3)]for i in ws.iter_rows(min_col=3, max_col=5, min_row=1, max_row=4): # 在参数矩阵中,每行一个cell对象元组, 返回若干元组的列表# print(i)i[1].value = 100 # 每行第2列(实际是第4列,因为列是从3开始的)复制为100for i in ws.iter_cols(min_col=3, max_col=5, min_row=2, max_row=3): # 在参数矩阵中,每列一个cell对象元组, 返回若干元组的列表# print(i)i[1].value = 100 # 每列第2行(实际是第3行,因为行是从2开始的)赋值为100for i in list(ws.columns): # 在参数矩阵中,每列一个cell对象元组, 返回若干元组的列表 只返回有值的矩阵中的所有数据,包含空值for j in i:if j.value != None:print(j.coordinate, j.value)for i in list(ws.rows): # 在参数矩阵中,每行一个cell对象元组, 返回若干元组的列表 只返回有值的矩阵中的所有数据,包含空值for j in i:if j.value != None:print(j.coordinate, j.value)################################################## 行列操作 ##################################################
ws.append([1, 2, 3]) # 在工作表最后一行之后的空白行插入数据,从空白行第一列开始往右,列表内一个值对应一个单元格ws.delete_cols(1) # 删除第一列,从1开始
ws.delete_rows(1) # 删除第一行,从1开始wb.save('D:\codehub_note\\test.xlsx') # 覆盖同名文件保存# 参考https://www.cnblogs.com/hls-code/p/15674197.html
json转excel示例
import json
from openpyxl import WorkbookjsonStr = """
{"familyName": "thinker family","homeTown": "广东省","formed": 2016,"secretBase": "Super city","active": true,"familyMembers": [{"name": "Jobs","age": 35,"secretIdentity": "1992238132345","powers": ["Radiation resistance","Turning tiny","Radiation blast"]},{"name": "James","age": 37,"secretIdentity": "8839394098124","powers": ["Million tonne punch","Damage resistance","Superhuman reflexes"]}]
}"""loads = json.loads(jsonStr)
print(loads["familyMembers"])wb = Workbook()
ws = wb.activews.append(list(loads["familyMembers"][0].keys()))
ws.merge_cells(start_column=4, end_column=6, start_row=1, end_row=1) # 合并单元格for i in loads["familyMembers"]:ws.append([i["name"], i["age"], i["secretIdentity"], i["powers"][0], i["powers"][1], i["powers"][2]])wb.save('D:\codehub_note\\test.xlsx')
python处理excel之openpyxl模块的使用相关推荐
- python 操作excel神器_【转】多图+代码 | 详解Python操作Excel神器openpyxl的各种操作!...
转自:https://blog.csdn.net/weixin_41846769/article/details/108273349 前言 大家好,在之前的十几篇办公自动化系列文章中,我们大多是以真实 ...
- python每行输出8个式子_多图+代码 | 详解Python操作Excel神器openpyxl的各种操作!
前言 大家好,在之前的十几篇办公自动化系列文章中,我们大多是以真实的案例需求来讲解Python如何进行自动化办公操作,并且多次使用到openpyxl来处理表格,今天我们就来详细的盘点Python操作E ...
- Python操作Excel表格的模块xlrd的简单介绍
Python操作Excel表格的模块xlrd的简单介绍 处理数据对Python来说,比较容易,操作简单,功能强大,短短几行代码,就可处理大量的数据信息,下面介绍Python处理Excel表格的一个模块 ...
- python处理excel文件的模块_python处理Excel文件的几个模块
在python中简单地处理excel文件,有几个相关的模块,各有千秋,本文将不定时收录. Python Excel网站收集了关于python处理excel文件的各种信息. [注意]使用python处理 ...
- python的excel库_Python-Excel 模块哪家强?
0. 前言 从网页爬下来的大量数据需要清洗? 成堆的科学实验数据需要导入 Excel 进行分析? 有成堆的表格等待统计? 作为人生苦短的 Python 程序员,该如何优雅地操作 Excel? 得益于前 ...
- Python让Excel飞起来—模块
目录 3.2处理文件和文件夹的模块--os 3.2.1获取当前运行的Python代码文件路径 3.2.2列出指定路径下的文件夹包含的文件和文件夹名称 3.2.3分离文件主名和扩展名 3.2.4重命名文 ...
- Python操作excel之openpyxl
1. 用例分离 -- 一组测试数据-->一个用例-->测试类下的一个方法 -- 先用手工测试的用例:excel,xmind,tapd,testrail 测试数据的运转:手工写到excel中 ...
- Python: 读写Excel(openpyxl / win32com.client)
项目周报汇报的时候要做数据汇总,总是要从不同的excel文件中去获取数据最后汇总到一个excel表里面,所以决定用python直接写个自动化脚本来自动执行. 用python来读写excel,目前找了2 ...
- python 折线图 excel_Python操作Excel,openpyxl模块,画折线图
一.如图 30万数据,比较大,挤一起了 import sys import uuid import string import json import time import random impor ...
最新文章
- 从一个男人身上看出他的修养和抱负
- 【翻译 windbg - 1】Getting started with windbg - part I (第一部分 1)
- 综合布线的12大热点技术
- Linux文件属性之r、w、x
- 最新招聘公司网站 以及学校的宣讲会
- php gui中文手册,git gui - [ Git中文开发手册 ] - 在线原生手册 - php中文网
- 再说人行分数解读分的作用
- eclipse中安装flex插件
- python用时间戳给文件命名-在Python中每小时将时间戳记写入文件
- c语言dp算法解决背包问题,DP求解完全背包问题及其优化原理
- 采用gfzrnx软件进行RINEX批量格式转换(rinex3到rinex2,rinex2到rinex3)
- spring-boot文件上传限制
- stream流 lambda 练习
- 【元胞自动机】元胞自动机交通事故通行【含Matlab源码 1345期】
- Eclipse配色方案以及字体设置和背景色设置
- 如何让IE6/IE7/IE8支持HTML5标签
- ESP8266学习之路一——WiFi STA
- 无法远程访问工作组计算机,如何在另一个工作组计算机上进行远程调试?
- ConcurrentHashMap、HashTable学习
- html中default是什么文件,Default是什么文件夹?Default文件夹可以删除吗?