パイソンマジックオペレーション!ファイル名変更番号の順序が狂っています。

PHPz
リリース: 2023-04-12 16:19:14
転載
1815 人が閲覧しました

パイソンマジックオペレーション!ファイル名変更番号の順序が狂っています。

下図に示すように、ローカル フォルダーに大量のビデオ ファイルが存在しますが、この場合、順序は崩れていません。

パイソンマジックオペレーション!ファイル名変更番号の順序が狂っています。

#しかし、ネットワークディスクにアップロードした後、頻繁に調子が悪くなることがあります。つまり、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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート