반응형
이전 포스팅에서는 os 모듈과 glob 모듈을 가지고 파일 리스트를 구하는 방법에 대해 이야기했었다.
2021/01/12 - [Code/Python] - [Python] 폴더 내 파일 리스트 가져오기 (os/glob)
오늘은 os 모듈에서 파일의 크기를 파악하는 함수에 대해 포스팅하려고 한다.
파일이 많을 때 각 파일의 리스트를 확인해야 할 때가 많다. 파일의 용량이 크면 일부만 출해서 확인해야 하는 경우도 있가 때문.
보통 그냥 사이즈를 구하면 byte단위로만 출력이 되는데, 이번에는 KB, MB, GB 단위로도 볼 수 있도록 함수를 만들어보려고 한다.
그 전에
1KB = 1024 byte
1MB = 1024 KB
1GB = 1000 MB
이렇게 변환이 된다.
그러므로 계산식을 사용하면 메가바이트, 기가바이트 단위의 사이즈를 얻을 수 있다.
import os
path = './'
for file in os.listdir(path):
try:
n = os.path.getsize(file)
print('file : ', n, "Bytes") # 바이트 단위로 구하기
print('file : ', n / 1024, "KB") # 킬로바이트 단위로
print('file : ', "%.2f MB" % (n / (1024.0 * 1024.0))) # 메가바이트 단위로
print('file : ', "%.2f GB" % (n / (1024.0 * 1024.0 * 1000.0))) # 기가바이트 단위로
except os.error:
print "파일이 없거나 에러입니다."
모든 바이트의 단위가 필요하지 않다면, 원하는 바이트 단위부분만 제외하고 나머지를 주석처리하면 된다.
참고 :
mwultong.blogspot.com/2007/04/python-file-size-in-bytes.html
반응형
'Code > Python' 카테고리의 다른 글
[Python] python 에서 이유를 알 수 없는 GPU 에러 정리(device-side assert triggered) (0) | 2021.02.04 |
---|---|
[Python] pandas - DataFrame/Series 에서 순위 구하는 함수 rank() (0) | 2021.01.14 |
[Python] 폴더 내 파일 리스트 가져오기 (os/glob) (0) | 2021.01.12 |
[Python] pytorch 모델 저장하기 - state_dict() (0) | 2021.01.06 |
[Python] isinstance 함수 - 파이썬 자료형 확인하는 함수 (0) | 2021.01.06 |