用python写一个查看文件夹大小的代码
时间: 2023-06-01 12:07:37 浏览: 59
你可以使用以下代码来获取文件夹的大小:
```python
import os
def get_size(path='.'):
total = 0
with os.scandir(path) as it:
for entry in it:
if entry.is_file():
total += entry.stat().st_size
elif entry.is_dir():
total += get_size(entry.path)
return total
print(get_size())
```
在这个代码中,`get_size` 函数会遍历文件夹中的所有文件和子文件夹,并将它们的大小累加起来。最后返回累加的大小。调用 `get_size()` 函数时,传入要查看的文件夹路径即可。如果没有传入任何参数,则默认查看当前文件夹的大小。
相关问题
用python写一个汇总文件夹里的图片的代码
您好,下面是用Python实现汇总文件夹里的图片的代码:
```python
import os
from PIL import Image
# 指定图片所在文件夹路径
img_folder = "path/to/folder"
# 新建一个空列表用于存储所有图片
img_list = []
# 遍历图片所在文件夹中的所有图片
for root, dirs, files in os.walk(img_folder):
for file in files:
# 判断文件是否为图片
if file.endswith(".jpg") or file.endswith(".png") or file.endswith(".jpeg") or file.endswith(".bmp"):
# 将图片路径存入列表中
img_list.append(os.path.join(root, file))
# 创建一个新的图片对象
new_img = Image.new("RGB", (1000, 1000))
# 设置画布的坐标
x = 0
y = 0
# 遍历所有的图片
for img_path in img_list:
# 打开图片
img = Image.open(img_path)
# 缩放图片大小
img = img.resize((250, 250))
# 在画布上粘贴图片
new_img.paste(img, (x, y))
# 更新坐标
if x + 250 == 1000:
x = 0
y = y + 250
else:
x = x + 250
# 保存并展示新的图片
new_img.save("merged.jpg")
new_img.show()
```
以上代码实现了遍历指定文件夹内的所有图片,将这些图片缩放成250 * 250的大小,并根据画布的尺寸将它们拼接成一个新的图片,并展示并保存该新图片。
写一段python递归文件夹获取大小的代码
好的,以下是递归文件夹获取大小的Python代码示例:
```python
import os
def get_folder_size(path):
total_size = 0
for dirpath, dirnames, filenames in os.walk(path):
for f in filenames:
fp = os.path.join(dirpath, f)
if os.path.isfile(fp):
total_size += os.path.getsize(fp)
return total_size
```
这段代码定义了一个函数 `get_folder_size`,它接受一个路径参数 `path`,并返回该路径下所有文件的大小之和。该函数使用 `os.walk` 函数遍历目录树,对于每个文件,使用 `os.path.getsize` 函数获取文件大小,并将其累加到 `total_size` 变量中。最后返回累加结果作为函数的返回值。
注意,这段代码只计算文件的大小,不包括目录的大小。如果需要计算目录的大小,需要对目录进行递归处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)