python操作Excel读写--使用xlrd

安装xlrd

下载地址:https://pypi.python.org/pypi/xlrd

 

 一、Excel读写基本操作

1.导入模块

import xlrd

 

2.打开excel文件读取数据

data = xlrd.open_workbook(excelPath)

 

3.使用方法

(1)获取工作表

table = data.sheets()[0] # 通过索引顺序获取
table = data.sheet_by_index(0) # 通过索引顺序获取、
table = data.sheet_by_name(u'Sheet1') # 通过名称获取

(2)获取整行整列的值

table.row_values(i)
table.col_values(i)

(3)获取行数和列数

nrows = table.nrows
ncols = table.ncols

(4)循环获取行列表数据

for i in range(nrows):
    print(table.row_values(i))

(5)循环获取行列表数据

cell_A1 = table.cell(0, 0).value
cell_C4 = table.cell(3, 2).value
#使用行列索引 cell_A1 = table.row(0)[0].value cell_A2 = table.col(1)[0].value

 

二、代码实例

 

import xlrd
def open_excel(file):
    try:
        data = xlrd.open_workbook(file)
        return data
    except Exception as e:
        print(str(e))

#根据索引获取Excel表格中的数据   参数:file:Excel文件路径     colnameindex:表头列名所在行的所以  ,by_index:表的索引
def excel_table_byindex(file,colnameindex=0,by_index=0):
    data = open_excel(file)
    table = data.sheets()[by_index]
    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

#根据名称获取Excel表格中的数据   参数:file:Excel文件路径     colnameindex:表头列名所在行的所以  ,by_name:Sheet1名称
def excel_table_byname(file,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():
   excelPath="F:\\pycharm\\IO\\data.xlsx"
   tables = excel_table_byindex(excelPath)
   for row in tables:
       print(row)

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

if __name__=="__main__":
    main()

 

 输出以下内容:

{'username': 'admin', 'password': 123456.0}
{'username': 'hjh', 'password': 'jpmark961203'}
{'username': 'admin', 'password': 123456.0}
{'username': 'hjh', 'password': 'jpmark961203'}

转载于:https://www.cnblogs.com/hjhsysu/p/5702285.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值