首页 > 其他分享 >数据量大,快速读取

数据量大,快速读取

时间:2023-01-05 10:25:05浏览次数:46  
标签:sheet 读取 df cell 获取 数据量 time print 快速

https://cloud.tencent.com/developer/article/1661483

 

1.pandas读取

# 1.导入pandas模块
import pandas as pd

# 2.把Excel文件中的数据读入pandas
df = pd.read_excel('Python招聘数据(全).xlsx')
print(df)
# 3.读取excel的某一个sheet
df = pd.read_excel('Python招聘数据(全).xlsx', sheet_name='Sheet1')
print(df)
# 4.获取列标题
print(df.columns)
# 5.获取列行标题
print(df.index)
# 6.制定打印某一列
print(df["工资水平"])
# 7.描述数据
print(df.describe())
import time
t1 = time.time()
for indexs in df.index:
    print(df.loc[indexs].values[0:-1])
t2=time.time()
print("使用pandas工具包遍历12000行数据耗时:%.2f 秒"%(t2-t1))

 

2.openpyxl

from openpyxl import load_workbook
# 1.打开 Excel 表格并获取表格名称
workbook = load_workbook(filename="Python招聘数据(全).xlsx")
print(workbook.sheetnames)
# 2.通过 sheet 名称获取表格
sheet = workbook["Sheet1"]
print(sheet)
# 3.获取表格的尺寸大小(几行几列数据) 这里所说的尺寸大小,指的是 excel 表格中的数据有几行几列,针对的是不同的 sheet 而言。
print(sheet.dimensions)
# 4.获取表格内某个格子的数据
# 1 sheet["A1"]方式
cell1 = sheet["A1"]
cell2 = sheet["C11"]
print(cell1.value, cell2.value)
"""
workbook.active 打开激活的表格; sheet["A1"] 获取 A1 格子的数据; cell.value 获取格子中的值;
"""
# 4.2sheet.cell(row=, column=)方式
cell1 = sheet.cell(row = 1,column = 1)
cell2 = sheet.cell(row = 11,column = 3)
print(cell1.value, cell2.value)

# 5. 获取一系列格子
# 获取 A1:C2 区域的值
cell = sheet["A1:C2"]
print(cell)
for i in cell:
   for j in i:
       print(j.value)

  

import time
t1 = time.time()
for i in sheet.iter_rows(min_row=1, max_row=12256, min_col=1, max_col=10):
   for j in i:
       print(j.value)
t2=time.time()
print("使用openpyxl工具包遍历12000行数据耗时:%.2f 秒"%(t2-t1))

  

3.xlrd

xlrd是xlrd&xlwt&xlutils三个库中的一个:

xlrd:用于读取 Excel 文件;xlwt:用于写入 Excel 文件;xlutils:用于操作 Excel 文件的实用工具,比如复制、分割、筛选等;

# 导入 xlrd 库
import xlrd
# 打开刚才我们写入的 test_w.xls 文件
wb = xlrd.open_workbook("Python招聘数据(全).xlsx")
# 获取并打印 sheet 数量
print( "sheet 数量:", wb.nsheets)
# 获取并打印 sheet 名称
print( "sheet 名称:", wb.sheet_names())
# 根据 sheet 索引获取内容
sh1 = wb.sheet_by_index(0)
# 也可根据 sheet 名称获取内容
# sh = wb.sheet_by_name('成绩')
# 获取并打印该 sheet 行数和列数
print( u"sheet %s 共 %d 行 %d 列" % (sh1.name, sh1.nrows, sh1.ncols))
# 获取并打印某个单元格的值
print( "第一行第二列的值为:", sh1.cell_value(0, 1))
# 获取整行或整列的值
rows = sh1.row_values(0) # 获取第一行内容
cols = sh1.col_values(1) # 获取第二列内容
# 打印获取的行列值
print( "第一行的值为:", rows)
print( "第二列的值为:", cols)
# 获取单元格内容的数据类型
print( "第二行第一列的值类型为:", sh1.cell(1, 0).ctype)

  

# # 遍历所有表单内容
import time
t1 = time.time()
for sh in wb.sheets():
    for r in range(sh.nrows):
        # 输出指定行
        print( sh.row(r))
t2=time.time()
print("使用xlrd工具包遍历12000行数据耗时:%.2f 秒"%(t2-t1))

  

 

标签:sheet,读取,df,cell,获取,数据量,time,print,快速
From: https://www.cnblogs.com/dadashui/p/17026800.html

相关文章

  • 前端时间xls表格数据读取和录入
    给了一份表格让把表格里的数据录到系统里,数据有7百多条,表单还很长所以简单写了一个脚本方便快速录入数据,主要用到了js读取表单首先 文件上传<in......
  • 操作系统-内存管理-内存读取
    文章大部分表述图片来自:https://www.jeanleo.com/2021/07/06/linux内存管理剖析/。非原创内存是如何给读取的计算机上电启动的时候,BIOS会检测并计算物理内存大小......
  • 5分钟快速掌握 Python 定时任务框架
    APScheduler简介在实际开发中我们经常会碰上一些重复性或周期性的任务,比如像每天定时爬取某个网站的数据、一定周期定时运行代码训练模型等,类似这类的任务通常需要我们手......
  • 前端菜鸟如何快速开发个人产品
    我是车辙,我的掘金小册《SkyWalking:应用监控和链路跟踪》已经上线啦,这是我的第一本电子书,欢迎大家订阅。大家好,我是车辙。在完成小册后的一段时间,我突然想开发一款个人H5......
  • 写给大忙人看的Go语言快速指南(中文翻译)
    Go是一种非常受欢迎的编程语言,它具有内置的并发支持和众多其他优秀的特性。在众多现代语言中,Go在基本语言设计方面格外出众。首先,Go是一种非常简洁的语言,它的简洁性使其与......
  • 使用Jmeter读取和使用Redis数据
    前言消息队列和缓存是目前主流的中间件,我们在日常测试过程中,无论是接口还是压力测试,都会遇到需要处理这些中间件数据的情况。本文以Redis对缓存做一个简单的介绍,并基于Jme......
  • FreeSWITCH无法读取wav文件
    错误日志如下:190032016-10-0613:18:27.223464[ERR]switch_core_file.c:260Invalidfileformat[wav]for[/usr/local/freeswitch/sounds/music/8000/suite-espan......
  • 《Unity3D平台AR开发快速上手--基于EasyAR4.0》随书资源和相关说明
    新手《Unity3D平台AR开发快速上手–基于EasyAR4.0》上市了,现在京东和淘宝都有卖。书分为2个部分,第一部分是EasyAR4.0基础内容和使用,第二部分是利用EasyAR的稀疏空间地图做室......
  • 《Unity2018AR与VR开发快速上手》随书内容资源相关说明
    我的第二本书,《Unity2018AR与VR开发快速上手》终于上市了,现在天猫和京东都有卖。随书资源的百度盘链接被关闭了,只给了个“此链接分享内容可能因为涉及侵权、色情、反动、低......
  • uniapp有vue基础的_快速入门这个uniapp项目
     小技巧https://www.jianshu.com/p/606e37db18f3https://cloud.tencent.com/developer/article/1552020https://www.uviewui.com/guide/i18n.htmlhttps://juejin.cn/......