Python で生成されたファイルの MD5 および sha1
ファイルの MD5 と sha1 を生成します
#coding=UTF-8 def fil_changefileext(filename,extname=''): # FIL ChangeFileExt 改变文件扩展名 # filename 输入的文件路径名 # extname='' 要更改分扩展名,如 .txt import os try: if extname[0]<>'.': extname='.'+extname except: extname='' if os.path.splitext(filename)[1]=='': uouttxt=filename+'.'+extname elif os.path.splitext(filename)[1]=='.': uouttxt=filename+extname else: uouttxt=filename[:0-len(os.path.splitext(filename)[1])]+extname return uouttxt def fil_str2file(fstr,filename): # FIL STR2File 把字符串保存到文件 try: outfile=open(filename,'w') outfile.writelines(fstr) outfile.close() return True except: return False #系统主程序开始 #------------------------------------------------------- if __name__ == '__main__': import os,sys,math # if len(sys.argv)==1:sys.argv.append(r'c:\FreeNAS-8.0.4-RELEASE-x64.iso') if len(sys.argv)>1: filepathname=sys.argv[1] if os.path.isfile(filepathname) : fmaxs = os.path.getsize(filepathname)+0.00 fpos = 0.00 ppos=0 pmax=50 pjy=0 fmd5=fil_changefileext(filepathname,'.md5') fsha1=fil_changefileext(filepathname,'.sha') ffm=os.path.basename(filepathname) #开始处理 print 'Program Runing "'+filepathname+'" ...' import hashlib try: umd5str = hashlib.md5() usha1str = hashlib.sha1() xfilepathname=unicode(filepathname,'utf8') #需要使用二进制格式读取文件内容 ufile = file(xfilepathname,'rb') while True: datas = ufile.read(1024*512) if not datas: break umd5str.update( datas ) usha1str.update( datas ) fpos=fpos+1024*512 ppos=int(math.floor(fpos / fmaxs * 50)) pposbfh=int(math.floor(fpos / fmaxs * 100)) #打印进度条 if pjy<>ppos: print '['+'*'*ppos +'='*(pmax-ppos)+'] '+str(pposbfh) +'%' #打印进度问题未解决,不知道print函数怎么退回到行首覆盖输出,不换行我倒是知道,加个“,” pjy=ppos uoutstrmd5=str(umd5str.hexdigest()) uoutstrsha1=str(usha1str.hexdigest()) ufile.close() print '' fil_str2file(uoutstrmd5+' *'+ffm+'\n',fmd5) fil_str2file(uoutstrsha1+' *'+ffm+'\n',fsha1) print 'Task is completed !' + r' [ XingHe Studio File to MD5 and SHA1 ]' except: print 'Error !' + r' [ XingHe Studio File to MD5 and SHA1 ]' else: print 'File "'+filepathname+'" not exist!'+ r' [ XingHe Studio File to MD5 and SHA1 ]' else: print r' [ XingHe Studio File to MD5 and SHA1 ]'

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...

Investing.comの反クラウリング戦略を理解する多くの人々は、Investing.com(https://cn.investing.com/news/latest-news)からのニュースデータをクロールしようとします。
