扣丁学堂剖析如何快速使用python处理大数据
在现如今,在处理数据基础操作上大多时候采用awk以及java程序即可。但突然有百万级数据需要处理,通过awk则发生无法匹配,采用java处理很慢,起码在1天以上,当另辟奇径采用采用python来处理时,结果速度有了质的提升,下面就由扣丁学堂python培训老师给大家分享下如何快速使用python处理大数据。
1、安装python
第一步首先下载python软件,在开始里面找到python的exe,点击开然后输入1+1就可以看出是否安装成功了。
2、IEDA编辑器如何使用python
首先我们在idea中打开设置然后点击plugins,在里面有个输入框中输入python,根据提示找到如下的这个(idea版本不同可能影响python版本)
然后开始创建idea工程
file->New->Project->python(其他的下一步然后就会创建工程了)
3、开发前知识准备
文件的读取,python读取文件非常的简单,我现在直接贴代码提供给大家
defreadData(fileName):
result=""
count=0
withopen(fileName,'r')asf:
forlineinf.readlines():
result+=line
count+=1
printcount
returnresult
"""写入文件"""
defwriteData(fileName,data):
withopen(fileName,'a+')asf:
f.write(data)
其中def是函数的定义,如果我们写定义一个函数直接前面加上def,返回值可以获取后直接用return即可
python我们直接采用withopen('文件路径',模式)asf的方式来打开文件
模式:
跨文件引用:同一个层级python是采用import直接导入文件名的方式,看下一个代码
importIoUtils
fileName1='D:\\works\\pythons\\files\\userids.txt'
userIds=IoUtils.readData(fileName1).split('\n')
fileName2='D:\\works\\pythons\\files\\records.txt'
records=IoUtils.readData(fileName2).strip()
recordsArr=records.split('\n')
count=0;
fordatainrecordsArr:
count+=1
ifdata.split('\t')[2]inuserIds:
IoUtils.writeData('D:\\works\\pythons\\files\\20180604.txt',data+'\n')
printcount
其他说明:
其中split和java程序的split一样,strip是去掉空格换行符等,循环(forin)模式,判断某个元素是否在数组中存在则直接使用元素in数组。