python大ip文件排重
整理個IP列表,需要將IP去重下,統計一共多少來源
本來想直接shell命令解決,簡單的 sort 管道 uniq 然後wc下
無奈文件太大,條數多,處理效率不堪
文件大概5G,幾億條數據吧
2 PLAN A 未遂
shell處理:
#time sort ip | uniq | wc -l
然後沒啥反應了。。。。 其實是在處理中,最後被我ctrl c了
3 PLAN B
沒辦法寫個簡單的python,用列表的排重特性(需要註意文件讀取的方法,不要將文件一次全部讀取到內存。。。):
#! /usr/bin/env python d={} with open('ip', 'rb') as f: for line in f: d[line] = 'ip' print len(d)
time python read.py
然後就很快結束了:
4 結束
簡單看下資源消耗情況:
優勢還是挺明顯的,以小見大吧,希望python可以幫助大家解決工作中的實際問題,不論大小。
python大ip文件排重
相關推薦
python大ip文件排重
python 大文件 讀取 去重 1 需求:整理個IP列表,需要將IP去重下,統計一共多少來源本來想直接shell命令解決,簡單的 sort 管道 uniq 然後wc下無奈文件太大,條數多,處理效率不堪文件大概5G,幾億條數據吧2 PLAN A 未遂 shell處理: #time sort
python對excel文件去重及求和
廢話不多說,估計只有我這個菜鳥廢了2個小時才搞出來,主要是我想了太多方法來實現,最後都因為這因為那的原因失敗了 間接說明自己對可變與不可變型別的瞭解,還是不夠透徹 最後就用了個笨方法解決了
Python 逐行分割大txt文件
append odi 分割 strip() .sql 文件 limit pri import # -*- coding: <encoding name> -*- import io LIMIT = 150000 file_count = 0 url_
python之批量文件重命名
獲取 讓我 split 夢想 重命名 批量 文件重命名 chdir http 批量文件重命名問題,生活中或是工作中會經常用到。方法比較low多試驗幾次就可以了。 # -*- coding: utf-8 -*- # @Time :2018/8/25 20:18 # @A
[PHP] PHP多個進程配合redis的有序集合實現大文件去重
div with argv 多個 sets light mage alt 分享圖片 1.對一個大文件比如我的文件為 -rw-r--r-- 1 ubuntu ubuntu 9.1G Mar 1 17:53 2018-12-awk-uniq.txt 2.使用sp
大文件去重問題
讀取 海量 文件中 文件 mod .... 操作 有效 string 情景:當一個文件非常大,而內存無法一次性處理時,怎麽對它進行有效的去重操作 打開大文件,每次只讀一行; 對讀入的行字符串hash(string) = F(string) mod x, x要保證mo
當git上只做文件大小寫重命名的修改時,如何躲坑
function http ner ips %20 error: ace mbed lips 一、 提交時 假設修改ABC.java為Abc.java。 1.1 如果使用git命令進行僅涉及大小寫的重命名 1.1.1 設置git庫為大小寫敏感(不建議) $
Python之路-文件操作(py)
句柄 接口 編碼 操作 strong span 操作系統 使用 color 文件操作的基本步驟: 1.打開文件:f=open(‘filename‘),with open(‘filename‘) as f 2.操作文件:增,刪,改,查 3.關閉文件:f.close
將Python的.py文件轉變為可執行文件.exe
顯示錯誤 div ron 錯誤 .exe 執行 head python環境 color python是個很強大的工具,但我們生成的.py文件在沒有Python環境下運行就需要轉為.exe文件,我使用的是PyInstaller 1、安裝PyInstaller: pip ins
linux之系統編碼,python編碼,文件編碼
python 編碼 文件編碼 linux編碼 1 前言如果你對python2和python3的中編解碼很清楚,這裏我認為你很清楚。具體參考文檔:“python2 encode和decode函數說明.docx”“字符編碼——從ASCII開始.docx”以上所有文檔均為本地文檔。2
Python基礎之文件操作流與函數
默認 true 格式 nbsp 文件 內容 print 寫入 追加 一.文件操作 打開文件的方式有: r,只讀模式(默認) w,只寫模式(不可讀;不存在則創建;存在則刪除內容;) a,追加模式(可讀; 不存在則創建;存在則只追加內容;) "+"表示可以同時讀寫某個文
Python常用的文件讀寫操作和字符串操作
dir info load char 編碼 lines resolve values ror 文件讀寫操作 fileUtils.py # -*- coding: utf-8 -*- import os def getFileList(dir, fileList=[]):
使用Python生成源文件的兩種方法
mob zhang mod pri tid 串接 數字 能夠 package 利用Python的字符串處理模塊,開發者能夠編寫腳本用來生成那些格式同樣的C、C++、JAVA源程序、頭文件和測試文件,從而避免大量的反復工作。本文概述兩種利用Python string類生成
python工具 - 從文件名讀取特定信息到excel表格
lis 去掉 test 讀取 span 擴展名 tdi std class 情景:文件名中包含學號和用戶名,其中用戶名在前學好在後,學號為2位,如harry33.txt、natasha12.txt。 要求:將多個文件名中的用戶名與學號分開並保存到excle中。 代碼部分:
python 比較兩文件夾的內容,具有通用性。
子目錄 else logs 通過 walk turn imp exists rem #-*-coding:utf-8-*- #=====================================================================
Python中的文件類型
com 編譯 -o bsp env blog 程序 pyo 類型 Python文件類型有3種:源代碼文件、編譯文件、優化文件。 源代碼文件:文件以“.py”結尾,為開發程序的代碼保存的文件。 編譯文件:文件以”.pyc”結尾,假設源文件1.py,如果將1.py編譯為1.
linux下使用du命令查找最大的文件
linux 空間 最大的 找出某個磁盤下的最大文件,可以使用du命令:語法:du -sh [dirname|filename]當前目錄大小du -sh.當前目錄下文件或目錄的大小du -sh*顯示前十個占用空間最大的文件或目錄du -s * | sort -nr | head-n:純數字排序
python中對文件的處理
and 刪除 eva 改密 名稱 賬號 字典 oat 行為 1.當文件中存放的用戶名的密碼,是以字符串的形式存儲時,怎麽進行讀取和操作 eg:MLing,123456 niuniu,234567 luoluo,345678 方法一:將字符串轉為字典 1)字典查找的效
Makefile中怎樣調用python和perl文件為自己提供須要的數據
print erl col shel ria 實例代碼 space shell eight Makefile中怎樣調用python和perl文件為自己提供須要的數據,利用print函數對外輸出數據 實例代碼例如以下 perl.pl #!/usr/bin/per
Python基礎之文件的操作
指定 名稱 讀取 內容 ont 依次 操作 print 文件 #文件的操作#創建文件fc=open("E:/新建文件夾/a.mp8","w")#參數1表示文件路徑以及名稱,參數2表示文件的操作方法fc=file("E:/新建文件夾/a.mp9","w")#打開文件fo=op