openpyxl

Python笔记(十四):操作excel openpyxl模块

匿名 (未验证) 提交于 2019-12-02 22:54:36
(一) 常遇到的情况 就我自己来说,常遇到的情况可能就下面几种: 读取excel整个sheet页的数据。 读取指定行、列的数据 往一个空白的excel文档写数据 往一个已经有数据的excel文档追加数据 下面就以这几种情况为例进行说明。 (二) 涉及的模块及函数说明 就我知道的,有3个模块可以操作excel文档,3个模块通过pip都可以直接安装。 xlrd:读数据 xlwt:写数据 openpyxl:可以读数据,也可以写数据 这里就就只说明openpxl了,因为这个模块能满足上面的需要了。 openpxl函数 函数 说明 load_workbook(filename) 打开excel,并返回所有sheet页 访问指定sheet页的方法: # 打开excel文档 wb = openpyxl.load_workbook(file_name) # 访问sheet页 sheet = wb[‘sheet页的名称’] #关闭excel文档 wb.close() Workbook() 创建excel文档 wb = openpyxl.Workbook() #保存excel文档 wb.save('文件名.xlsx') 下面的函数是针对sheet页的 sheet = wb[‘sheet页的名称’] 访问指定单元格的方式sheet['A1']、sheet['B1']... min_row

Python制作处理excel--openpyxl

