文档章节

Python读取Excel文件

qujin_liang
 qujin_liang
发布于 2016/05/13 17:14
字数 495
阅读 10
收藏 0
点赞 2
评论 0

1.读取Excel(需要安装xlrd):

#-*- coding: utf8 -*-
import xlrd

fname = "reflect.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
    sh = bk.sheet_by_name("Sheet1")
except:
    print "no sheet in %s named Sheet1" % fname
#获取行数
nrows = sh.nrows
#获取列数
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)
#获取第一行第一列数据
cell_value = sh.cell_value(1,1)
#print cell_value

row_list = []
#获取各行数据
for i in range(1,nrows):
    row_data = sh.row_values(i)
    row_list.append(row_data)

 

2.写入Excel(需安装pyExcelerator)

from pyExcelerator import *

w = Workbook()     #创建一个工作簿
ws = w.add_sheet('Hey, Hades')     #创建一个工作表
ws.write(0,0,'bit')    #在1行1列写入bit
ws.write(0,1,'huang')  #在1行2列写入huang
ws.write(1,0,'xuan')   #在2行1列写入xuan
w.save('mini.xls')     #保存

 

3.再举个自己写的读写Excel的例子
读取reflect.xls中的某些信息进行处理后写入mini.xls文件中。 

#-*- coding: utf8 -*-
import xlrd
from pyExcelerator import * 

w = Workbook() 
ws = w.add_sheet('Sheet1') 

 

fname = "reflect.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
    sh = bk.sheet_by_name("Sheet1")
except:
    print "no sheet in %s named Sheet1" % fname

nrows = sh.nrows
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)

cell_value = sh.cell_value(1,1)
#print cell_value

row_list = []
mydata = []
for i in range(1,nrows):
    row_data = sh.row_values(i)
    pkgdatas = row_data[3].split(',')
    #pkgdatas.split(',')
    #获取每个包的前两个字段
    for pkgdata in pkgdatas:
        pkgdata = '.'.join((pkgdata.split('.'))[:2])
        mydata.append(pkgdata)
    #将列表排序
    mydata = list(set(mydata))
    print mydata
    #将列表转化为字符串
    mydata = ','.join(mydata)
    #写入数据到每行的第一列
    ws.write(i,0,mydata)
    mydata = []
    row_list.append(row_data[3])
#print row_list

w.save('mini.xls')

 

4.现在我需要根据Excel文件中满足特定要求的apk的md5值来从服务器获取相应的apk样本,就需要这样做

 

#-*-coding:utf8-*-
import xlrd
import os
import shutil

fname = "./excelname.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
    #打开Sheet1工作表
    sh = bk.sheet_by_name("Sheet1")
except:
    print "no sheet in %s named Sheet1" % fname
#获取行数
nrows = sh.nrows
#获取列数
ncols = sh.ncols
#print "nrows %d, ncols %d" % (nrows,ncols)
#获取第一行第一列数据
cell_value = sh.cell_value(1,1)
#print cell_value

row_list = []
#range(起始行,结束行)
for i in range(1,nrows):
    row_data = sh.row_values(i)
    if row_data[6] == "HXB":
        filename = row_data[3]+".apk"
        #print "%s  %s  %s" %(i,row_data[3],filename)
        filepath = r"./1/"+filename
        print "%s  %s  %s" %(i,row_data[3],filepath)
        if os.path.exists(filepath):
            shutil.copy(filepath, r"./myapk/")

 

 

本文转载自:

共有 人打赏支持
qujin_liang
粉丝 2
博文 22
码字总数 7197
作品 0
朝阳
Python处理csv、xlsx、pdf

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

blackfoxya
06/08
0
0
Python处理Excel数据

前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理Excel数据的经验,甚至...

Lwxxx
2012/08/01
0
0
Python xlrd、xlwt、xlutils读取、修改Excel文件

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

Sophia_tj
2015/06/12
0
0
python 第三方包之xlwt 转换成excel

简介 xlrd是python的一个第三方模块,可以实现跨平台读Microsoft Excel文件。(它有一个兄弟叫xlwt,专注于写Excel文件。) 它并不像win2com那样借助COM技术来访问Excel,而是直接分析Excel...

