Pythonの再帰検索jpgファイルと印刷

ファイルの終わりと、印刷時に(「JPG」、「GIF」、「PNG」「JPG」、「GIF」、「PNG」)を見つけるために再帰的なファイル

バグが発生しました:写真ファイル、次のいくつかの良いクリップはJPG形式の大文字で表示され、小文字のみを最後にプリントアウトされている.jpgファイルへの追加ファイルにつながる、考慮に入れました。長い時間のためのポジショニングの問題を引き起こします   

レガシー:圧縮ファイル(RARまたはzip)処理を書きます 

  アイデア:ファイルの解凍PIP3は、現在のスクリプトの同じディレクトリにunrar.exeする必要がrarfileインストール

インポートOS
 の#import rarfile 


DEF get_picture(ファイルパス、レイヤー):
    ファイルパスのサブディレクトリを含め、すべてのファイル、横断 
    = joinStr接頭辞(' - 'を、レイヤ)
    レイヤ + = 1。IF os.path.isdir(ファイルパス):
         印刷(接頭辞、' フォルダ'、ファイルパス、" サイズ= " 、os.path.getsize(ファイルパス))
     印刷(接頭辞、' ドキュメント'、ファイルパス、" サイズ= " 、os.path.getsize(ファイルパス))
         のリターン

    

    ファイル = os.listdir(ファイルパス)
     のため Fiののファイル:
         文件路径 
        fi_d = os.path.join(ファイルパス、FI)
         の場合:os.path.isfile(fi_d)
            プレフィックス(= joinStr ' - ' 、層)
             であれば、OS .path.basename(fi_d).endswith((' JPG '' GIF '' PNG '' JPG '' GIF '' PNG ')):
                 印刷(接頭辞、fi_d、" サイズ= " 、os.path.getsize(fi_d))
             のelif fi_d.endswith((' .zipファイル'' .rarを' )):
                     印刷(接頭辞は、アーカイブが見つかりました: "fi_d、 " サイズ= 、os.path.getsize(fi_d))
                    RF = rarfile.RarFile(fi_d)ファイルを抽出する。# 
                    CURRENT_PATH = fi_d.split( '')[0]# 
                    rf.extractall (CURRENT_PATH)現在のファイルパスに#抽出物
                    IF os.path.isdir(): 
                        get_picture(CURRENT_PATH)
                    #1 rf.close()
            印刷(接頭辞、' その他の文書'、fi_d、" サイズ= " 、os.path.getsize(fi_d))
        、フォルダかどうかを判断する
        dirの場合は、再度、カレントディレクトリ、再帰処理を渡し、この関数を呼び出します。
        elifのos.path.isdir(fi_d):
            get_picture(fi_d、レイヤー)
        印刷" あなた弱いバースト" #のリターン

DEF recursorFile(filePathに、レイヤー):
     "" " 
    :PARAMファイルパス:ファイルオブジェクト
    :のparam層:層の数
    ""」
    正面 = joinStr(" - " 、層)
     プリント(フロントエンド= "" )

    印刷(os.path.basename(filePathに))


デフjoinStr(STR、回):
    RS = "" 
    のための I における範囲(回):
        RS + = STRの
     戻りRS 

recursorFile( 'F:\\照片'、3) 
get_picture(' F:\\照片'、0)

 

おすすめ

転載: www.cnblogs.com/eosclover/p/11407512.html