博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python大佬养成计划----excel操作
阅读量:6148 次
发布时间:2019-06-21

本文共 2591 字,大约阅读时间需要 8 分钟。

namedtuple新型数据类型

Python中存储系列数据,比较常见的数据类型有list,除此之外,还有tuple数据类型.tuple元组的item只能通过index访问,collections模块的namedtuple子类不仅可以使用item的index访问item,还可以通过item的name进行访问。可以将namedtuple理解为c中的struct结构,其首先将各个item命名,然后对每个item赋予数据。

from collections import namedtuple#python自带namedtuple使用说明#def namedtuple(typename, field_names, *, verbose=False, rename=False, module=None):    # - typename: 元组名称    # - field_names : 元组中元素的名称    # - rename: 如果元素名称中包含python关键字, 必须设置rename=TrueInfo = namedtuple('Users',['name','age','college'])userone = Info('sheen',16,'xupt')print(userone,type(userone))print(userone.name)

图片描述

openyxl模块

是python的第三方库,对xlsx格式的Excel文档进行操作

Excel基本信息

  • 工作薄(workbook)
  • 工作表(sheet)
  • 活动表(active sheet)
  • 行(row): 1,2,3,4,5,6.......
  • 列(column): A,B,C,D........
  • 单元格(cell): B1, C1

python与excel

import openpyxl#1.加载excel文档workbo = openpyxl.load_workbook("example.xlsx")#
all_sheet = workbo.sheetnames #显示所有的工作表,['Sheet1', 'Sheet2', 'Sheet3', 'Sheet4']active_sheet = workbo.active #显示活动表,
#2.选择要操作的工作表sheet = workbo['Sheet1'] #选择要操作的工作表title_sheet = sheet.title #获取工作表名称,Sheet1#3.查看指定的单元格信息cell_b1 = sheet.cell(row=1,column=2) #查找指定单元格信息,返回一个对象,
value_b1 = cell_b1.value #查看指定单元格内容,17#4.获取工作表的行数和列数max_row = sheet.max_row #获取工作表行数max_column = sheet.max_column #获取工作表列数#5.修改工作表信息和单元格信息sheet.title = 'family_info' #修改工作表的标题sheet['B1'] = 100 #修改单元格值#6.访问所有单元格信息info_row = sheet.rows #返回的是一个生成器,
for row in info_row: #遍历工作表,拿出每一个值 for column in row: print(column.value,end=' ') print()#7.保存修改信息workbo.save(filename='modify.xlsx')

图片描述

图片描述
图片描述

excel再排序

根据表格内容再次排序,并保存到新的文件中

# 需求:# 商品名称    商品价格    商品数量# - 定义一个函数, readwb(wbname, sheetname=None)# - 如果用户指定sheetname就打开用户指定的工作表, 如果没有指定, 打开active sheet;# -  根据商品的价格进行排序(由小到大), 保存到文件中;商品名称:商品价格:商品数量import openpyxldef readwb(wbname,sheetname=None):    workbo = openpyxl.load_workbook(wbname)    if not sheetname:        sheet = workbo.active    else:        sheet = sheetname    wb_info = []    for row in sheet.rows:        row_info = [val.value for val in row]        wb_info.append(row_info)    return sorted(wb_info,key=lambda item:item[1])def save_to_excel(data,wbname,wbsheet='Sheet1'):    workbo = openpyxl.Workbook()    sheet = workbo.active    for row_index,row in enumerate(data):        for column_index,cell_value in enumerate(row):            sheet.cell(row=row_index+1,column=column_index+1,value=cell_value)    workbo.save(wbname)excel_info = readwb('Book1.xlsx')save_to_excel(excel_info,'Book1_modify.xlsx')

图片描述

图片描述

转载地址:http://vgmya.baihongyu.com/

你可能感兴趣的文章
python 解析 XML文件
查看>>
MySQL 文件导入出错
查看>>
java相关
查看>>
由一个异常开始思考springmvc参数解析
查看>>
向上扩展型SSD 将可满足向外扩展需求
查看>>
jenkins updatecenter更新插件有问题
查看>>
我的友情链接
查看>>
SQL Server -- T-SQL 编码标准
查看>>
分布式文件系统MogileFS介绍
查看>>
linux下如何挂接(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享...
查看>>
shell逻辑控制语句之case
查看>>
34.CSS传统布局【上】
查看>>
私.01.serialport
查看>>
使用LocalBroadcastManager
查看>>
测试开发面试准备之HTTP协议-一次完整的Http请求过程
查看>>
Linux学习笔记11—VSFTP的搭建
查看>>
Python学习(18)面向对象
查看>>
Django级联删除的选项
查看>>
new option
查看>>
ES6初探,什么是ES6
查看>>