python 下 xlrd openpyxl pandas 分别读取excel文件

上一篇 / 下一篇  2019-10-09 14:29:39 / 个人分类:接口自动化测试

自动化测试脚本这些东西很长时间没写,都忘记的差不多了,赶紧记录下来。以后用的时候看。。。。
以下分别用3个模块进行读取excel文件:
xlrd 实例如下(excel文件如下:test.xlsx):
importxlrd
importos
readpath=os.path.realpath(__file__)
findtruepath=os.path.split(readpath)[0]
joinpath=os.path.join(findtruepath,'TestFile','test.xlsx')
r=xlrd.open_workbook(joinpath)
y=r.sheet_names()
forsheetnamesiny:
sh = r.sheet_by_name(sheetnames)
forrowsinrange(sh.nrows):
print(sh.row_values(rows))
运行结果如下:
D:\myselfwork\venv\Scripts\python.exe D:/myselfwork/unittestTest/findxlrd.py
['序号', '学校名称', '学校地址']
[1.0, '王店镇马沟小学', '马沟村']
[2.0, '杜岗小学', '杜岗村']
[3.0, '马山小学', '马山镇']
['班级编号', '学校编号', '年级']
[1.0, 1.0, '一年级']
[2.0, 2.0, '二年级']
[3.0, 3.0, '三年级']

Process finished with exit code 0


openpyxl 模块和 xlrd 模块 读取excel文件
importopenpyxlasop
importos
importpandasaspd
importnumpyasnp
importxlrd


path = os.path.abspath('..')##绝对路径 返回到上一个文件目录
propath = os.path.join(path,'files','test.xlsx')
sh = xlrd.open_workbook(propath)
'''*************************pandas模块读取excel文件****************************'''
sheets = sh.nsheets
forsheetinrange(sheets):
df = pd.read_excel(propath,sheet_name= sheet,skiprows=0,dtype=np.str)
df = pd.read_excel(propath,sheet_name=0,skiprows=0)
data = []
foriindf.index.values:# 获取行号的索引,并对其进行遍历:
row_data = df.iloc[i].to_dict()
data.append(row_data)
print(data)


'''*********************openpyxl模块读取excel文件***********************'''
path = os.path.abspath('..')##绝对路径 返回到上一个文件目录
propath = os.path.join(path,'files','test.xlsx')
wb = op.load_workbook(propath)
name_list = wb.get_sheet_names()##获取文件中所有的sheet name
print(name_list)
fornameinname_list:##遍历sheetname
sheet_name = wb.get_sheet_by_name(name)##当sheeetname=一个sheetname时,读取里面的值
forrowinsheet_name.rows:
forcellsinrow:
print(cells.value)
print('********************')
运行结果分别如下:
F:\zdh\lianxi\venv\Scripts\python.exe F:/zdh/lianxi/ReadExcel/excel_openpyxl/readxls_openpyxl.py
[{'序号': 1, '学校名称': '王店镇马沟小学', '学校地址': '马沟村'}, {'序号': 2, '学校名称': '杜岗小学', '学校地址': '杜岗村'}, {'序号': 3, '学校名称': '马山小学', '学校地址': '马山镇'}]
['学校', '班级', 'Sheet3']
序号
学校名称
学校地址
********************
1
王店镇马沟小学
马沟村
********************
2
杜岗小学
杜岗村
********************
3
马山小学
马山镇
********************
班级编号
学校编号
年级
********************
1
1
一年级
********************
2
2
二年级
********************
3
3
三年级
********************
F:\zdh\lianxi\ReadExcel\files\stock_brief_option.xlsx

Process finished with exit code 0


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar