Pythonでファイルをトラバースする3つの方法
今日は、ファイル トラバーサルを使用して、Windows でファイル名をバッチ変更する Python スクリプトを作成しました。 Python を使用したファイル トラバーサルには多くの方法があり、ここではそれらをリストして説明します。
os.path.walk()
これは伝統的な使用法です。
walk(root,callable,args) メソッドには 3 つのパラメータがあります: トラバースするディレクトリ、コールバック関数、およびコールバック関数のパラメータ (タプル形式)。
呼び出しプロセスは、ディレクトリ内のファイルまたはディレクトリを走査し、ディレクトリを走査するたびにコールバック関数が呼び出され、引数がパラメータとしてコールバック関数に渡されます。
コールバック関数には定義時に 3 つのパラメータもあります。たとえば、この例の func の 3 つのパラメータは、walk で渡されるパラメータ、ディレクトリへのパス、ディレクトリ内のファイル リスト (ファイルのみ) です。フルパスではなく名前)。例を参照:
OS をインポート
s = os.sep #unix または win によると、s は or/
root = "d:" + s + "ll" + s #走査するディレクトリ
def func(args,dire,fis): #コールバック関数の定義
fis の f の場合:
fname = os.path.splitext(f) #ファイル名を名前と拡張子のタプルに分割します
new = fname[0] + 'b' + fname[1] #名前を変更
os.rename(os.path.join(dire,f),os.path.join(dire,new)) #Rename
os.path.walk(root,func,()) #Traverse
このメソッドを使用すると、次のレベルを再帰的に移動できないという問題があります (これについてはまだよくわかりません。修正してください)。
Python の上級バージョンには os.walk() が追加されており、これよりも使いやすくなっています。
os.walk()
プロトタイプは次のとおりです: os.walk(top, topdown=True, onerror=None, followlinks=False)
通常は最初のパラメータのみを使用します。 (トップダウンは走査の順序を指定します)
このメソッドは、ディレクトリごとに 3 つの要素 (ディレクトリパス、ディレクトリ名、ファイル名) を返します。 1 つ目はパス、2 つ目はパスの下のディレクトリ、3 つ目はパスの下のディレクトリ以外 (Windows の場合はファイル) です。例を参照:
OS をインポート
s = os.sep
root = "d:" + s + "ll" + s
os.walk(root) 内の rt、dirs、ファイルの場合:
ファイル内の f の場合:
fname = os.path.splitext(f)
新しい = fname[0] + 'b' + fname[1]
os.rename(os.path.join(rt,f),os.path.join(rt,new))
このメソッドはすべてのファイルを再帰的に走査できます。
リストディレクトリ
os モジュールでいくつかのメソッドを使用して、組み合わせたり走査したりできます。例を参照:
OS をインポート
s = os.sep
root = "d:" + s + "ll" + s
os.listdir(root) の i:
os.path.isfile(os.path.join(root,i))の場合:
プリント i
ここで、i は完全なパスではなくディレクトリまたはファイル名であることに注意してください。これを使用する場合は、os.path.join() メソッドと組み合わせて完全なパスを復元する必要があります。
走査が完了したら、高度な処理のために正規表現を使用してファイル名を変更できます。
さらに、os.system (cmd) を使用して、シェル内で関連するコマンドを呼び出してファイルを処理することもできます。これは非常に優れており強力です。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PythonコードをSublimeテキストで実行するには、最初にPythonプラグインをインストールし、次に.pyファイルを作成してコードを書き込み、Ctrl Bを押してコードを実行する必要があります。コードを実行すると、出力がコンソールに表示されます。

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

Golangは、パフォーマンスとスケーラビリティの点でPythonよりも優れています。 1)Golangのコンピレーションタイプの特性と効率的な並行性モデルにより、高い並行性シナリオでうまく機能します。 2)Pythonは解釈された言語として、ゆっくりと実行されますが、Cythonなどのツールを介してパフォーマンスを最適化できます。

Visual Studioコード(VSCODE)でコードを作成するのはシンプルで使いやすいです。 VSCODEをインストールし、プロジェクトの作成、言語の選択、ファイルの作成、コードの書き込み、保存して実行します。 VSCODEの利点には、クロスプラットフォーム、フリーおよびオープンソース、強力な機能、リッチエクステンション、軽量で高速が含まれます。

メモ帳でPythonコードを実行するには、Python実行可能ファイルとNPPEXECプラグインをインストールする必要があります。 Pythonをインストールしてパスを追加した後、nppexecプラグインでコマンド「python」とパラメーター "{current_directory} {file_name}"を構成して、メモ帳のショートカットキー「F6」を介してPythonコードを実行します。
