利用python处理百万条数据的案例

  介绍

这篇文章将为大家详细讲解有关利用python处理百万条数据的案例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强> 1,前言

因为负责基础服务,经常需要处理一些数据,但是大多时候采用awk以及java程序即可,但是这次突然有百万级数据需要处理,通过awk无法进行匹配,然后我又采用java来处理,文件一分为8同时开启8个线程并发处理,但是依然处理很慢,处理时长起码在1天+所以无法忍受这样的处理速度就采用python来处理,结果速度有了质的提升,大约处理时间为1个小时多一点,这个时间可以接受,后续可能继续采用大数据思想来处理,相关的会在后续继续更新。

<强> 2,安装python 

第一步首先下载python软件,在官网可以根据自己情况合理下载,大家也可以通过进行下载其余就是下一步搞的定,然后在开始里面找到python的exe,点击开然后输入1 + 1就可以看出是否安装成功了。如下图

利用python处理百万条数据的案例”>,</p> <p> <强> 3,理念编辑器如何使用python </强> <br/> </p> <p>首先我们在想法中打开设置然后点击插件,在里面有个输入框中输入python,根据提示找到如下的这个(概念版本不同可能影响python版本)</p> <p> <img src=

<强> 4,开发前知识准备

文件的读取,python读取文件非常的简单,我现在直接贴代码提供给大家

def  readData(文件名):=,result ““   数=0   ,with 开放(文件名,& # 39;" # 39;),as  f:   ,for  line  f.readlines拷贝():   result  +=,才能行   count 才能+=1   print 才能;计数   return 结果      “““写入文件“““      def  writeData(文件名,数据):   ,with 开放(文件名,& # 39;a + & # 39;) as  f:   之前,f.write(数据)

其中def是函数的定义,如果我们写定义一个函数直接前面加上def,返回值可以获取后直接用返回即可

python我们直接采用张开(& # 39;文件路径& # 39;,模式)和f的方式来打开文件

<强>模式:

r只读文件不存在则出错r +支持读写文件不存在则出错,写入时,会覆盖源文件w只写如果文件不存在则创建文件,会覆盖源文件,如果写入内容少则保留为覆盖的内容w +支持读写同上一只写如果文件不存在则创建文件,会采用追加模式+读写同上b二进制读写,

<强>跨文件引用:

同一个层级python是采用进口直接导入文件名的方式,看下一个代码

import  IoUtils      时间=fileName1  & # 39; D: \ \ \ \工作蟒蛇\ \文件\ \ userids.txt& # 39;   时间=userIds  IoUtils.readData (fileName1) .split (& # 39; \ n # 39;)   时间=fileName2  & # 39; D: \ \ \ \工作蟒蛇\ \文件\ \ records.txt& # 39;   时间=records  IoUtils.readData (fileName2) .strip ()   时间=recordsArr  records.split (& # 39; \ n # 39;)   数=0;   for  data  recordsArr拷贝:   计数+=1   ,if  data.split (& # 39; \ t # 39;)[2],拷贝用户id:   ,IoUtils.writeData (& # 39; D: \ \ \ \工作蟒蛇\ \ \ \ 20180604. txt文件# 39;,,data  +, & # 39; \ n # 39;)   ,print 数

<强>其他说明:

其中分裂和java程序的分裂一样,带是去掉空格换行符等,循环(在)模式,判断某个元素是否在数组中存在则直接使用元素在数组

关于“利用python处理百万条数据的案例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

利用python处理百万条数据的案例