是使用os
模块和递归算法来遍历目录中的所有文件和子目录,并累加它们的大小。
以下是一个示例代码:
import os
def get_directory_size(directory):
total_size = 0
for path, dirs, files in os.walk(directory):
for f in files:
fp = os.path.join(path, f)
total_size += os.path.getsize(fp)
return total_size
directory_path = '/path/to/directory'
size = get_directory_size(directory_path)
print(f"The size of directory '{directory_path}' is {size} bytes.")
这段代码使用os.walk()
函数遍历目录中的所有文件和子目录。对于每个文件,使用os.path.getsize()
函数获取其大小,并累加到total_size
变量中。最后返回total_size
作为目录的总大小。
这种方法的优势是它可以递归地处理目录中的所有文件和子目录,无论目录有多深。它还可以准确地计算目录的大小,包括所有文件和子目录。
推荐的腾讯云相关产品是对象存储(COS),它是一种高可用、高可靠、低成本的云存储服务,适用于存储和处理大规模非结构化数据。您可以使用腾讯云的COS SDK来在Python中操作对象存储服务。
腾讯云COS产品介绍链接地址:https://cloud.tencent.com/product/cos
领取专属 10元无门槛券
手把手带您无忧上云