• 技术文章 >后端开发 >Python教程

    Python中几种存取xls/xlsx文件的方法总结

    不言不言2018-05-03 11:47:05原创2602
    这篇文章主要介绍了关于Python学习_几种存取xls/xlsx文件的方法总结,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

    想在深度学习程序运行时动态存下来一些参数。

    存成Excel文件查看方便,就查了几种方法,做个测试。因为我平常也不怎么用 Excel,简单的存取数据就够了。

    xlwt/xlrd库 存Excel文件:(如果存储数据中有字符,那么写法还有点小小的变化)

    import xlwt 
     
    workbook = xlwt.Workbook(encoding='utf-8') 
    booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True) 
    #存第一行cell(1,1)和cell(1,2) 
    booksheet.write(0,0,34) 
    booksheet.write(0,1,38) 
    #存第二行cell(2,1)和cell(2,2) 
    booksheet.write(1,0,36) 
    booksheet.write(1,1,39) 
    #存一行数据 
    rowdata = [43,56] 
    for i in range(len(rowdata)): 
     booksheet.write(2,i,rowdata[i]) 
    workbook.save('test_xlwt.xls')

    读Excel文件:(同样是对于数值类型数据)

    import xlrd
    workbook = xlrd.open_workbook('D:\\Py_exercise\\test_xlwt.xls')
    print(workbook.sheet_names())  #查看所有sheet
    booksheet = workbook.sheet_by_index(0) #用索引取第一个sheet
    booksheet = workbook.sheet_by_name('Sheet 1') #或用名称取sheet
    #读单元格数据
    cell_11 = booksheet.cell_value(0,0)
    cell_21 = booksheet.cell_value(1,0)
    #读一行数据
    row_3 = booksheet.row_values(2)
    print(cell_11, cell_21, row_3)
    >>>34.0 36.0 [43.0, 56.0]

    openpyxl 库 存Excel文件:

    from openpyxl import Workbook
     
    workbook = Workbook()
    booksheet = workbook.active #获取当前活跃的sheet,默认是第一个sheet
    #存第一行单元格cell(1,1)
    booksheet.cell(1,1).value = 6 #这个方法索引从1开始
    booksheet.cell("B1").value = 7
    #存一行数据
    booksheet.append([11,87])
    workbook.save("test_openpyxl.xlsx")

    读Excel文件:

    from openpyxl import load_workbook
     
    workbook = load_workbook('D:\\Py_exercise\\test_openpyxl.xlsx')
    #booksheet = workbook.active #获取当前活跃的sheet,默认是第一个sheet
    sheets = workbook.get_sheet_names() #从名称获取sheet
    booksheet = workbook.get_sheet_by_name(sheets[0])
    rows = booksheet.rows
    columns = booksheet.columns
    #迭代所有的行
    for row in rows:
     line = [col.value for col in row]
    #通过坐标读取值
    cell_11 = booksheet.cell('A1').value
    cell_11 = booksheet.cell(row=1, column=1).value

    原理上其实都一样,就写法上有些差别。

    其实如果对存储格式没有要求的话,我觉得存成 csv文件 也挺好的:

    import pandas as pd 
     
    csv_mat = np.empty((0,2),float) 
    csv_mat = np.append(csv_mat, [[43,55]], axis=0) 
    csv_mat = np.append(csv_mat, [[65,67]], axis=0) 
    csv_pd = pd.DataFrame(csv_mat) 
    csv_pd.to_csv("test_pd.csv", sep=',', header=False, index=False)

    因为它读起来非常简单:

    import pandas as pd 
     
    filename = "D:\\Py_exercise\\test_pd.csv" 
    csv_data = pd.read_csv(filename, header=None) 
    csv_data = np.array(csv_data, dtype=float)

    相关推荐:

    Python中XlsxWriter模块简介与用法分析


    以上就是Python中几种存取xls/xlsx文件的方法总结的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python xlsx 文件
    上一篇:Python绘制3D图形 下一篇:python调用xlsxwriter创建xlsx的方法
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 归纳总结Python函数进阶的使用方法• Python接口自动化测试必备基础之http协议详解• Python 3.11中的最佳新功能和功能修复• 实例详解Python面向对象的四大特征• Python数据分析之concat与merge函数(实例详解)
    1/1

    PHP中文网