ソースコード:#-coding:utf-8--
PySide2.QtWidgetsからインポートQApplication、QMainWindow、QPushButton、QPlainTextEdit、QMessageBoxインポート時間インポートosインポートshutilインポートグロブ
クラス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( 'OK' 、self .window) self.button.move(250、300)self.button.clicked.connect(self.handleCalc) def handleCalc(self): info = self.textEdit.toPlainText() if not os.path.exists(f '{mkdir_path} / {suffix}'): os.mkdir(f ' {mkdir_path} / {suffix} ' mkdir_path = os.path.join(info、 '文件分クラス') start_time = time.time() そうでない場合os.path.exists(mkdir_path): os.mkdir(mkdir_path) file_num = 0 dir_num = 0 (glob内のファイルの場合)。 glob(f '{info} \ *'): print(file) if os.path.isfile(file): filename = os.path.basename(file) if '。' ファイル名: suffix = filename.split( '。')[-1] else: suffix = ' others'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、 'finish results'、 f '' '整理する必要はありません、大丈夫ですか?' '' ) else: QMessageBox.about(self.window、 '整理結果'、f ' ビープ音、ビープ音が鳴り、終了しました!\ n'f '合計{file_num}ファイル{dir_num}フォルダにソート\ n'f '終了時間は{duaration_time}秒' )
名前==「メイン」の場合:
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ファイル内同じレベルのディレクトリでプログラムが生成され、exe実行可能ファイルはdistディレクトリにあります。
効果画像:
目的:主にデスクトップファイルを整理するために使用されます〜(特定のディレクトリ内のファイルを整理します〜)
追記
最近、多くの友人がプライベートメッセージを通じてPythonの学習問題について相談しました。コミュニケーションを促進するには、青をクリックしてディスカッションに参加し、自分でリソースベースに回答してください