匿名 (未验证) 提交于 2019-12-02 22:51:30
做公司项目碰到要读写excel (xslx),暂定要实现的功能如下: 1. 从json文件里解析数据 2.制作excel模板(有三行需要一个个单元格分开制作) 3.复制sheet页 使用的库如下,功能一目了然,不做详解: import json,openpyxl import shutil,os from openpyxl.styles import Border, Side, Font, GradientFill, Alignment 写Cell(合并)方法如下: def write_cell(ws,value,cell_range, border=Border(), fill= None , font= None , alignment= None ): my_cell = ws[cell_range.split( ":" )[ 0 ]] my_cell.value = value style_range(ws, cell_range, border =border, fill =fill, font =font, alignment =al) 其中style_range ,主要就是写单元格的样式以及合并单元格 def style_range(ws, cell_range, border=Border(), fill= None , font= None , alignment

python使用openpyxl操作execl

匿名 (未验证) 提交于 2019-12-02 22:51:30
openpyxl openpyxl可以用来对excel进行操作,但只能操作xlsx文件而不能操作xls文件。 主要用到三个概念:Workbooks,Sheets,Cells。 Workbook就是一个excel工作薄; Sheet是工作表中的一张工作表; Cell就是简单的一个格。 openpyxl就是围绕着这三个概念进行的:打开Workbook,定位Sheet,操作Cell。 读取与创建 读取Workbooks 可以导入openpyxl.load_workbook()来打开一个已经存在的workbook: >>> from openpyxl import load_workbook >>> wb2 = load_workbook('test.xlsx') >>> print wb2.get_sheet_names() ['Sheet2', 'New Title', 'Sheet1'] 创建Workbooks与Sheets 在刚开始使用openpyxl的时候,不需要直接在文件系统中创建一个文件,仅仅需要导入Workbook类并开始使用它: >>> from openpyxl import Workbook >>> wb = Workbook() 一个workbook总是会创建至少一个worksheet(工作表),可以通过openpyxl.workbook.Workbook

python openpyxl插入一列

匿名 (未验证) 提交于 2019-12-02 22:51:30
@[TOC]如何插入excel表中,指定的一列数据 2019-9-23日 @小高 change_data :要插入数据 booksheet:要操作的表 #fill_colums = 4 #要插入到第几列 data_sheet = load_workbook ( workspace + '/' + file_name ) #读入文件的路径 def insert_data ( data_sheet , changed_data ) : booksheet = data_sheet . worksheets [ file_num ] ws = booksheet . insert_cols ( fill_colums ) for index , row in enumerate ( booksheet . rows ) : row [ fill_colums - 1 ] . value = changed_data [ index ] ''' if index == 0: row[fill_colums-1].value = changed_data[index] else: row[fill_colums-1].value = changed_data[index] ''' data_sheet . save ( '../data/changed.xlsx' ) 有错误的可以发私信

使用Python操作Excel文档(一)

匿名 (未验证) 提交于 2019-12-02 22:51:30
Python | 使用Python操作Excel文档(一) 0 前言 在阅读本文之前,请确保您已满足或可能满足以下条件: 请确保您具备基本的Python编程能力。 请确保您会使用Excel。 请确保您的电脑已经安装好Python且pip可用。 另外操作Excel需要使用openpyxl模块,请安装好该模块: 演示环境: 演示环境为 win10+Python3.6 openpyxl版本为2.6.2 调试工具为IDLE 1. openpyxl简述 openpyxl操作Excel的第三方库,作者是Eric Gazoni, Charlie Clark。您也可以访问openpyxl的官方网站通过官方手册进行学习。同时附上官方网站的地址: https://openpyxl.readthedocs.io/en/stable/index.html。 目前openpyxl的最新版本是2.6.2版本。在openpyxl之前,我们使用xlrd和xlwt来操作Excel表格,事实上这两个库也非常好用,一读一写,然而遗憾的是它们只能操作2003及以前的版本,而openpyxl却能支持2010版本。 另外这里附上源码地址,感兴趣的同学可以自行下载学习或者参与开发: http://bitbucket.org/openpyxl/openpyxl/src 2. 创建/读取一个Excel工作簿

python操作excel----openpyxl模块

匿名 (未验证) 提交于 2019-12-02 22:51:30
openpyxl模块支持.xls和.xlsx格式的excel创建,但是只支持.xlsx格式的读取操作,不支持.xls的读取(可以使用xlrd模块来读取,写入操作也可使用xlwt模块) openpyxl创建新的excel    1 import openpyxl 2 3 #创建工作簿 4 book=openpyxl.Workbook() 5 6 # 创建表 7 table1=book.create_sheet(title="联系电话",index=0)#title表名;index:自定义表位置 8 table2=book.create_sheet("工作经历",3) 9 10 #单元格值得插入(可以是具体值,也可以是excel函数语句) 11 table1.cell(1,1,"手机号")#参数为:行,列,数值----表中的行和列都是以索引1开始计数,因此在定位单元格时行列都必须不小于1 12 table1['B1']='年龄' 13 #单元格插入值的另外一种写法 14 for i in range(2,10): 15 table1.cell(i,1).value=12345 16 table1.cell(i,2).value=i 17 18 # 保存工作簿--可以指定xls或者xlsx 19 book.save("员工信息.xlsx")#参数:文件名

python制作简单excel统计报表2之操作excel的模块openpyxl简单用法

匿名 (未验证) 提交于 2019-12-02 22:51:30
python制作简单excel统计报表2之操作excel的模块openpyxl简单用法 # coding=utf-8 from openpyxl import Workbook, load_workbook from openpyxl.drawing.image import Image from openpyxl.styles import Font,colors from datetime import datetime import MySQLdb class ExcelUtils(object): """ pip install openpyxl pip install pillow 参考文档:https://openpyxl.readthedocs.io/en/stable """ def __init__(self): self.wb = Workbook() # 激活表单 self.ws = self.wb.active self.ws_two = self.wb.create_sheet('我的表单') self.ws.title = '你的表单' self.ws.sheet_properties.tabColor = 'ff000000' self.ws_three = self.wb.create_sheet() def do_sth(self): # 插入数据

Python - openpyxl 读写操作Excel

匿名 (未验证) 提交于 2019-12-02 22:51:30
openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间转换容易 注意:如果文字编码是“gb2312” 读取后就会显示乱码,请先转成Unicode 1、openpyxl 读写单元格时,单元格的坐标位置起始值是(1,1),即下标最小值为1,否则报错! tableTitle = ['userName', 'Phone', 'age', 'Remark'] # 维护表头 # if row < 1 or column < 1: # raise ValueError("Row or column values must be at least 1") # 如上,openpyxl 的首行、首列 是 (1,1)而不是(0,0),如果坐标输入含有小于1的值,提示 :Row or column values must be at least 1,即最小值为1. for col in range(len(tableTitle)): c = col + 1 ws.cell(row=1, column=c).value = tableTitle[col] 2、openpyxl 支持直接横纵坐标访问,如A1,B2... ws['A4'] = 4 #直接赋值 Excel文件三个对象 workbook: 工作簿,一个excel文件包含多个sheet。

Python - Automatically adjust width of an excel file's columns

℡╲_俬逩灬. 提交于 2019-12-02 22:20:18
Newbie - I have a Python script that adjusts the width of different columns of an excel file, according to the values specified: import openpyxl from string import ascii_uppercase newFile = "D:\Excel Files\abc.xlsx" wb = openpyxl.load_workbook(filename = newFile) worksheet = wb.active for column in ascii_uppercase: if (column=='A'): worksheet.column_dimensions[column].width = 30 elif (column=='B'): worksheet.column_dimensions[column].width = 40 elif (column=='G'): worksheet.column_dimensions[column].width = 45 else: worksheet.column_dimensions[column].width = 15 wb.save(newFile) Is there any

python-excel

匿名 (未验证) 提交于 2019-12-02 22:11:45
字典转化为数组 users=[{ "id" : "7972" , "user_id" : "17775207320" , "con_pwd" : "123456" , "regist_time" : "2018-07-27 08:28:50" }] table_head=list(users[ 0 ] .keys ()) #取出所有的key值 table_content=[] for user in users: table_content .append (list(user .values ())) #把所有的value组成一个二维数组 python中的excel表,首先安装openpyxl 写入数据 from openpyxl in Workbook table_content=[ [ 'a' , 'b' , 'c' ], [ 1 , 2 , 3 ], [ 21 , 22 , 23 ], [ 31 , 32 , 33 ] ] #写入方法 def sava_excel (filename,data) : try : wb=Workbook() #新建excel文件 sheet=wb.creat_sheet( 'Data' ,index= 0 ) #新建一个工作薄,0表示第一个位置 for row in data: sheet.append(row) wb.sava