python3文字檔案按行雜湊
由於專案需要對一個文字檔案按行雜湊,今天研究了一下python的雜湊使用,開始生成的md5總是和標準的md5 (32位)不同,經過反覆測試發現,原來python從檔案中按行讀取的資料自帶了換行符,所以現在需要做的工作就是用空字元替換掉換行符。
#處理大檔案,按行進行md5
import hashlib
import os
os.chdir('e:')
Buffsize=1024
count=0
with open("userdata.txt",encoding='utf-8') as a_file:
lines=a_file.readlines(Buffsize)
while lines:
for line in lines:
if line[-1]=='\n':#去掉行尾的換行符
line=line.replace('\n','')
if line[-1]=='\r':#去掉行尾的換行符
line=line.replace('\r','')
count=count+1
print(count+':')
print(line+'\n')
h=hashlib.md5() #建立md5例項
h.update(line.encode(encoding='utf-8'))
hashmd5=h.hexdigest()
#print(hashmd5)
with open('test.txt', mode='a', encoding='utf-8') as testfile:
testfile.write(hashmd5+'\n')
lines=a_file.readlines(Buffsize)
print("finished")
試驗證明,減少輸出頻率可以大幅提高程式執行效率,但缺陷是一旦當機,可能無法確定檔案具體執行到哪一行
相關文章
- Hash,雜湊,雜湊?
- python3執行.sql檔案PythonSQL
- 七夕也要學起來,雜湊雜湊雜湊!
- 雜湊
- 【尋跡#3】 雜湊與雜湊表
- js 雜湊雜湊值的模組JS
- 雜湊表(雜湊表)原理詳解
- VBA建立文字檔案、讀寫文字檔案
- 雜湊表
- 雜湊碰撞
- 字串雜湊字串
- 樹雜湊
- 2024.3.26 雜湊
- 雜湊索引索引
- 高階自定義View — 粒子變幻、隧道雜湊、組合文字View
- C#讀取文字檔案和寫文字檔案C#
- 安全的雜湊
- 異或雜湊
- 雜湊衝突
- 6.7雜湊表
- 關於雜湊
- 字串雜湊表字串
- 雜湊函式函式
- 雜湊表2
- redis之雜湊Redis
- 檔案排版(文字檔案讀寫)
- java 統計大文字檔案的行數Java
- 雜湊遊戲之雜湊盒子的趨勢未來可期遊戲
- 雜湊技術【雜湊表】查詢演算法 PHP 版演算法PHP
- 幾道和雜湊(雜湊)表有關的面試題面試題
- 檔案批次查詢複製匯出,按檔名批次查詢檔案,按檔案內容批次查詢檔案
- 雜湊256,待研究
- 進位制雜湊
- 十二、雜湊表(二)
- 全球覆蓋 雜湊
- 十一、雜湊表(一)
- 雜湊表應用
- 手寫雜湊表
- 雜湊表的原理