• Python之操作Excel


    使用之前先导入三个模块:

    import xlwt  #只能写Excel
    import xlrd   #只能读Excel
    import xlutils  #修改Excel,在原来的基础上修改

    一、写EXCEL

    book=xlwt.Workbook()  #新建一个Excel
    sheet=book.add_sheet('sheet1')#建一个sheet页
    sheet.write(0,0,'id')#指定行和列,写内容
    sheet.write(0,1,'username')
    sheet.write(0,2,'password')
    
    sheet.write(1,0,'1')
    sheet.write(1,1,'xiaoming')
    sheet.write(1,2,'123456')
    
    book.save('stu.xls')#保存内容
    #注意:要保存成结尾时.xls的文件,.xlsx用微软的文件打不开,只能用WPS的打开

    使用循环方式写入内容:

    #给定文件内容:
    stus=[
        [1,'njf','1234'],
        [2,'xiaojun','1234'],
        [3,'hailong','1234'],
        [4,'xiaohei','1234'],
        [5,'xiaohei','1234'],
        [6,'xiaohei','1234'],
        [7,'xiaohei','1234'],
        [8,'xiaohei','1234'],
        [9,'xiaohei','1234'],
    ]
    
    #内容写入Excel
    book=xlrt.Workbook() #新建一个Excel
    sheet=book.add_sheet('sheet1') #新建一个sheet页
    
    line=0 #控制的是行
    for stu in stus:
        col=0 #控制列
        for s in stu:
            sheet.write(line,col,s)
            col+=1
        line+=1
    
    book.save('stu.xls') #保存内容

    二、读EXCEL

    import xlrd
    
    book=xlrd.open_workbook('stu.xls') #打开Excel
    sheet=book.sheet_by_index(0) #根据编号获取sheet页
    #sheet=book.sheet_by_name('sheet1') #也可以根据sheet页名字获取sheet页
    
    print(sheet.nrows) #Excel里有多少行
    print(sheet.ncols)  #Excel里有多少列
    
    print(sheet.cell(0,0).value) #获取到指定单元格的内容
    print(sheet.cell(0,1).value) #获取到指定单元格的内容
    
    print(sheet.row_values(0))  #获取到整行的内容
    print(sheet.col_values(0))   #获取到整列的内容
    
    for i in range(sheet.nrows):  #循环获取每行的内容
        print(sheet.row_values(i))

    三、修改EXCEL

    由于xlwt模块只能写一次,再重新打开Excel后会覆盖原来的内容;而xlrd模块只能读,因此修改Excel就要使用xlutils模块了。

    #import xlutils
    import xlrd   #两个模块配合使用
    from xlutils import copy
    
    book=xlrd.open_workbook('stu.xls')
    #先用xlrd打开一个Excel
    new_book=copy.copy(book)
    #然后用xlutils里面的copy功能,复制一个Excel
    
    sheet=new_book.get_sheet(0) #获取sheet页,注意这里的sheet页是xlutils里的,只能用.get_sheet()的方法获取了
    
    sheet.write(0,1,'小明')
    
    new_book.save('stu.xls') #修改完内容后再保存成同名的Excel
    每天进步一点点,快乐生活多一点。
  • 相关阅读:
    记一次小程序之旅
    基于supervisor秒级Laravel定时任务
    如何在Ubuntu16.04 中安装Linux, Nginx, MySQL, PHP (LEMP 栈)
    从CSV文件中读取jpg图片的URL地址并多线程批量下载
    关于PHP程序员解决问题的能力
    Laradock 快速搭建PHP开发环境
    array_map 等php回调函数使用问题(关联数组下标获取)
    Laravel-Action 对代码的改造
    Sessions共享技术设计
    scrapy 写文件进行debug调试
  • 原文地址:https://www.cnblogs.com/yiruliu/p/9718901.html
Copyright © 2020-2023  润新知