文弱书生_罗剑
2015/08/17
0
0
python 编写自动化小工具 未完成

python 编写自动化小工具 Python split() python数据类型之间的转换 str(demo) python换行写入文件 !/usr/bin/env python ecoding=utf-8 f=open(r"D:opsdevolduseroldused.txt","a+") newlin......

iOS_愛OS
06/21
0
0
Python实现批量解析PDF文件提取内容并写入到Excel中

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

_周小董
05/20
0
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
0
python文件处理:读取文件

在python中读取文件需要用到open打开一个文件,并保存到一个对象文件中,代码如下: #打开文件,并存入一个名为data的文件对象data = open('nyl_sites.txt') 遍历每一行数据, each_item为每行...

haigou20
2013/08/09
0
0
Python 练习册-题目解答参考

所有题目的链接在这里:[Python练习册-OSChina][1] 第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字 python库:大家都会说PIL,但是根据StackOverflow的建议,采用[Pillow...

NineRec
2015/01/03
0
0
Python数据处理库pandas入门教程

pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库。本文是对它的一个入门教程。 pandas提供了快速,灵活和富有表现力的数据结构...

paulquei
05/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Activiti - 新一代的开源 BPM 引擎

Activiti 背景简介、服务和功能介绍 董 娜, 狄 浩, 和 张 晓篱 2012 年 7 月 23 日发布 背景介绍 Activiti 其核心是 BPMN 2.0 的流程引擎。BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准,全...

孟飞阳
7分钟前
0
0
最有效的方式来适配

最有效的方式来进行屏幕适配 在上代码之前先把屏幕相关的几个概念搞清楚:Density、DensityDpi、ScaleDensity。这里我们不过多讲解这些概念知识。 1.0 获取设计图的屏幕尺寸:这里我以360dp...

android-key
9分钟前
0
0
微信授权代码翻译样本

var a,b,c,d = ngx.call(1,2,3)var e = [];var f ;var g = function () {}var h = 1;var c = "abcdefg" + "222";var d = "asdasdasd" + a;var a = ngx >>> log();//......

钟元OSS
11分钟前
0
0
5、二维码生成工具类

一、maven引入依赖jar包 <dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.1.0</version></dependency><dependency><groupId>com.......

丑陋的皮囊
11分钟前
0
0
正则表达式

以前用正则表达式很少,大部分情况下matches一下就好了,这次遇到的情况比较特殊,因为对截取出来的数据比较敏感(日期),所以就重新熟悉了一下,感觉有必要记录一下: /** * 从字符串中...

lost_keke
13分钟前
1
0
Java语言学习(十一):枚举类型和泛型

Java中一个重要的类型:枚举,它可以用来表示一组取值范围固定的变量,使用 enum 关键字定义枚举类型,其中元素不能重复,通常大写表示。利用Java的反射机制,可以在运行时分析类,如查看枚举...

海岸线的曙光
16分钟前
0
0
XGboost调参

参见 :https://blog.csdn.net/u010665216/article/details/78532619?utm_source=debugrun&utm_medium=referral 待补充...

小叮当_加V
23分钟前
0
0
Vue使用问题解决记录(持续更新)

1 this属性调用无效 this在methods中的方法表面调用,表明调用的是当前vue对象. 但在方法内部的方法中调用时,所指便不再是vue对象,可能式窗口本身. 此时建议,在methods中的方法开始时写: var...

社哥
24分钟前
0
0
美国最新超级计算机Summit顶替中国神威超算榜首位置[图]

美国最新超级计算机Summit顶替中国神威超算榜首位置[图]: 2018年6月8日,美国能源部橡树岭国家实验室宣布,制造出了全世界目前最快的超级计算机Summit,顶替了中国“神威太湖之光”在超算排...

原创小博客
27分钟前
1
0
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

背景 ssh登录的时候,出现的错误: zylMBP:Downloads zhangyalin$ ssh root@192.168.56.108@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENT......

亚林瓜子
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部