1.1 openpyxl 基本使用

  1、openpyxl 将xlsx读成json格式

#! /usr/bin/env python
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
import json
from openpyxl import load_workbook def read_xlsx_to_json(file_home):
wb = load_workbook(filename= file_home)
sheet_ranges = wb['Sheet1']
ws = wb['Sheet1']
rows = ws.rows #获取表格所有行和列,两者都是可迭代的
thead = [col.value for col in rows.next()] # 表格中第一行作为key
data = []
for row in rows:
line = [col.value for col in row]
tmp_dic = {}
for index, val in enumerate(thead):
tmp_dic[val] = line[index]
data.append(tmp_dic)
return json.dumps(data, ensure_ascii=False,indent=4) # print read_xlsx_to_json('dd.xlsx') '''
[
{
"员工编号": null,
"部门名称": "HLT集团",
"手机号": 1393999934,
"角色": null,
"直属上级": null,
"职位": "CEO",
"企业微信唯一标识": null,
"相关部门": null,
"姓名": "王五",
"邮箱": "zhangsan@qq.com",
"职能": null,
"性别": "男"
},
{
"员工编号": null,
"部门名称": "政府事业部",
"手机号": 61616116161616,
"角色": null,
"直属上级": "王五",
"职位": "首席运营官",
"企业微信唯一标识": null,
"相关部门": null,
"姓名": "李四",
"邮箱": "lisi@qq.com",
"职能": null,
"性别": "女"
}
]
'''

openpyxl 将xlsx读成json格式

  2、openpyxl 创建一个 xlsx 文件

#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json
from openpyxl import Workbook # 创建 一个 xlsx 文件
def create_xlsx(data_list):
wb = Workbook() # 创建工作簿
ws = wb.active # 激活工作表
ws1 = wb.create_sheet("Mysheet") # 创建mysheet表
ws.title = "New Title" # 表明改为New Title
ws.sheet_properties.tabColor = "1072BA" # 颜色 for row_index, row in enumerate(data_list):
thead_list = data_list[0] # ['id', 'name', 'sex', 'age']
row_index += 1 # excel中 行是从 1 开始计算的 for column_index, thead in enumerate(thead_list):
column_index += 1 # excel中 行是从 1 开始计算的 if row_index == 1: #第一步: 填充第一行数据,表头(id name sex age)
d = ws.cell(row=1, column=column_index, value=thead)
else: #第二步: 新建表中数据
d = ws.cell(row=row_index, column=column_index, value=row[column_index-1])
wb.save('test.xlsx')#保存 data_list = [
['id','name','sex','age'],
['','张三','男',''],
['','李四','男',''],
['','王五','女',''],
]
create_xlsx(data_list)

openpyxl 创建一个 xlsx 文件

      

  3、openpyxl 修改 第十列的值

#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json
from openpyxl import load_workbook # 将表中第十行的值统一修改为 ‘new val’
def change_xlsx(file_home):
wb = load_workbook(filename= file_home)
sheet_ranges = wb['Sheet1']
ws = wb['Sheet1']
rows = ws.rows #获取表格所有行和列,两者都是可迭代的
for row, line in enumerate(rows):
if row != 0:
row += 1
ws.cell(row=row, column=10).value = 'new val'
wb.save('f5.xlsx') change_xlsx('dd.xlsx')

openpyxl修改第四列的值

#! /usr/bin/env python
# -*- coding: utf-8 -*-
from openpyxl import load_workbook file_home = 'f5.xlsx'
wb = load_workbook(filename= file_home)
sheet_ranges = wb['Sheet1']
ws = wb['Sheet1'] # 将第二行,第二列的值修改成 '修改后的值'
ws.cell(row=2, column=2).value = '修改后的值'
wb.save('f6.xlsx')

openpyxl修改基本用法

  4、在xlsx文件后面添加新的内容(插入时按照数据顺序)

#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json, sys
from openpyxl import load_workbook # 在xlsx文件最后添加新的数据,会按照顺序插入到xlsx文件对应位置
def append_xlsx(file_home, data_list):
'''
:param file_home: xlsx文件路径
:param data_list: 插入的数据
'''
wb = load_workbook(filename= file_home)
sheet_ranges = wb['Sheet1']
ws = wb['Sheet1']
print data_list
ws.append(data_list)
wb.save('f7.xlsx') data_list = ['邮箱', '', '手机号', '性别']
append_xlsx('dd.xlsx',data_list)

在xlsx文件后面添加新的内容

13: openpyxl 读写 xlsx文件的更多相关文章

  1. Python使用openpyxl读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  2. 【转发】Python使用openpyxl读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  3. 使用EPPlus读写xlsx文件

    朋友有个需求,想对N张excel表做过滤和合并的处理,拜托我写个小程序.因为用户的背景是非专业用户,因此最好的选择是写个GUI程序,再加上读写excel的需求,所以我的首选就是C#的WinForm了. ...

  4. openpyxl读写Excel文件

    安装 pip install openpyxl 一个简单的实例: 最初的表格 #!/usr/bin/env python # -*- coding:utf-8 -*- import openpyxl ...

  5. Python3使用openpyxl读写Excel文件

    Python中常用的操作Excel的三方包有xlrd,xlwt和openpyxl等,xlrd支持读取.xls和.xlsx格式的Excel文件,只支持读取,不支持写入.xlwt只支持写入.xls格式的文 ...

  6. Python使用读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  7. 用Python读写Excel文件(转)

    原文:google.com/ncr 虽然天天跟数据打交道,也频繁地使用Excel进行一些简单的数据处理和展示,但长期以来总是小心地避免用Python直接读写Excel文件.通常我都是把数据保存为以TA ...

  8. [转]用Python读写Excel文件

    [转]用Python读写Excel文件   转自:http://www.gocalf.com/blog/python-read-write-excel.html#xlrd-xlwt 虽然天天跟数据打交 ...

  9. Python读写EXCEL文件常用方法大全

    前言 python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式. 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pa ...

随机推荐

  1. Windows(华硕/联想)笔记本上安装黑苹果与win双系统教程

    声明:电脑小白者请谨慎安装,如有需要可私聊或留言提供安装工具 首先说明:Windows PC的文件操作系统也就是磁盘格式是FAT32或 NTFS ,而 Mac 的文件操作系统格式是 HFS ,所以这时 ...

  2. 记录一则RMAN恢复到历史备份(多个incarnation)

    环境: OEL 5.7 + Oracle 11.2.0.4 1.直接restore到想要恢复的时间点报错: RMAN> sql "alter session set nls_date_ ...

  3. ajax提交完表单数据依然跳转的解决办法

    1. 既然ajax提交数据,就把表单里面submit按钮换掉,因为触发submit他就会跳转页面 提交的时候他会先触发ajax 再触发submit的提交 2.如果确定了表单没有submit,那么把提交 ...

  4. 《2017年Q2中国城市研究报告

    根据百度慧眼团队发布的<2017年Q2中国城市研究报告>,2017年第二季度人口吸引力排名前五的城市与第一季度相同,深圳继续保持第一的领先位置.

  5. sqli-labs(三)

    第五关:这关的重点是有联合查询的注入漏洞,但是页面不会显示查询信息,但是会有报错信息显示在页面上 这关是双查询注入,其实用报错注入和盲注都是可以注入的,但是我觉得这个双查询注入还是很有意思的,所以这关 ...

  6. CentOS7.5 防火墙指令

    防火墙指令 1. 查看防火墙状态: firewall-cmd --state 2. 启动防火墙 systemctl start firewalld.service 3. 关闭防火墙 systemctl ...

  7. 019-JQuery(Ajax异步请求)

    使用jquery完成异步操作 ->开发文档提供的异步API url:请求地址 type:请求方式,主要是get.post data:{}:请求的数据 dataType:返回值的类型,主要有xml ...

  8. Linux的文件最大连接数

    [最大连接数]Linux的文件最大连接数   查看当前操作系统连接数设置 ulimit -a ==================================== 修改服务器最大连接数 vim / ...

  9. laravel service provider

    https://laravel-china.org/articles/6189/laravel-service-provider-detailed-concept https://oomusou.io ...

  10. Visio 保存卡死解决办法

    右键Visio图标 属性--兼容性--以兼容模式运行这个程序 要打上对勾  且下面的系统版本要选和你电脑版本一致的选项 特权等级   以管理员身份运行次程序  要打上对勾