zoukankan      html  css  js  c++  java
  • Python操作excel

    #读取excel
    # import xlrd #导入读excel的模块
    # book = xlrd.open_workbook('szz.xls') #建立excel链接
    # sheet = book.sheet_names() #获取所有的sheet页
    # sheet = book.sheet_by_index(0) #根据sheet页的位置取sheet页
    # sheet = book.sheet_by_name('stu') #根据sheet页的名字取sheet页
    # print(sheet.nrows) #获取sheet里面的行
    # print(sheet.ncols) #获取sheet页里面的列
    # print(sheet.row_values(0)) #获取第0行的数据
    # print(sheet.col_values(0)) #获取第0列的数据
    # print(sheet.cell(1,1).value) #获取第二列第二行数据

    # 实例操作(读取excel里面的内容):

    import xlrd
    book = xlrd.open_workbook('szz.xls')
    sheet = book.sheet_by_index(0) #根据sheet页的位置取sheet页
    list = []
    for i in range(1,sheet.nrows): #i代表的是每一行,因为第一行是比奥拓,所以从第二行开始循环
    d = {}
    name = sheet.cell(i,0).value #行是循环出的数据、不固定的
    age = sheet.cell(i,1).value
    sex = sheet.cell(i,2).value
    score = sheet.cell(i,3).value
    d['name']=name
    d['age']=int(age)
    d['sex']=sex
    d['score']=score
    list.append(d)
    print(list)
    #结果是这样的:[{'sex': '女', 'score': 89.9, 'name': 'mary', 'age': 20}, {'sex': '女', 'score': 88.0, 'name': 'mary1', 'age': 30}, {'sex': '女', 'score': 100.0, 'name': 'mary2', 'age': 40}]


    # 写excel
    import xlwt
    book = xlwt.Workbook() #新建一个excel对象
    sheet = book.add_sheet('stu') #添加一个sheet页
    # lis = [{'name':'Nancy','sex':'女','age':'33'},{'name':'tom','sex':'男','age':'40'}]
    # sheet.write(0,0,'name') #在第一行第一列写入name
    # book.save('stu.xls') #保存excel文件

    #实例(将list、title写入excel内)
    # list = [{'sex': '女', 'score': 89.9, 'name': 'mary', 'age': 20},
    # {'sex': '女', 'score': 88.0, 'name': 'mary1', 'age': 30},
    # {'sex': '女', 'score': 100.0, 'name': 'mary2', 'age': 40}]
    # title = ['姓名','性别','成绩'] #表头
    # for i in range(len(title)): #处理表头,title多长,就循环几次
    # sheet.write(0,i,title[i]) #i是list的下标,也是代表每一列
    #
    # for row in range(len(list)): #取list的长度,控制循环次数
    # name = list[row]['name']#list里面存的是字典,list[row]就代表list里面的字典,然后在字典里取值:姓名
    # sex = list[row]['sex'] #性别
    # age = list[row]['age'] #年龄
    # new_row = row+1 #第一行已经写了表头,这里要从第二行开始写,因此row要加1
    # sheet.write(new_row,0,name) #在第new_row行第一列写入name值(列是固定的,行是循环的)
    # sheet.write(new_row,1,sex)
    # sheet.write(new_row,2,age)
    # book.save('stu1.xls') #保存为stu1.xls文件(必须是xls的)
    结果:



  • 相关阅读:
    Jquery学习系列-制作Menu
    关于javascript里的parseInt() 与 parseFloaat() 文本转换为数字
    javascript简述
    【代码片段】HTML5基本结构及常用默认模版
    赋值运算符
    【代码片段】jQuery实现页面滚动时层智能浮动定位Fixed Floating Elements
    【代码片段】formLogin
    算数运算符
    关于javascript里的toFixed()方法格式化数字
    关于javascript里的setTimerout()设定时间
  • 原文地址:https://www.cnblogs.com/ermm/p/7122794.html
Copyright © 2011-2022 走看看