2017-05-04 12 views
0

私はPythonを初めて使いました。ファイルサイズが500kを超えるディレクトリからサイズを取得する必要があります。私は本当に速くなければならないいくつかのコードをインターネット上に見つけました。どういうわけか、それは働かないし、なぜか分からない。 現在の出力は「テスト」なので、関数を入力することさえできません。Pythonでディレクトリサイズを測定する

import time 
import os 

start_time = time.time() 
print('Test') 
def getSize(path): 
    print('Test2') 
    total = 0 
    for entry in os.scandir(path): 
     if entry.is_dir(follow_symlinks=False): 
      total += getSize(entry.path) 
     else: 
      total += entry.stat(follow_symlinks=False).st_size 
    return total 

    print (float(getSize('U:\Java'))/1024/1024/1024) 
    print("--- %s Sekunden ---" % round(time.time() - start_time, 2)) 

その他の質問:このような大きなディレクトリをPythonや他の言語で検索するさらに高速な方法はありますか?

+1

どうすれば実際に関数を呼び出すのですか?http://stackoverflow.com/questions/1392413/calculating-a-directory-size-using-python –

+0

最後の行として 'getSize( 'path/to/filder')'のようにします。 – jojo

+0

私はすでにそれを試しました。私もこれを試しました。 http://stackoverflow.com/a/2485804/7862001 2番目の方法はos.walkを使用する方法よりも高速です。 – wenzel267

答えて

2

関数内のプログラムの最後の2行はインデントされているため、関数の一部と見なされ、実行されません。 単にそれらを献呈します。

+0

それは正しい答えでした。どうもありがとうございました。 – wenzel267

関連する問題