見出し画像

退屈なことをPythonにやってもらうための演習の回答[9.7.2]

白地です。

『退屈なことはPythonにやらせよう』演習プロジェクトの9.7.2の、自分なりの解答です。

どうでもいいけど、大きいファイルがあったらそれより上の階層のフォルダが全部表示されるのでは…

#! python3
# 9.7.2 巨大なファイルを探す

# ディレクトリツリーを渡り歩いて大きなファイルやフォルダを探して、絶対パスを画面上へ表示する。

import sys, os

# 第1引数を見る(エラーは強制終了)
try:
    dirpath = sys.argv[1]
except IndexError:
    print('Please specify the file you want to convert to argument.')
    sys.exit(1)

# ディレクトリかどうか確認し、ディレクトリでなければ強制終了
if os.path.isdir(dirpath)==False :
    print('Please specify the Dir.')
    sys.exit(1)

# 100MBを超えたファイルは絶対パスを表示
for foldername, subfolders, filenames in os.walk(dirpath):

    for filename in filenames:

        filepath = os.path.join( foldername,filename )
        filesize = os.path.getsize( filepath )

        if( filesize >= 100000000 ):
            print ( filepath + " : " + str( filesize ) + "B" )


この記事が気に入ったらサポートをしてみませんか?