如何在Python中計算檔案的MD5雜湊

2021-10-06 07:35:54 字數 1163 閱讀 2664

本文是對這篇文章的翻譯:如何在python中計算檔案的md5雜湊

md5是一種訊息摘要演算法,用於從可變輸入資料中建立唯一的固定大小值。md5通常用於檢查檔案在傳輸過程中是否損壞(在這種情況下,雜湊值稱為校驗和)。檔案中的任何更改都將導致不同的md5雜湊值。

以下python程式計算給定檔案的md5雜湊值。計算出的128位md5雜湊將轉換為可讀的十六進製制形式。

import hashlib

filename =

input

("enter the file name: "

)with

open

(filename,

"rb"

)as f:

bytes

= f.read(

)# read file as bytes

readable_hash = hashlib.md5(

bytes

).hexdigest();

print

(readable_hash)

請注意,由於我們在計算md5雜湊值之前將整個檔案讀取到記憶體中,因此上述程式對於大型輸入檔案可能會失敗。以下python程式是經過改進的版本,能夠處理大檔案

import hashlib

filename =

input

("enter the file name: "

)md5_hash = hashlib.md5(

)with

open

(filename,

"rb"

)as f:

# read and update hash in chunks of 4k

for byte_block in

iter

(lambda

: f.read(

4096

),b""):

md5_hash.update(byte_block)

print

(md5_hash.hexdigest())

這是上面的程式是動作,

python3 md5hash2.py

輸入檔名:md5hash2.py

0101ae2ac06b8a52154100e37d8bafea

如何在C 裡執行python檔案

startupinfo si process information pi zeromemory si,sizeof si zeromemory pi,sizeof pi if createprocess null,指向乙個null結尾的 用來指定可執行模組的寬位元組字串 python my.py ...

3中計算檔案補集方式

部落格主頁 要求 求兩個檔案差集 並集 補集 實驗資料 root jjy q data tmp data cat 112 3456 root jjy q data tmp data cat 234 589第 一中最簡單的實現 利用comm,預設以 t分割,利用awk很好分割 root jjy q d...

如何在python中檢查檔案大小?

我在windows中編寫python指令碼。我想根據檔案大小做一些事情。例如,如果大小大於0,我將向某人傳送電子郵件,否則繼續其他操作。如何檢查檔案大小?其他答案適用於實際檔案,但是如果您需要適用於 類檔案的物件 的檔案,請嘗試以下操作 f is a file like object.f.seek ...