文档章节

使用Python对Excel进行读写操作

LeeHH
 LeeHH
发布于 2017/06/05 09:54
字数 550
阅读 25
收藏 0
点赞 0
评论 0

    在进行编码前,首先要安装xlrd,可以选择到官网 http://pypi.python.org/pypi/xlrd 处下载

读取Excel表格

1.导入xlrd

import xlrd

2.打开excel和获取sheet

bk = xlrd.open_workbook('/home/test.xlsx')
#通过索引顺序获取 sheet
sh = bk.sheets()[0]
#通过索引顺序获取 sheet
sh = bk.sheet_by_index(0)
#通过名称获取sheet
sh = bk.sheet_by_name(u'Sheet1')

3.获取行数或列数

#获取行数
nrows = sh.nrows
#获取列数
ncols = sh.ncols
#获取整行和整列的值(返回数组)
sh.row_values(i)
sh.col_values(i)

4.获取指定一格的值

#获取第一行第一列的值(即A1)
cell_A1 = sh.cell_value(0,0)
cell_A1 = sh.cell(0,0).value

写入一个新的Excel表格

1.导入xlwt

import xlwt  

2.新建excel和sheet

#新建一个excel文件  
file = xlwt.Workbook()  
#新建一个sheet  
sh = file.add_sheet('sheet1',cell_overwrite_ok=True)  

3.写入

sh.write(0,0,'lalala')

4.保存

file.save(u'file.xls')

对Excel表格进行读写

前面介绍的两个都是单独的读取或写入,如果需要对某excel进行读写,那就要用到xlrd了

1.导入xlrd

import xlrd
from xlutils.copy import copy

2.打开excel和获取sheet

rexcel = xlrd.open_workbook("file.xls") # 用wlrd提供的方法读取一个excel文件
sh = rexcel.sheet_by_name("Sheet1")

3.进行读写操作

rows = rexcel.sheets()[0].nrows # 用wlrd提供的方法获得现在已有的行数
excel = copy(rexcel) # 用xlutils提供的copy方法将xlrd的对象转化为xlwt的对象
table = excel.get_sheet(0) # 用xlwt对象的方法获得要操作的sheet
value = str(sh.cell_value(0,0)) #用xlrd的方法获取某行某列的值
table.write(0,1,'Yes') #用xlwt的方法来写入

4.保存

#保存为同样的名字,对原excel表格进行覆盖
excel.save('file.xls')

例子

#coding:utf8
import xlrd
import MySQLdb
import sys
reload(sys)
sys.setdefaultencoding("utf-8")

'''
将excel中的数据导入到mysql中去
'''
book = xlrd.open_workbook("myexcel.xlsx")
sheet = book.sheets()[0]

conn=MySQLdb.connect(host=HOST,user=USER,passwd=PASSWD,db=DB,port=PORT,charset="utf8")
conn.autocommit(1)
cur = conn.cursor()
cur.execute("set names utf8")

for r in range(1, sheet.nrows):
    a = sheet.cell(r,0).value
    b = sheet.cell(r,1).value
    c = sheet.cell(r,2).value
    d = sheet.cell(r,3).value
    sql = "insert into business_area_info (a,b,c,d) value('%s','%s','%s','%s')"%(a,b,c,d)
    print sql
    cur.execute(sql)
    

以上就是读写的基本操作,如需深入,自行百度谷歌

© 著作权归作者所有

共有 人打赏支持
LeeHH
粉丝 1
博文 35
码字总数 36009
作品 0
深圳
程序员
python操作excel表格(xlrd/xlwt)

python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。可从这里下载https://pypi.python.org/pypi。下面分别记录python读和写excel. python读excel——xlrd 这个...

_周小董 ⋅ 05/24 ⋅ 0

Python实现批量解析PDF文件提取内容并写入到Excel中

摘要:最近需要将一批PDF文件中的某些数据整理到Excel中,因为文件数量接近20w+,手动更新几乎不现实,于是就提取关键词和内容动手写了个Python小工具,以实现自动完成上述目标。 要求: 基本...

_周小董 ⋅ 05/20 ⋅ 0

Python处理csv、xlsx、pdf

一、csv文件的处理 CSV(Comma-Separated Values)即逗号分隔值,可以用Excel打开查看。由于是纯文本,任何编辑器也都可打开。与 Excel 文件不同,CSV 文件中: 值没有类型,所有值都是字符串 ...

blackfoxya ⋅ 06/08 ⋅ 0

使用Python爬取网络数据并使用SSAS进行数据分析

主要内容 使用Python分别爬取百度搜索页面结果和智联招聘的6大类职业信息,数据主要使用SQLServer SSAS进行分析,并有少量的使用Python分析结果。 对于百度搜索的数据和智联招聘的页面数据是...

