ホームページ  >  記事  >  バックエンド開発  >  Pythonファイル名の一括変更

Pythonファイル名の一括変更

巴扎黑
巴扎黑オリジナル
2017-09-11 10:42:371562ブラウズ

この記事では、わずか 10 行のコードでファイル名のバッチ変更を実装する Python スクリプトを紹介します。必要なすべての人や友人に参照していただくことをお勧めします。

Python との出会い

はじめに 国内の著作権意識の高まりに伴い、多くの映画、テレビ、音楽リソースが有料化され始めており、ディパンはリソースを保護するためにさまざまなリソースをブロックする傾向が高まっています。リソースをローカル エリアにダウンロードしますが、ローカル リソースの量が増えると、リソース管理が頭の痛い問題になります。リソースを管理する方法はたくさんありますが、リソースに覚えやすい名前を付けるのがよいでしょう。ファイル名は退屈で時間のかかるものなので、バッチ変更スクリプトが非常に重要になります

1. プレフィックス追加機能


バッチ変更ロジック

3 つのステップに分かれています。 :

(1) 名前を付ける必要があるファイルを決定します

(2) 新しいファイル名を決定します

(3) 名前を変更します

ロジックを明確にすると、コーディングは非常に簡単になります

コードは10行
上の画像のソースコード:

# 导入python内置的os模块和sys模块
import os
import sys

# 程序入口
if __name__ == "__main__":
  # 获取需要添加的前缀
  pre = input("请输入需要添加的前缀:")
  # 为了美观,为前缀添加一个中括号
  mark = "[%s]"%pre
  # 获取本目录下所有的文件名
  old_names = os.listdir()
  # 遍历目录下的文件名
  for old_name in old_names:
    # 跳过本脚本文件
    if old_name != sys.argv[0]:
      # 用新的文件名替换旧的文件名
      os.rename(old_name, mark+old_name)

2. (拡張) プレフィックス削除関数の追加:

上記の 10 行のプログラムは、プレフィックスをバッチで追加することしかできませんが、バッチでプレフィックスを削除することはできません。 . プレフィックス削除機能のソースコードです

​​

Add/Remove

上記画像のソースコード:

import os
import re
import sys

def add_mark():
  pre = input("请输入需要添加的前缀:")
  mark = "[%s]"%pre
  old_names= os.listdir()
  for old_name in old_names:
    if old_name != sys.argv[0]:
      os.rename(old_name, mark+old_name)

def remove_mark():
  old_names= os.listdir()
  for old_name in old_names:
    try:
      result = re.match(r"(^\[.*\])(.*)", old_name).group(2)
      rm = old_name

      if result:
        os.rename(old_name, result)
      print("已为%s移除前缀"%rm)
    except Exception as e:
      pass

def main():
  while True:
    option = int(input("请选择功能数值:\n1.添加前缀\n2.删除前缀\n3.退出程序\n"))
    if option == 1:
      add_mark()
    elif option == 2:
      remove_mark()
    else:
      exit()

if __name__ == "__main__":
  main(

以上がPythonファイル名の一括変更の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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