列表 | 类别 | |
1 | for 循环语句,打印数字1~10 | 基础 |
2 | 如何创建文价夹 | 基础 |
3 | 判断文件是否存在 | 工具 |
4 | 打开网页 | 基础 |
5 | 文件夹分类 | 工具 |
6 | 批量修改文件后缀 | 工具 |
7 | 批量增加水印 | 工具 |
8 | 排序 | 基础 |
1.循环语句,打印数字1~10
for i in range(0,10):
print(i)
2.创建文件夹
import os
os.makedirs('tmp1/04',exist_ok=True)
备注:tmp1/04 将文件夹建立在当前程序.py文件路径之下
3.判断问价夹中某文件是否存在
path = 'D:/Users/xuyf2/Desktop/project_all/11_practice/python_base'
# os.path.basename(path)
print(os.path.dirname(path))
if (os.path.exists('tmp/02/copy.txt')) == True:
print('存在')
else:
print('不存在')
#直接判断是,输出结果为布尔值,案例如下
# print(os.path.exists('tmp/02/11.txt'))
4.打开网页
# 打开网页
import webbrowser
webbrowser.open('http://www.byhy.net/')
5.文件夹分类工具
#-------------------------文件分类工具(根据名称任意符)------------------------------
import os
import shutil
src_dir_path = 'E:/aeg-paddle/jier_photos/SOCO6045/OK' # 源文件夹
to_dir_path = 'E:/aeg-paddle/jier_photos/SOCO6045/B16' # 存放复制文件的文件夹
key = '_B16_' # 源文件夹中的文件包含字符key则复制到to_dir_path文件夹中
if not os.path.exists(to_dir_path):
print("to_dir_path not exist,so create the dir")
os.mkdir(to_dir_path, 1)
if os.path.exists(src_dir_path):
print("src_dir_path exist")
for file in os.listdir(src_dir_path):
# is file
if os.path.isfile(src_dir_path + '/' + file):
if key in file:
print('找到包含"' + key + '"字符的文件,绝对路径为----->' + src_dir_path + '/' + file)
print('移动到----->' + to_dir_path + file)
shutil.move(src_dir_path + '/' + file, to_dir_path + '/' + file) # 移动用move函数
6.批量修改文件后缀工具
#-------------------------批量修改一个文件下的文件后缀----------------------------------
import sys
import os
def Rename():
Path = "D:/Users/xuyf2/Desktop/jier/left/2010" # windows下的文件目录
filelist = os.listdir(Path) # 列出当前目录下的所有文件
for files in filelist:
Olddir = os.path.join(Path,files)
print(files) # 打印出文件夹里的目录和文件
if os.path.isdir(Olddir): # 判断是否是文件,是文件,跳过
continue
filename = os.path.splitext(files)[0]
#filetype = os.path.splitext(files)[1]
Newdir = os.path.join(Path,filename + '.jpg') # 重新组合文件名和后缀名,只需更改jpg即可
os.rename(Olddir,Newdir)
Rename() # 执行函数,替换原文件中所有后缀
7.批量增加水印
#-------------------------------批量图片增加水印------------------------------------
from PIL import Image, ImageDraw, ImageFont
import os
def img(imgfile,font,imgfile_new):
lider = os.listdir(imgfile)
#遍历文件夹获取文件名
for img1 in lider:
path = os.path.join(imgfile, img1)
# 路径拼接
img = Image.open(path)
draw = ImageDraw.Draw(img) # 添加文字
font = ImageFont.truetype("msyh.ttc", 15) # 指定字体文件为 微软雅黑
#----------------------------根据需求添加一行或多行---------------------------------------------
draw.text((0,0),('poweramp'),(0,0,0),font=font) # 添加文字
draw.text((10,30), ('工程部'), fill='#0000ff', font=font)
# qrcode = Image.open('3.jpg') # 添加图片
# img.paste(qrcode, (313, 46))
# ------------------------------------------------------------------------------------------
img2 = img1[:-4] + "_1"+'.png' # 区份文件,后面加-1
path1 = os.path.join(imgfile_new,img2)
img.save(path1)
if __name__ == '__main__':
imgfile = "D:/Users/xuyf2/Desktop/jier/left/2010" # 原始图片存放位置
font = ImageFont.truetype("bahnschrift.ttf", 50) # 字体,大小
imgfile_new = 'D:/Users/xuyf2/Desktop/jier/left/1' # 新图片存放位置
img(imgfile,font,imgfile_new)
8.排序
coordinate = [[54, 27], [26, 100], [114, 27], [15, 101],[75, 101]]
res0 = sorted({tuple(x): x for x in coordinate}.values(), reverse=False)
print('按第一个数字升序排列:', res0)
res1 = sorted({tuple(x): x for x in coordinate}.values(), reverse=True)
print('按第一个数字降序排列:', res1)
-
函数解读:sorted(iterable, cmp=None, key=None, reverse=False) ① iterable:可迭代对象 ② cmp:比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0 ③ key:主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序 ④:reverse:排序规则reverse = True 降序 reverse = False 升序(默认)
持续更新中......