Pythonでファイルのサイズを取得する方法
Pythonでファイルのサイズを取得する方法
Pythonでファイルのサイズを取得するための詳細なステップバイステップチュートリアルをご紹介します。
ステップ1:必要なモジュールをインポートする
始めるには、ファイルやディレクトリを操作する方法を提供するosモジュールをインポートする必要があります。
import os
ステップ2:ファイルのパスを指定する
次に、サイズを取得したいファイルのパスを指定する必要があります。絶対パス(例:C:/path/to/file.txt)または相対パス(例:Pythonスクリプトと同じディレクトリにある場合はfile.txt)のいずれかを指定することができます。
file_path = 'path/to/your/file.txt'
ステップ3:ファイルの存在を確認する
ファイルのサイズを取得する前に、ファイルが実際に存在するかどうかを確認するのは良い習慣です。os.path.exists()関数を使用してこれを行うことができます。
if os.path.exists(file_path):
print("ファイルが存在します。")
else:
print("ファイルが存在しません。")
ステップ4:ファイルのサイズを取得する
ファイルのサイズを取得するために、os.path.getsize()関数を使用することができます。この関数はファイルのパスを引数として受け取り、ファイルのサイズをバイト単位で返します。
file_size = os.path.getsize(file_path)
ステップ5:ファイルのサイズを人間が読みやすい形式に変換する
デフォルトでは、os.path.getsize()はファイルのサイズをバイト単位で返します。ファイルサイズをより人間に読みやすい形式(例:キロバイトやメガバイト)で表示したい場合は、変換するためのヘルパー関数を作成することができます。
次に、ファイルサイズを読みやすい形式に変換する例の関数を紹介します。
def convert_size(size_bytes):
# 2**10 = 1024
if size_bytes == 0:
return "0B"
size_name = ("B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB")
i = int(math.floor(math.log(size_bytes, 1024)))
p = math.pow(1024, i)
s = round(size_bytes / p, 2)
return f"{s} {size_name[i]}"
この関数を使用してファイルサイズを変換することができます。
human_readable_size = convert_size(file_size)
print(f"ファイルのサイズ:{human_readable_size}")
完成例
以上の手順をすべて組み込んだ完全な例のコードを以下に示します。
import os
import math
def convert_size(size_bytes):
# 2**10 = 1024
if size_bytes == 0:
return "0B"
size_name = ("B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB")
i = int(math.floor(math.log(size_bytes, 1024)))
p = math.pow(1024, i)
s = round(size_bytes / p, 2)
return f"{s} {size_name[i]}"
file_path = 'path/to/your/file.txt'
if os.path.exists(file_path):
print("ファイルが存在します。")
file_size = os.path.getsize(file_path)
human_readable_size = convert_size(file_size)
print(f"ファイルのサイズ:{human_readable_size}")
else:
print("ファイルが存在しません。")
以上です!これでPythonでファイルのサイズを取得するための詳細なステップバイステップチュートリアルが完成しました。