目次
残念です
エフェクト表示
開発アイデア
Outlook
ホームページ バックエンド開発 Python チュートリアル 複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。

複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。

Apr 11, 2023 pm 08:19 PM
python 道具 コード

複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。

残念です

私はデスクトップを整理整頓するのが好きではないことを認めます。デスクトップが散らかったほうがファイルが見つけやすいと思うからです。

あはは、でも最近デスクトップがごちゃごちゃしてて、ほとんど画面全体を占めていて見えなくなりました。ワンクリックでデスクトップを整理するソフトウェアはたくさんありますが、他のパスにあるファイルも整理する必要があるため、この要件を満たすために Python を使用することを考えました。

複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。

エフェクト表示

ファイルを、画像、ビデオ、オーディオ、ドキュメント、圧縮ファイル、一般的な形式、プログラム スクリプトの 9 つの主要なカテゴリに分類しました。 、実行可能プログラムとフォント ファイル。

# 不同文件组成的嵌套字典
file_dict = {
'图片': ['jpg','png','gif','webp'],
'视频': ['rmvb','mp4','avi','mkv','flv'],
"音频": ['cd','wave','aiff','mpeg','mp3','mpeg-4'],
'文档': ['xls','xlsx','csv','doc','docx','ppt','pptx','pdf','txt'],
'压缩文件': ['7z','ace','bz','jar','rar','tar','zip','gz'],
'常用格式': ['json','xml','md','ximd'],
'程序脚本': ['py','java','html','sql','r','css','cpp','c','sas','js','go'],
'可执行程序': ['exe','bat','lnk','sys','com'],
'字体文件': ['eot','otf','fon','font','ttf','ttc','woff','woff2']
}
ログイン後にコピー

file_dict は私たちが定義した辞書であり、研究や仕事でよく使用される形式が含まれています。よく使用される形式は全員に説明する必要があり、よく使用されるがどのカテゴリに入れればよいかわからないファイルについては、ここに保管されます。

注: コンピュータに他のファイル形式がある場合は、上記の file_dict ディクショナリを変更するだけで済みます。

開発アイデア

このような小さなツールの開発には、os モジュール、shutil モジュール、glob モジュールという合計 3 つの Python ライブラリが必要で、これらはファイルやフォルダーの処理に一緒に使用されます。単に素晴らしいです!

全体の開発手順の一般的な考え方は次のとおりです:

  • ① ファイル パスを任意に指定します;
  • ② 現在のディレクトリにあるすべてのファイルを取得します。ファイルパスを取得し、各ファイルに対応するサフィックスを取得します;
  • ③ 各ファイルが指定されたネストされた辞書にあるかどうかを判断し、対応するファイル分類を返します;
  • ④ 各ファイルのファイルを判断します分類 フォルダーが存在するかどうか。カテゴリごとにファイルを保存するには新しいフォルダーを作成する必要があるため;
  • ⑤ 各ファイルを対応するカテゴリにコピーします;

完全なコードは次のとおりです。詳細コード 備考]

# 导入相关库
import os
import glob
import shutil
# 采用input()函数,动态输入要处理的文件路径。
path = input("请输入要清理的文件路径:")
# 定义一个文件字典,不同的文件类型,属于不同的文件夹,一共9个大类。
file_dict = {
'图片': ['jpg','png','gif','webp'],
'视频': ['rmvb','mp4','avi','mkv','flv'],
"音频": ['cd','wave','aiff','mpeg','mp3','mpeg-4'],
'文档': ['xls','xlsx','csv','doc','docx','ppt','pptx','pdf','txt'],
'压缩文件': ['7z','ace','bz','jar','rar','tar','zip','gz'],
'常用格式': ['json','xml','md','ximd'],
'程序脚本': ['py','java','html','sql','r','css','cpp','c','sas','js','go'],
'可执行程序': ['exe','bat','lnk','sys','com'],
'字体文件': ['eot','otf','fon','font','ttf','ttc','woff','woff2']
}

# 定义一个函数,传入每个文件对应的后缀。判断文件是否存在于字典file_dict中;
# 如果存在,返回对应的文件夹名;如果不存在,将该文件夹命名为"未知分类";
def func(suffix):
for name, type_list in file_dict.items():
if suffix.lower() in type_list:
return name
return "未知分类"
# 递归获取 "待处理文件路径" 下的所有文件和文件夹。
for file in glob.glob(f"{path}/**/*",recursive=True):
 # 由于我们是对文件分类,这里需要挑选出文件来。
if os.path.isfile(file):
 # 由于isfile()函数,获取的是每个文件的全路径。这里再调用basename()函数,直接获取文件名;
file_name = os.path.basename(file)
suffix = file_name.split(".")[-1]
# 判断 "文件名" 是否在字典中。
name = func(suffix)
#print(func(suffix))
# 根据每个文件分类,创建各自对应的文件夹。
if not os.path.exists(f"{path}\{name}"):
os.mkdir(f"{path}\{name}")
# 将文件复制到各自对应的文件夹中。
shutil.copy(file,f"{path}\{name}")
ログイン後にコピー

結果は次のとおりです。

複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。

Outlook

