Maison > Article > développement back-end > Modification par lots des noms de fichiers Python
Cet article partage avec vous un script python qui implémente la modification par lots des noms de fichiers en seulement 10 lignes de code. Il est recommandé à tous les amis dans le besoin de s'y référer
Je pensais autrefois qu'écrire des scripts. C'était difficile jusqu'à ce que je rencontre Python
Préface Avec le suivi de la sensibilisation nationale aux droits d'auteur, de nombreuses ressources musicales de films et de télévision ont commencé à être payantes, et Dipan bloque souvent diverses ressources à volonté. Pour protéger les ressources, les anciens pilotes sont de plus en plus enclins à télécharger des ressources localement, mais à mesure que la quantité de ressources locales augmente, la gestion des ressources devient un casse-tête. Il existe de nombreuses façons de gérer les ressources. Je préfère nommer une ressource. , mais changer les noms de fichiers est une tâche ennuyeuse et fastidieuse, donc un script de renommage par lots devient très important.
1. Fonction d'ajout de préfixe par lots
.
Renommer par lots
Logique de renommage par lots, divisée en trois étapes :
( 1) Déterminer les fichiers qui doivent être nommés
(2) Déterminer le nouveau nom du fichier
(3) Changer le nom
Une fois la logique clarifiée, le codage devient très simple
10 lignes de code
Code source de l'image ci-dessus :
# 导入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. (Étendu) Ajouter une fonction de suppression de préfixe :
Ce qui précède Le programme de 10 lignes ne peut ajouter des préfixes que par lots, mais ne peut pas les supprimer par lots. Ce n'est pas parfait. C'est le code source qui ajoute la fonction de suppression des préfixes
Ajouter/Supprimer
. Code source de l'image ci-dessus :
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(
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!