python达人 ⋅ 05/12 ⋅ 0

入门数据分析,从python开始

Python是目前学习数据分析课程中,非常重要的一块,也是目前非常受行业欢迎的。因此,学习非常重要,下面是Python学习的一些重要步骤和知识! 步骤1:熟悉Python 对数据科学,Python和R都是不...

weixin_41852491 ⋅ 05/28 ⋅ 0

使用nmap-converter将nmap扫描结果XML转化为XLS实战

1、前言 作为网络安全从业人员,有时候需要使用端口扫描利器nmap进行大批量端口扫描,但Nmap的输出结果为.nmap、.xml和.gnmap三种格式,还有夹杂很多不需要的信息,处理起来十分不方便,而将...

林鸿风采 ⋅ 05/08 ⋅ 0

python高性能编程第一章读书笔记

计算机底层组件分为三大基本部分:计算单元、存储单元以及两者之间的连接。 计算单元:具有将接收到的任意输入转换成输出的能力以及改变当前处理状态的能力。CPU是最常见的计算单元。它的主要...

ma412410029 ⋅ 05/28 ⋅ 0

数据挖掘敲门砖--Python爬虫入门

WHAT 数据挖掘是一门综合的技术,随着Ai的兴起,在国内的需求日渐增大。 数据挖掘的职业方向通常有三个,顺便概要地提一下所需的技能(不仅于此) 数据分析方向:需要数理知识支撑,比如概率...

fesoncn ⋅ 01/02 ⋅ 0

156个Python网络爬虫资源,妈妈再也不用担心你找不到资源了

本列表包含Python网页抓取和数据处理相关的库。 前几天有私信小编要Python的学习资料,小编整理了一些有深度的Python教程和参考资料,从入门到高级的都有,文件已经打包好了,正在学习Pytho...

雁横 ⋅ 05/02 ⋅ 0

python开源工具列表【持续更新】

以下是个人在工作中整理的一些python wheel,供参考。 这个列表包含与网页抓取和数据处理的Python库 网络 通用urllib -网络库(stdlib)。 requests -网络库。 grab – 网络库(基于pycurl)。...

武耀文 ⋅ 04/25 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 31分钟前 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 57分钟前 ⋅ 0

PXE/KickStart 无人值守安装

导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装。 常规的办法有什么? 光盘安装系统 ===> 一...

kangvcar ⋅ 昨天 ⋅ 0

使用Puppeteer撸一个爬虫

Puppeteer是什么 puppeteer是谷歌chrome团队官方开发的一个无界面(Headless)chrome工具。Chrome Headless将成为web应用自动化测试的行业标杆。所以我们很有必要来了解一下它。所谓的无头浏...

小草先森 ⋅ 昨天 ⋅ 0

Java Done Right

* 表示难度较大或理论性较强。 ** 表示难度更大或理论性更强。 【Java语言本身】 基础语法,面向对象,顺序编程,并发编程,网络编程,泛型,注解,lambda(Java8),module(Java9),var(...

风华神使 ⋅ 昨天 ⋅ 0

Linux系统日志

linux 系统日志 /var/log/messages /etc/logrotate.conf 日志切割配置文件 https://my.oschina.net/u/2000675/blog/908189 logrotate 使用详解 dmesg 命令 /var/log/dmesg 日志 last命令,调......

Linux学习笔记 ⋅ 昨天 ⋅ 0

MVC——统一报文格式的异常处理响应

在我们写controller层的时候,常常会有这样的困惑,如果需要返回一个数据是,可能为了统一回去构造一个类似下列的数据格式: { status:true, msg:"保存成功!", data:[]} 而且在写...

alexzhu592 ⋅ 昨天 ⋅ 0

[知乎]SSH框架

网上图书馆管理系统包括管理员管理和图书管理,图书借阅,查询模块等等,网上商城包括前台页面和后台管理页面,两个都是以前别人的实际项目,只是别人用的不是SSH,我把他们改用SSH了,除了S...

颖伙虫 ⋅ 昨天 ⋅ 0

android -------- 打开本地浏览器或指定浏览器加载,打电话,打开第三方app

开发中常常有打开本地浏览器加载url或者指定浏览器加载, 还有打开第三方app, 如 打开高德地图 百度地图等 在Android程序中我们可以通过发送隐式Intent来启动系统默认的浏览器。 如果手机本身...

切切歆语 ⋅ 昨天 ⋅ 0

linux 安装docker

通过以下命令下载安装docker wget -qO- https://get.docker.com | sh 执行以上命令后输出以下内容说明安装成功,注意红框中的内容,docker安装成功后默认只有root能使用,红框中给出的提示是...

haoyuehong ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部