2017-05-04 7 views
0

저는 Python에 익숙하지 않아 500k 개가 넘는 파일이있는 디렉토리에서 크기를 가져와야합니다. 나는 정말로 빨라야하는 인터넷상의 코드를 발견했다. 어떻게 든 그것은 일을 doesnt한다. 그리고 나는 이유를 모른다. 현재 출력은 'Test'만이므로 기능을 입력하지 않습니다.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)) 

추가 질문 : 파이썬이나 다른 언어와 같은 큰 디렉토리를 검색 할 수있는 더 빠른 방법이 있나요?

+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 두 번째 방법은 os.walk를 사용하는 방법보다 빠릅니다. – wenzel267

답변

2

함수를 호출하는 프로그램의 마지막 두 줄은 들여 쓰기되어 함수의 일부로 간주되어 실행되지 않습니다. 간단히 헌정하십시오.

+0

그게 옳은 대답이었습니다. 고맙습니다. – wenzel267