python/python读取excel

# -*- coding: utf-8 -*-
import xdrlib ,sys
import xlrd

def open_excel(file= 'file.xls'):
try:
data = xlrd.open_workbook(file)
return data
except Exception,e:
print str(e)
#根据索引获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_index:表的索引
def excel_table_byindex(file= 'file.xls',colnameindex=0,by_index=0):
data = open_excel(file)
table = data.sheets()[by_index]
nrows = table.nrows #行数
ncols = table.ncols #列数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):

row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list

#根据名称获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_name:Sheet1名称
def excel_table_byname(file= 'file.xls',colnameindex=0,by_name=u'Sheet1'):
data = open_excel(file)
table = data.sheet_by_name(by_name)
nrows = table.nrows #行数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):
row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list

def main():
tables = excel_table_byindex()
for row in tables:
print row

tables = excel_table_byname()
for row in tables:
print row

if __name__=="__main__":
main()

时间: 2024-10-21 20:58:27

python/python读取excel的相关文章

Python xlrd读取excel日期类型的2种方法

  这篇文章主要介绍了Python xlrd读取excel日期类型的2种方法,本文同时讲解了xlrd读取excel某个单元格的方法,需要的朋友可以参考下 有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法. 基本的代码结构 代码如下: data = xlrd.open_workbook(EXCEL_PATH) table = data.sheet_by_index(0) lines = table.nrows cols = table.

Python使用xlrd读取Excel格式文件的方法_python

本文实例讲述了Python使用xlrd读取Excel格式文件的方法.分享给大家供大家参考.具体如下: 使用xlrd能够很方便的读取excel文件内容,而且这是个跨平台的库,能够在windows,linux/unix,等平台上面使用,代码如下: import xlrd fname = "sample.xls" bk = xlrd.open_workbook(fname) shxrange = range(bk.nsheets) try: sh = bk.sheet_by_name(&qu

Python中使用第三方库xlrd来读取Excel示例_python

本篇文章介绍如何使用xlrd来读取Excel表格中的内容,xlrd是第三方库,所以在使用前我们需要安装xlrd.另外我们一般会使用xlwt来写Excel,所以下一篇文章我们会来介绍如何使用xlwt来写Excel.xlrd下载:xlrd 0.8.0 安装xlrd 安装xlrd,只需运行setup即可,另外你也可以直接解压缩到你的project中,也可以直接用 xlrd的API 获取Excel,这里称之为work book 复制代码 代码如下: open_workbook(file_name) 获取

一文贯通python文件读取

不论是数据分析还是机器学习,乃至于高大上的AI,数据源的获取是所有过程的入口. 数据源的存在形式多为数据库或者文件,如果把数据看做一种特殊格式的文件的话,即所有数据源都是文件.获得数据,就是读取文件的操作,文件有各种各样的格式即数据的组织形式,如何方便快捷地获取文件中的内容呢? 还是那句名言,life is short, just use python. 操作基础 在python 中,文件的操作分为面向目录和面向文件的,本质都是一样的. 面向目录的常见操作见下表: 面向文件的常见操作见下表: 在

Python Module_openpyxl_处理Excel表格

目录 目录 前言 软件系统 Install openpyxl module Sample code load_workbook加载Excel文件 wbObjectget_sheet_names 获取Excel表格名 WorkbooktableName 定位Excel表 WbObjectget_sheet_by_namesheetName 定位Excel表 Worksheetrows和Worksheetcolumns获取表格的行列值 获取Worksheet的行列数目 通过切片运算符划分表格区域 g

Python文件读取的3种方法及路径转义

  这篇文章主要介绍了Python文件读取的3种方法及路径转义,本文分别给出读取文件的代码实例,最后讲解了路径转义的相关知识.小技巧,需要的朋友可以参考下 1.文件的读取和显示 方法1: 代码如下: f=open(r'G:2.txt') print f.read() f.close() 方法2: 代码如下: try: t=open(r'G:2.txt') print t.read() finally: if t: t.close() 方法3: 代码如下: with open(r'g:2.txt'

python实现查找excel里某一列重复数据并且剔除后打印的方法

  本文实例讲述了python实现查找excel里某一列重复数据并且剔除后打印的方法.分享给大家供大家参考.具体分析如下: 在python里面excel的简单读写操作我这里推荐使用xlrd(特别是读操作) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 import xlrd def open_excel(fileName="simple.xls"): try: fileHandler = xlrd.op

list-!求助:python 列表读取时的问题

问题描述 !求助:python 列表读取时的问题 project euler problem 81题我写了下面的代码,origin里面是5x5的矩阵,运行结果正常但是我把origin换成一个80x80的矩阵的时候,在读取383568的时候却读取成了326735我没有找出代码的问题,但是在codepad和terminal上运行也是错误答案求助大牛啊!!大恩不言谢 origin = ['13167323410318' '20196342965150' '630803746422111' '53769

注释行及空行-如何才能实现python文件读取中对注释行的识别

问题描述 如何才能实现python文件读取中对注释行的识别 本人有一个任务,要求用python读取某一文件中的注释行,空行和编码行,哪位大神知道怎么做,求教 解决方案 主要是按行读取,然后就是写出判断逻辑来勘测行是否为注视行,空行,编码行 解决方案二: 主要是按行读取,然后就是写出判断逻辑来勘测行是否为注视行,空行,编码行 解决方案三: python读取文件指定行(linecache模块)python读取文件指定行(linecache模块)python读取文件末尾N行 解决方案四: 学习一下!!

python如何读取bz2压缩包文件

问题描述 python如何读取bz2压缩包文件 目前代码: from bz2 import BZ2File as b2f import tarfile fp = b2f("G:/30.json.bz2") line = fp.readline() print(line) 报如下错误: Traceback (most recent call last): File "C:/Users/Andy/PycharmProjects/Data cleaning/bz2.py"