Python获取目录下的全部文件名,并写入文件中
path = 'train_img_set/non-ball/' # 替换为你的路径
dir = os.listdir(path) # dir是目录下的全部文件
fopen = open('train_img_set/bg.txt', 'w') # 替换为你的路径
for d in dir: # d是每一个文件的文件名
string = 'non-ball/' + d + '\n' #拼接字符串并换行
fopen.write(string) # 写入文件中
fopen.close()
实现效果如下:
python批量压缩图片小demo
这是python文件应用的一个小例子。我们有一个目录,里面存储一些图片,我们要做的是:获取目录下的全部文件名,然后使用PIL压缩图片并保存。在这个例子中,我们就使用了上面的文件处理代码。
run.py
# -*- coding:utf-8 -*-
import os
from PIL import Image
def compress_image(picture):
image = Image.open(picture)
width = image.width >> 1
height = image.height >> 1
image.thumbnail((width, height), Image.ANTIALIAS)
image.save('compress_0.5/' + picture[11:], 'JPEG')
path = 'frame_data/' # 路径
dir_list = os.listdir(path)
for d in dir_list:
name = 'frame_data/' + d
compress_image(name)
print('finish')
我们下面进行测试,新建一个名为frame_data的目录,目录下添加几张测试图片,这些图片的大小是13.2kb,分辨率是238*364。
使用上面的代码,压缩这些图片,压缩后的大小是5.08kb,分辨率是119*182
最后直观感受一下大小~