python学习笔记(十):操作excel

一、python操作excel,python操作excel使用xlrd、xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的。这几个模块使用pip安装即可,下面是这几个模块的使用。

 二、xlrd模块,xlrd模块用来读excel,具体用法如下

            import xlrd
            #打开excel
            wb=xlrd.open_workbook(‘abc.xlsx‘)#打开的这个excel必须存在,否则会报错
            #获取所有sheet页的名字
            print(wb.sheet_names())
            #按名字查找第二张表单
            # sheet=wb.sheet_by_name(‘abc2‘)#根据sheet页的名字获取sheet页
            sheet = wb.sheet_by_index(0)#根据sheet页的索引获取sheet页
            #获取sheet页的行数和列数
            print(sheet.nrows)
            print(sheet.ncols)
            #打印每行信息
            for rownum in range(sheet.nrows):  #循环取每行的数据
                print(sheet.row_values(rownum))#取每行的数据
            #按照索引打印对应单元格内容
            cell_A2=sheet.cell(0,1).value#获取指定单元格的值,第一个值是列,第二个值是行
            print(cell_A2)

三、xlwt模块,xlwt模块用来写excel,写一个新的excel

        import xlwt
        title = [
            ‘姓名‘,‘年龄‘,‘性别‘,‘分数‘
        ]
        stus = [[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9],[‘mary‘,20,‘女‘,89.9]]
        #新建一个excel对象
        wbk = xlwt.Workbook()
        #添加一个名为 课程表的sheet页
        sheet = wbk.add_sheet(‘stu‘)
        for i in  range(len(title)):#写入表头
            sheet.write(0,i,title[i])#写入每行,第一个值是行,第二个值是列,第三个是写入的值
        for i in range(len(stus)):
            if i !=0:#如果不是表头的话
                for j in range(4):
                    sheet.write(i,j,stus[i][j])#循环写入每行数据
        #保存数据到‘test.xls’文件中
        wbk.save(‘szz.xls‘)#保存excel必须使用后缀名是.xls的,不是能是.xlsx的

四、xlutils模块xlutils模块用来修改excel的内容,不能直接修改原来的excel内容,必须得先复制一个新的excel,然后对这个新的excel进行修改,用法如下:

        from xlrd import open_workbook#导入xlrd模块中打开excel模块
        from xlutils.copy import copy#导入xlutils模块的复制excel模块
        rb = open_workbook(‘szz.xls‘)
        #通过sheet_by_index()获取的sheet
        rs = rb.sheet_by_index(0)
        #复制一个excel
        wb = copy(rb)
        #通过获取到新的excel里面的sheet页
        ws = wb.get_sheet(0)
        ws.write(1, 0, ‘Lily‘)#写入excel,第一个值是行,第二个值是列
        wb.save(‘szz_new.xls‘)#保存新的excel,保存excel必须使用后缀名是.xls的,不是能是.xlsx的

原文地址:https://www.cnblogs.com/hanzhao1987/p/8215611.html

时间: 2024-11-10 10:43:06

python学习笔记(十):操作excel的相关文章

python学习笔记十——异常处理

1.try: command except 错误类型,记录错误信息变量: command finally: command try...finally的用处是无论是否发生异常都要确保资源释放代码的执行.一般来说,如果没有发生错误,执行过try语句块之后执行finally语句块,完成整个流程.如果try语句块发生了异常,抛出了这个异常,此时就马上进入finally语句块进行资源释放处理.如下从几个细节讨论finally的特性. 1).try中的return: 当在try语句块中含有return语句

python学习笔记-day7-【python操作数据库】

上次说到了Python操作数据库,这里继续补充python操作数据库,如何获取数据表里的所有字段值以及将数据导出来到excel里,作为excel表表头. 一.上次说到封装一下mysql的操作 1.装一下函数执行数据库操作 #封装一下函数执行数据库操作def my_db(host,user, passwd, db,sql, port=3306, charset='utf8'): import pymysql conn = pymysql.connect(user=user,host=host,po

python学习笔记十六 django深入学习一

django 请求流程图 django 路由系统 在django中我们可以通过定义urls,让不同的url路由到不同的处理函数 from . import views urlpatterns = [ url(r'^articles/2003/$', views.special_case_2003), #精确匹配 url(r'^articles/([0-9]{4})/$', views.year_archive), #动态路由 url(r'^articles/([0-9]{4})/([0-9]{2

python学习笔记文件操作(六)

1.文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 如下文件: 2017-03-24 11:25:06:349 - info: [debug] [AndroidBootstrap] Sending command to android: {"cmd":"shutdown"} 2017-03-24 11:25:06:355 - info: [debug] [AndroidBootstrap] Received command 

python学习笔记——列表操作

python列表操作--增 append:追加一条数据到列表的最后 name = ["Zhangsan","XiongDa","Lisi"] name.append("wangwu") print name 输出结果: ['Zhangsan', 'XiongDa', 'Lisi', 'wangwu'] insert:指定位置插入一条数据 name = ["Zhangsan","XiongDa&qu

python学习笔记十五 web框架

python Web程序 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. Python的WEB框架分为两类: 自己写socket,自己处理请求 基于wsgi(Web Server Gateway Interface WEB服务网关接口,实现socket功能),自己处理请求 如图示: 自己写的web框架 #!/usr/bin/env python #coding:utf-8 import socket def handle_req

Python学习笔记——文件操作

python中,一切皆对象.   一.文件操作流程 (1)打开文件,得到一个文件句柄(对象),赋给一个对象: (2)通过文件句柄对文件进行操作: (3)关闭文件. 文件对象f通过open()函数来创建. open函数常用的三个参数:文件路径/名称.模式.encoding. 1 f = open('测试文件','r',encoding='utf-8') 2 print(f.read()) 3 f.close() 二.open函数中模式参数的常用值 值 描述 'r' 读模式 'w' 写模式 'a'

python学习笔记十五 django基础

Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 1.创建django程序 通过命令行 django-admin startproject mysite 创建project 一个工程可以包含多个app,app共用一个project的配置文件 cd mysite python manage.py startapp app01 创建app01 pyt

python学习笔记(十四): unittest

Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作. 在说unittest之前,先说几个概念: TestCase 也就是测试用例 TestSuite 多个测试用例集合在一起,就是TestSuite TestLoader是用来加载TestCase到TestSuite中的 TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信

Python学习笔记十五_开发接口

1.mock接口,模拟一些接口,在别的接口没有开发好的时候,你需要用它 假的支付接口,模拟支付成功 2. 3.查看数据,避免直接操作数据库flask web开发框架 实例化server 装饰器,下面的函数变为一个接口 启动服务 import flask,json #__name__代表当前这个python文件 server = flask.Flask(__name__)#实例化server,把当前这个python文件,当做一个服务 def my_db(sql): import pymysql c