用PySimpleGUI 做一个可视化窗口(用于批量改对应文件名称),
1.选择对应的文件路径,
2.选择改变文件种类word,excel, txt 或者ppt之类的,
3.在输入框内输入要增加的字符或者数字或者符号,
4. 然后如果点击添加,可以一键添加到对应的文件路径下的所有的命名里面,如果点击剔除,可以一键剔除到对应的文件路径下的所有的命名里面;
话不多说, 上代码,
import os
import PySimpleGUI as sg
def rename_files(folder_path, file_type, chars):
for file_name in os.listdir(folder_path):
if file_name.endswith(file_type):
old_path = os.path.join(folder_path, file_name)
new_path = os.path.join(folder_path, file_name.replace(file_type, chars + file_type))
os.rename(old_path, new_path)
print(f'{file_name}已改名为{file_name.replace(file_type, chars + file_type)}')
def remove_chars(folder_path, file_type, chars):
for file_name in os.listdir(folder_path):
if file_name.endswith(file_type):
old_path = os.path.join(folder_path, file_name)
new_path = os.path.join(folder_path, file_name.replace(chars, ''))
if old_path == new_path:
print(f'{file_name}中没有找到要剔除的字符')
else:
os.rename(old_path, new_path)
print(f'{file_name}已剔除{chars}')
# 定义窗口布局
layout = [
[sg.Text('选择文件夹:'), sg.Input(key='-FOLDER-'), sg.FolderBrowse()],
[sg.Text('选择要改变的文件类型:')],
[sg.Checkbox('Word', key='-WORD-'), sg.Checkbox('Excel', key='-EXCEL-'), sg.Checkbox('Txt', key='-TXT-'),
sg.Checkbox('ppt', key='-PPT-')],
[sg.Text('选择操作:')],
[sg.Radio('改变文件名', 'RADIO1', key='-RENAME-'), sg.Radio('剔除字符', 'RADIO1', key='-REMOVE-')],
[sg.Text('输入要增加或剔除的字符:'), sg.Input(key='-CHARS-')],
[sg.Button('确认', key='-CONFIRM-')],
[sg.Output(size=(60, 10))],
[sg.Button('退出', key='-EXIT-')]
]
# 创建窗口
window = sg.Window('APP_003_文件快速批量重命名加减', layout)
# 循环读取窗口事件
while True:
event, values = window.read()
if event == sg.WIN_CLOSED or event == '-EXIT-':
break
if event == '-CONFIRM-':
folder_path = values['-FOLDER-']
chars = values['-CHARS-']
if values['-WORD-']:
file_type = '.docx'
elif values['-EXCEL-']:
file_type = '.csv'
elif values['-TXT-']:
file_type = '.txt'
elif values['-PPT-']:
file_type = '.ppt'
else:
sg.popup('请选择要改变的文件类型!')
continue
if values['-RENAME-']:
rename_files(folder_path, file_type, chars)
elif values['-REMOVE-']:
remove_chars(folder_path, file_type, chars)
window.close()
我已经制作成了APP,并且基于此代码做了升级和更新, 没有python的电脑上面都可以操作,小程序
价格:8RMB/个(通用型),需要的留言。;
非通用型价格另算,可做数据定制处理等脚本开发,需要的留言。