betway必威-betway必威官方网站
做最好的网站

设置第三方库,Python那样操作能积攒100多万行的

问题:使用python操作Excel,哪个库比较方便易学?

数据处理是 Python 的一大应用场景,而 Excel 则是最流行的数据处理软件。因此用 Python 进行数据相关的工作时,难免要和 Excel 打交道。

如果excel文件是xls,2003版的,使用xlrd和xlwt库来对xls文件进行操作

回答:

如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行处理,Excel 也支持此格式。但标准的 Excel 文件(xls/xlsx)具有较复杂的格式,并不方便像普通文本文件一样直接进行读写,需要借助第三方库来实现。

如果excel文件是xlsx,2007以上版的,使用openpyxl库来对xlsx文件进行操作

推荐Pandas库,因为无论是用Python做数据分析还是用Python做机器学习,Pandas都是用得比较多的,个人感觉是也最方便。

常用的库是 python-excel 系列:

Tips:xlrd、xlwt和openpyxl非python自带库,需要进行安装,可以查看我之前的文章。

以下从5个方面回答:

       xlrd、xlwt、xlutils、openpyxl

如果你在学习Python的过程当中有遇见任何问题,可以加入我的python交流学习qq群:683380553,多多交流问题,互帮互助,群里有不错的学习教程和开发工具。学习python有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我,如果你准备学习大数据,也欢迎加入大数据学习交流qq群683380553,每天与大家分享学习资源哦。

  1. 安装Pandas

  2. 数据源

  3. 利用Python读取Excel文件

  4. 利用Python做数据透视

  5. 将数据保存到Excel文件

  • xlrd - 读取 Excel 文件

  • xlwt - 写入 Excel 文件

  • xlutils - 操作 Excel 文件的实用工具,如复制、分割、筛选等

  • openpyxl  - 操作xlsx后缀的excel,实践发现 xlrd、xlwt、xlutils 可以读写操作elsx文件,但是实际保存后打不开,修改后缀为xls后方可正常打开,而程序是完成了正常的读写操作,只是人为不能正常打开文件,所以这里要增加一个新的模块。。

我们使用Python做数据挖掘和分析时候,当数据行超过一定数量,xls文件是存不下的。显然无法满足我们的大量数据存储需求,这个时候需要改用xlsx。

安装Pandas

 安装

1、下载地址:

  

  

  

  

  必威 1

 

 

 2、安装

  2.1、安装xlrd,

    方法一:

    切换到源文件下,执行命令 python setup.py install

    必威 2

    成功后会在 site-packages下新增xlrd文件夹及文件

    必威 3

  2.2、安装xlwt

    方法二:

    切换到源文件下,执行命令 pip install xlwt-1.3.0-py2.py3-none-any.whl

    必威 4

    安装成功后,会在site-packages下新增xlwt文件夹及文件

  2.3、安装xlutils 

     切换到源文件下,执行命令 pip install xlutils-2.0.0-py2.py3-none-any.whl

     必威 5

      安装成功后,会在site-packages下新增xlutils文件夹及文件

  2.4、安装 openpyxl  

    切换到源文件下,执行命令 python setup.py install

      必威 6

 

    安装成功后下列目录下会生成对应的文件夹及文件。

     必威 7

 

 

 

那具体xls和xlsx最大分别可以存多少行呢?

在cmd窗口中,输入命令:pip install pandas

   

 

对于2003版本的xls文件,最大行数是65536行

必威 8

对于2007版本的xlsx文件,最大行数是1048576行

数据源

闲话不多聊,直接上代码干货

例如,Excel文件Bank_Data.xlsx中有以下数据:

#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 读写2007 excel import pprint import openpyxl import openpyxl.styles from openpyxl.styles import Font,colors # 读取Excel文件 def readExcel: workbook = openpyxl.load_workbook worksheet = workbook['用户'] list = [] for row in worksheet.rows: # 1行1行读 lineData = [] # 行数据 col = 1 for cell in row: lineData.append(cell.value) # 1列1列读 col = col 1 list.append return list # 操作数据 def operateData: list = readExcel # 去除第一行,第一行是表头 list.pop pprint.pprint pprint.pprint("先按性别排序,再按身高排序") # 要对身高进行排序,但是男女有别 # 先按性别排序,再按身高排序 list.sort(key=lambda ele: (ele[3], ele[4])) pprint.pprint # 获取Excel标签列表 # 比如第5行标签列表,总共4列 ['A5', 'B5', 'C5', 'D5'] def getTagList(index, colNum): tagList = [] for i in range(0, colNum): # A的ascii码值65 tag = chr str tagList.append return tagList #写入Excel文件 def writeExcel(outputFilePath, list): book = openpyxl.Workbook() sheet = book.create_sheet sheet.title = "用户" # sheet名称 rowNum = len try: # 1行1行读取 for i in range(1, rowNum 1): # 下标从1开始 datalist = list[i -1] # 读取1行 col = 1 # 1列1列写入 for data in datalist: sheet.cell(i, col, data) #写入内容 col = 1 # 获取标签列表 tagList = getTagList(i, len) font = Font('微软雅黑', size = 14, color = '333333') # 设置单元格字体、字号、颜色 for tag in tagList: sheet[tag].font = font #必威, 设置字体 # 保存文件 book.save(outputFilePath) except Exception as e: # 捕获异常 print # 主函数 if __name__ == "__main__": print("读取xlsx格式的数据") userList = readExcel('user.xlsx') print("写入xlsx文件") writeExcel("user2.xlsx", userList) print operateData('user.xlsx')

必威 9

必威 10

利用Python读取Excel文件

首先,需要读取Excel文件中的数据,有两种方式:

1、读取Excel文件的第一种方式

bankdata=pd.read_excel('../data/Bank_Data.xlsx',sheet_name='bankdata',index_col='银行编号')
bankdata.head()

本文由betway必威发布于电脑教程,转载请注明出处:设置第三方库,Python那样操作能积攒100多万行的

TAG标签: betway必威 必威
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。