python 读取Excel文件 可以使用 xlrd
首先我们要做准备工作,下载 xlrd
#导包
import xlrd
我使用的是pycharm 熟称的python的IDE(功能强大) 自动下载项目中所需要的包(看不清就浏览器放大就ok了)
我们打开Excel用到是
file= u'D:\\test\\学信网zh.xlsx'
xlrd.open_workbook(file)
然后需要的解析Excel表格
我们在解析Excel 表格时 ,主要利用的是一个类似二维数组的方式,一般的Excel表格,第一行一般是表头,,如果你的没有表头那就解析起来更加简单。我们以有表头的为例:
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
完整代码:
自己写的一个测试方法,我用的是本地的一个Excel表格,根据个人不同,修改路径
#-*- coding=utf-8 -*-
import xlrd
def open_excel(file= 'file.xls'):
try:
data = xlrd.open_workbook(file)
return data
except Exception as e:
print(str(e))
def excel_table_byname(file= u'D:\\test\\学信网zh.xlsx',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): #也就是从Excel第二行开始,第一行表头不算
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_byname()
for row in tables:
print(row)
if __name__ =="__main__":
main()
本人也是python 初学,如有理解不周地方,可以相互交流学习