python 計算文件的md5值實例
更新時間:2017年01月13日 09:29:00 投稿:jingxian
下面小編就為大家?guī)硪黄猵ython 計算文件的md5值實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
較小文件處理方法:
import hashlib
import os
def get_md5_01(file_path):
md5 = None
if os.path.isfile(file_path):
f = open(file_path,'rb')
md5_obj = hashlib.md5()
md5_obj.update(f.read())
hash_code = md5_obj.hexdigest()
f.close()
md5 = str(hash_code).lower()
return md5
if __name__ == "__main__":
file_path = r'D:\test\test.jar'
md5_01 = get_md5_01(file_path)
print(md5_01)
較大文件處理方法:
import hashlib
import os
def get_md5_02(file_path):
f = open(file_path,'rb')
md5_obj = hashlib.md5()
while True:
d = f.read(8096)
if not d:
break
md5_obj.update(d)
hash_code = md5_obj.hexdigest()
f.close()
md5 = str(hash_code).lower()
return md5
if __name__ == "__main__":
file_path = r'D:\test\test.jar'
md5_02 = get_md5_02(file_path)
print(md5_02)
說明:對于同一個文件,兩種方法計算得到的md5是一致的。
注:以上代碼在Python 3.x版本測試通過。
以上這篇python 計算文件的md5值實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python 兩個數(shù)據(jù)庫postgresql對比
這篇文章主要介紹了python 兩個數(shù)據(jù)庫postgresql對比,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-10-10
Python使用socket實現(xiàn)組播與發(fā)送二進制數(shù)據(jù)
在工作中經(jīng)常會用到socket傳輸數(shù)據(jù),例如客戶端給服務器發(fā)送數(shù)據(jù)(雙方約定了數(shù)據(jù)格式),本文主要介紹了Python使用socket實現(xiàn)組播與發(fā)送二進制數(shù)據(jù),感興趣的可以了解一下2021-06-06
Python enumerate函數(shù)功能與用法示例
這篇文章主要介紹了Python enumerate函數(shù)功能與用法,結(jié)合實例形式分析了enumerate函數(shù)針對列表、字符串遍歷操作相關(guān)使用技巧,需要的朋友可以參考下2019-03-03
Python控制多進程與多線程并發(fā)數(shù)總結(jié)
本篇文章主要介紹了Python控制多進程與多線程并發(fā)數(shù),詳細講訴了進程和線程的區(qū)別,并介紹了處理方法,有需要的朋友可以了解一下。2016-10-10
在Python3中使用asyncio庫進行快速數(shù)據(jù)抓取的教程
這篇文章主要介紹了在Python3中使用asyncio進行快速數(shù)據(jù)抓取,asyncio是一個異步IO庫,運行效率較高,需要的朋友可以參考下2015-04-04

