国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Python實現快速大文件比較代碼解析

瀏覽:2日期:2022-07-12 10:37:15

問題

假如,在有兩個大文件分別存儲了大量的數據,數據其實很簡單就是一堆字符串,每行存儲一條,如何快速篩選出兩個文件的異同之處么,或者如何篩選出兩個文件中不同的元素呢?

剛開始我是通過最簡單的方法,利用for循環去一個個的判斷,時間復雜度為m的n次冪,當然當文件數量級為十萬或者百萬時,速率簡直慢到了極點。

解決方法

利用set()的different(方法)可快速比較,兩個set集合的不同之處,也就是對集合進行數學運算

假設:數據1擁有858882條記錄,數據2有360029條記錄,快速挑選出數據2中而不存在與數據1中的數據

方法:先將兩個文件中的數據讀入兩個list:data1和data2,然后通過:set(data2).difference(set(data1)),獲取data2與data1的差集

下面為一個小的demo,可以看到近百萬級的數據,比較出差集也就需要1秒左右,效率不是一般的高

import timet1 = time.time()data1 = []for i in open('inDB.txt','r',encoding='utf-8'): i = i.strip('n') i = i.lower() data1.append(i)data2 = []for i in open('data/18年.filename','r',encoding='utf-8'): i = i.strip('n') i = i.lower() data2.append(i)newdata = set(data2).difference(set(data1))t2 = time.time()print(f'data1 length:t{len(data1)}')print(f'data2 length:t{len(data2)}')print(f'newdata length:t{len(newdata)}')print(f'time use:t{round(t2 - t1,3)}s')

Python實現快速大文件比較代碼解析

list最多可以存放多少條數據呢?

python中list最多可以存放多少條數據呢?

對于這個問題,有個網友調研了python的文檔,結果跟計算機的性能相關

64位機器:2^63-1=922337203685477580732位機器:2^31-1=2147483647import sysprint(sys.maxsize)print(pow(2,63)-1)92233720368547758079223372036854775807

集合set的操作

內置函數 作用 add() 為集合添加元素 clear() 移除集合中的所有元素 copy() 拷貝一個集合 difference() 返回多個集合的差集 difference_update() 移除集合中的元素,該元素在指定的集合也存在。 discard() 刪除集合中指定的元素 intersection() 返回集合的交集 intersection_update() 返回集合的交集。 isdisjoint() 判斷兩個集合是否包含相同的元素,如果沒有返回 True,否則返回 False。 issubset() 判斷指定集合是否為該方法參數集合的子集。 issuperset() 判斷該方法的參數集合是否為指定集合的子集 pop() 隨機移除元素 remove() 移除指定元素 symmetric_difference() 返回兩個集合中不重復的元素集合。 symmetric_difference_update() 移除當前集合中在另外一個指定集合相同的元素,并將另外一個指定集合中不同的元素插入到當前集合中。 union() 返回兩個集合的并集 update() 給集合添加元素

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 美女一级ba大片免色野外 | 亚洲欧美韩国 | 国产女人伦码一区二区三区不卡 | 欧美大尺度xxxxx视频 | 亚洲第五色综合网啪啪 | 亚洲欧美偷拍自拍 | 黑人一级大毛片 | 中文字幕一区二区三区久久网站 | 九九免费视频 | 国产午夜精品久久理论片 | 欧美另类老妇 | 操美国女人 | 欧美日韩精品乱国产 | 国产精品videossex另类 | 特级a做爰全过程片 | 成人国产精品免费视频不卡 | 91色综合综合热五月激情 | 欧美日韩高清观看一区二区 | 亚洲精品一区二区 | 精品一区二区三区免费毛片爱 | 亚洲午夜久久 | 免费看一级毛片欧美 | 欧美日韩国产亚洲综合不卡 | 日本 欧美 在线 | 欧美午夜三级我不卡在线观看 | 久久久久久a亚洲欧洲aⅴ | 18videosex性欧美69 | 亚洲精品一区二区三区在线播放 | 日本一二线不卡在线观看 | 免费五级在线观看日本片 | 国产成人精品久久 | 不卡一区二区在线观看 | 精品在线免费观看 | 欧美在线区 | 欧美一区二区亚洲 | 中国性猛交xxxxx免费看 | 久久99热精品免费观看欧美 | 精品成人毛片一区二区视 | 美国人成毛片在线播放 | 久草在线视频资源站 | 成年人网站免费 |