下図に示すように、ローカル フォルダーに大量のビデオ ファイルが存在しますが、この場合、順序は崩れていません。
#しかし、ネットワークディスクにアップロードした後、頻繁に調子が悪くなることがあります。つまり、1、10、11、2、20 に従ってソートされるため、順番に見るのは不便です。
したがって、ローカルで名前を変更できるようにしたいと考えています。たとえば、001、002、003...、020 に従って並べ替えることができます。上記のような恥ずかしい状況。
Python では、os モジュールを使用して、コピー、移動、名前変更、削除などのさまざまなファイルやディレクトリを自動的に処理できます。
対話型環境で次のコマンドを入力します:
import os path =os.getcwd() filenames = os.listdir(path) filenames
出力:
os module の getcwd() 関数を使用すると、現在の作業ディレクトリを取得できます。 os モジュールの listdir() 関数は、作業ディレクトリ内のすべてのファイルとサブディレクトリを返すことができます。これら 2 つの関数を通じて、現在の作業ディレクトリ内のすべてのファイルを取得します。
対話型環境で次のコマンドを入力します:
file_mp4s = [i for i in filenames if i.split(".")[-1] == "mp4"] file_mp4s
出力:
このステップファイルリスト内のすべての mp4 ファイルをフィルタリングするために使用されます。ループ条件を使うのは面倒ですが、リスト生成なら1行の記述で動画ファイルを取得できます。
対話型環境で次のコマンドを入力します:
for i in file_mp4s: new_name = i.split("-")[0].zfill(3) + "-" + i.split("-")[1] os.rename(i,new_name)
出力:
os モジュールの rename() 関数を使用すると、ファイルの名前を変更できます。
ここでは文字列関数 zfill() も使用されており、指定された長さの文字列が返されます。元の文字列は右揃えで先頭に 0 が埋め込まれます。したがって、「1」.zfill(3) は「001」を返します。
このようにして、順序が狂っているファイルの名前変更と番号付けを実現しました。今日の共有がお役に立てば幸いです~
以上がパイソンマジックオペレーション!ファイル名変更番号の順序が狂っています。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。