Python操作Excel的四个工具包

  • xlrd: 对Excel进行读相关操作,注意只能操作 .xls
  • xlwt: 对Excel进行写相关操作,注意只能操作 .xls,且只能创建一个全新的Excel然后进行写入和保存。
  • xlutils:对Excel进行读、写相关操作,注意只能操作 .xls
  • openpyxl: 对Excel进行读、写相关操作,可操作 2010版的 .xlsx / .xlsm

工具包Python官网相关介绍文档

xlrd 简单使用

#!/usr/bin/env python
#-*- coding:utf-8 -*- import xlrd
import os def read_excel(line_num, table_name='Sheet1', excel_name='/FAQ.xls', excel_path='../../resource/):
'''
@param line_num: 行/列索引
@param table_name: 表名
@param excel_name: Excel文件名
@param excel_path: Excel文件路径
@return : data 读取到的数据
'''
file_path = os.path.normpath(os.path.join(os.path.dirname(__file__), excel_path + excel_name ))
with xlrd.open_workbook(file_path) as f:
table = f.sheet_by_name(table_name)
#nrows = table.nrows #遍历所有行
data = table.row_values(line_num) #读取行数据
#nrows = table.ncols #遍历所有列
#data = table.col_values(line_num) #读取列数据 return data

xlutils 简单使用

#!/usr/bin/env python
#-*- coding:utf-8 -*- import xlrd
import os
from xlutils import copy def write_excel(row, col, data, sheet_index=0, excel_name='/FAQ.xls', excel_path='../../resource/):
'''
@param row: 行索引
@param col: 列索引
@param data: 需写入的数据
@param sheet_index: 表索引
@param excel_name: Excel文件名
@param excel_path: Excel文件路径
@return :
'''
file_path = os.path.normpath(os.path.join(os.path.dirname(__file__), excel_path + excel_name ))
with xlrd.open_workbook(file_path, formatting_info=True) as wb:
new_wb = copy(wb)
new_sheet = new_wb.get_sheet(sheet_index) #设置单元格背景颜色0-Black,1=White,2=Red,3=Green,4=Blue,5=Yellow,6=Magenta
style = 'pattern: pattern solid_pattern, pattern_fore_colour 3;' #设置单元格背景颜色
style += 'font: name arial;" #字体
style += 'alignment: horz CENTER, vert CENTER; ' #居中
style += ' borders: left DASHED, right DASHED, top DASHED, bottom DASHED' #边框 new_sheet.write(row, col, data, style )
#new_wb.save(file_path) #原Excel上修改和保存
new_wb.save(os.path.splitext(file_path)[0] + '.out' + os.path.splitext(file_path)[-1]) #保存新的Excel,输出为 FAQ.out.xls

Python模块学习之xlrd、xlutils、openpyxl 读写/追加Excel文件的更多相关文章

  1. Python模块学习之xlrd 读取Excel时传入formatting_info=True报错:NotImplementedError: formatting_info=True not yet implemented

    问题:xlrd读取Excel时传入 formatting_info=True 报错 之前我们使用读取xls文件的时候都是使用的xlrd库,但是这个库只能操作 .xls格式,对于后来的 .xlsx的版本 ...

  2. 【转】Python xlrd、xlwt、xlutils读取、修改Excel文件

    Python xlrd.xlwt.xlutils读取.修改Excel文件 一.xlrd读取excel 这里介绍一个不错的包xlrs,可以工作在任何平台.这也就意味着你可以在Linux下读取Excel文 ...

  3. 【目录】Python模块学习系列

    目录:Python模块学习笔记 1.Python模块学习 - Paramiko  - 主机管理 2.Python模块学习 - Fileinput - 读取文件 3.Python模块学习 - Confi ...

  4. 【转】Python模块学习 - fnmatch & glob

    [转]Python模块学习 - fnmatch & glob 介绍 fnmatch 和 glob 模块都是用来做字符串匹配文件名的标准库. fnmatch模块 大部分情况下使用字符串匹配查找特 ...

  5. Python模块学习filecmp文件比较

    Python模块学习filecmp文件比较 filecmp模块用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单.python标准库还提供了difflib模块用于比较文件的内容.关于dif ...

  6. 转 Python - openpyxl 读写操作Excel

    Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...

  7. python读、写、修改、追写excel文件

    三个工具包 python操作excel的三个工具包如下 xlrd: 对excel进行读相关操作 xlwt: 对excel进行写相关操作 xlutils: 对excel读写操作的整合 注意,只能操作.x ...

  8. Python:将爬取的网页数据写入Excel文件中

    Python:将爬取的网页数据写入Excel文件中 通过网络爬虫爬取信息后,我们一般是将内容存入txt文件或者数据库中,也可以写入Excel文件中,这里介绍关于使用Excel文件保存爬取到的网页数据的 ...

  9. Python模块学习 - openpyxl读写excel

    openpyxl模块介绍 openpyxl模块是一个读写Excel 2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,openpyxl是一个比较综合的工具,能够同时读 ...

随机推荐

  1. levelDB Log-writer

    分析完KV在内存中的存储,接下来就是操作日志.所有的写操作都必须先成功的append到操作日志中,然后再更新内存memtable.这样做有两个有点:1可以将随机的写IO变成append,极大的提高写磁 ...

  2. hdu-2389.rain on your parade(二分匹配HK算法)

    Rain on your Parade Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 655350/165535 K (Java/Ot ...

  3. [2019杭电多校第五场][hdu6630]permutation 2

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6630 题意为求出1-n,n个数的全排列中有多少种方案满足第一位为x,第n位为y,且相邻数字绝对值之差不 ...

  4. socket服务器

    Python 3.x,已经改名为socketserver:Python 2. #coding=utf-8 #1.必须自己创建一个请求处理类,并且这个类要继承BaseRequesHandler,并且还要 ...

  5. Python2/3 安装各类包的教程

    1.pycryptodome(pyCrypto) pyCrypto包已经失效了,需要替换为pycryptodome 有SSR直接 pip install pycryptodome 国内用 pip in ...

  6. spark浅谈(3):

    一.shuffle操作 1.spark中特定的操作会触发我们都知道的shuffle事件,shuffle是spark进行数据重新分布的机制,这通常涉及跨执行程序和机器来赋值数据,使得混洗称为复杂而且昂贵 ...

  7. v-cloak解决Vue双大括号闪烁问题

    相信不少人和我一样,初次查看一个技术的文档的时候,知识吸收的很慢,因为对这个技术的不熟悉导致不清楚各种操作的应用场景,当我意识到这件事之后,我决定换种学习思路,即以实战为主,卡壳就查文档,会对这个技术 ...

  8. [书接上一回]在Oracle Enterprise Linux (v5.7) 中安装DB - (2/4)

    在最后一行,书写shmfs /dev/shm tmpfs size=2g 0 用来调高数据库运行是的内存分配问题. 创建需要的路径和分配权限. 设置 oracle 用户环境参数. 修改标头显示的部分. ...

  9. ll字段 详解 文件权限

    文件类型和权限 硬链接总数 属主用户名 属组组名 文件大小(字节) 上次修改时间 文件/目录名 drwxr-xr-x 15 lb lb 4096 10月 19 01:11 ./ drwxr-xr-x ...

  10. Codeforces Round #425 (Div. 2) - B

    题目链接:http://codeforces.com/contest/832/problem/B 题意:给定一个好字母集合(只有小写字母,除了这些外其余都是坏字母集合),给定一个匹配模式串, 模式串只 ...