Huang はこの記事のコードを全員と共有しました。しかし、私はこのコードのビジュアルインターフェイスを作成しませんでした。同時に、誰もがプログラムをパッケージ化して他の人に直接送信して、直接使用できるようにしたいと考えています。

以上が複雑なフォルダーでも数分で整理できる小さなツールを Python で作成しました。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

mysqlは支払う必要がありますか mysqlは支払う必要がありますか Apr 08, 2025 pm 05:36 PM

MySQLには、無料のコミュニティバージョンと有料エンタープライズバージョンがあります。コミュニティバージョンは無料で使用および変更できますが、サポートは制限されており、安定性要件が低く、技術的な能力が強いアプリケーションに適しています。 Enterprise Editionは、安定した信頼性の高い高性能データベースを必要とするアプリケーションに対する包括的な商業サポートを提供し、サポートの支払いを喜んでいます。バージョンを選択する際に考慮される要因には、アプリケーションの重要性、予算編成、技術スキルが含まれます。完璧なオプションはなく、最も適切なオプションのみであり、特定の状況に応じて慎重に選択する必要があります。

高負荷アプリケーションのMySQLパフォーマンスを最適化する方法は? 高負荷アプリケーションのMySQLパフォーマンスを最適化する方法は? Apr 08, 2025 pm 06:03 PM

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。

mysqlはインターネットが必要ですか? mysqlはインターネットが必要ですか? Apr 08, 2025 pm 02:18 PM

MySQLは、基本的なデータストレージと管理のためにネットワーク接続なしで実行できます。ただし、他のシステムとのやり取り、リモートアクセス、または複製やクラスタリングなどの高度な機能を使用するには、ネットワーク接続が必要です。さらに、セキュリティ対策(ファイアウォールなど)、パフォーマンスの最適化(適切なネットワーク接続を選択)、およびデータバックアップは、インターネットに接続するために重要です。

MySQLにはサーバーが必要ですか MySQLにはサーバーが必要ですか Apr 08, 2025 pm 02:12 PM

生産環境の場合、パフォーマンス、信頼性、セキュリティ、スケーラビリティなどの理由により、通常、MySQLを実行するためにサーバーが必要です。サーバーには通常、より強力なハードウェア、冗長構成、より厳しいセキュリティ対策があります。小規模で低負荷のアプリケーションの場合、MySQLはローカルマシンで実行できますが、リソースの消費、セキュリティリスク、メンテナンスコストを慎重に考慮する必要があります。信頼性とセキュリティを高めるには、MySQLをクラウドまたは他のサーバーに展開する必要があります。適切なサーバー構成を選択するには、アプリケーションの負荷とデータボリュームに基づいて評価が必要です。

MongoDBデータベースパスワードを表示するNAVICATの方法 MongoDBデータベースパスワードを表示するNAVICATの方法 Apr 08, 2025 pm 09:39 PM

Hash値として保存されているため、Navicatを介してMongoDBパスワードを直接表示することは不可能です。紛失したパスワードを取得する方法:1。パスワードのリセット。 2。構成ファイルを確認します(ハッシュ値が含まれる場合があります)。 3.コードを確認します(パスワードをハードコードできます)。

hadidb:pythonの軽量で水平方向にスケーラブルなデータベース hadidb:pythonの軽量で水平方向にスケーラブルなデータベース Apr 08, 2025 pm 06:12 PM

hadidb:軽量で高レベルのスケーラブルなPythonデータベースHadIDB(HadIDB)は、Pythonで記述された軽量データベースで、スケーラビリティが高くなっています。 PIPインストールを使用してHADIDBをインストールする:PIPINSTALLHADIDBユーザー管理CREATEユーザー:CREATEUSER()メソッド新しいユーザーを作成します。 Authentication()メソッドは、ユーザーのIDを認証します。 fromhadidb.operationimportuseruser_obj = user( "admin"、 "admin")user_obj。

MySQLデータベースは画像を保存できますか? MySQLデータベースは画像を保存できますか? Apr 08, 2025 pm 05:27 PM

MySQLデータベースに画像を保存することは実行可能ですが、ベストプラクティスではありません。 MySQLは、画像を保存するときにBLOBタイプを使用しますが、データベースのボリュームのうねり、クエリ速度、複雑なバックアップを引き起こす可能性があります。より良い解決策は、ファイルシステムに画像を保存し、データベースに画像のみを保存してクエリのパフォーマンスとデータベースのボリュームを最適化することです。

mysqlはpdfを保存できますか mysqlはpdfを保存できますか Apr 08, 2025 pm 01:48 PM

MySQLはPDFファイルを直接保存することはできず、バイナリデータのファイルパスまたはハッシュ値を保存することで実現できます。コアのアイデアは、テーブルを使用して、次のフィールドを保存することです:ID、ファイル名、ファイルパス(またはハッシュ値)。ファイルパススキームは、シンプルで効率的なファイルパスを保存しますが、セキュリティのためのファイルシステムに依存します。ファイルハッシュスキームは、PDFファイルのSHA-256ハッシュ値を保存します。これは、より安全で、データの整合性検証を実行できます。

See all articles