8

python写一个文件整理工具

 3 years ago
source link: https://blog.csdn.net/ppkqq/article/details/112058782
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

python写一个文件整理工具

ppkqq 2021-01-01 10:52:09 758
分类专栏: 笔记

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
源代码:
#--coding:utf-8--

from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit, QMessageBox
import time
import os
import shutil
import glob

class tidy():
def init(self):

    self.window = QMainWindow()
    self.window.resize(500, 400)
    self.window.move(300, 300)
    self.window.setWindowTitle('文件整理小棉袄')

    self.textEdit = QPlainTextEdit(self.window)
    self.textEdit.setPlaceholderText("请输入客官需要整理文件所在的路径")
    self.textEdit.move(10, 25)
    self.textEdit.resize(300, 25)

    # self.textEdit = QPlainTextEdit(self.window)
    # self.textEdit.setPlaceholderText("请输入文件放置的路径")
    # self.textEdit.move(10, 75)
    # self.textEdit.resize(300, 25)

    self.button = QPushButton('确定', self.window)
    self.button.move(250, 300)

    self.button.clicked.connect(self.handleCalc)

def handleCalc(self):
    info = self.textEdit.toPlainText()
    mkdir_path = os.path.join(info, '文件分类')

    start_time = time.time()

    if not os.path.exists(mkdir_path):
        os.mkdir(mkdir_path)

    file_num = 0
    dir_num = 0

    for file in glob.glob(f'{info}\*'):
        print(file)
        if os.path.isfile(file):
            filename = os.path.basename(file)
            if '.' in filename:
                suffix = filename.split('.')[-1]
            else:
                suffix = 'others'
            if not os.path.exists(f'{mkdir_path}/{suffix}'):
                os.mkdir(f'{mkdir_path}/{suffix}')
                dir_num += 1
            shutil.move(file, f'{mkdir_path}/{suffix}')
            file_num += 1

    end_time = time.time()
    duaration_time = end_time - start_time

    if dir_num == 0:
        QMessageBox.about(self.window,
                          '整理结果',
                          f'''无需整理,闲的没事?'''
                          )

    else:
        QMessageBox.about(self.window,
                          '整理结果',
                          f'哔哩哔哩噼里啪啦,整理完成啦!\n'
              f'共有{file_num}个文件分类到了{dir_num}个文件夹中\n'
              f'整理时间为{duaration_time}秒'
                          )

if name == “main”:

app = QApplication([])
stats = tidy()
stats.window.show()
app.exec_()

步骤:
1.下载PySide2库
2.复制博主上面代码
3.下载pyinstaller库
4.cmd进入代码的py文件所在目录
5.pyinstaller -F -i 你的文件名.py --noconsole
6.在py文件同级目录会生成程序,在dist目录下能找到exe可执行文件

效果图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK