Ricerca nel sito web

Come rinominare in batch i file in Python


Dai un'occhiata a questo semplice script che può farti risparmiare molto tempo rinominando manualmente i file.

La ridenominazione batch è un metodo efficace per organizzare i tuoi file digitali. Può essere particolarmente utile quando i tuoi file non hanno nomi descrittivi o coerenti.

Puoi automatizzare un'azione di ridenominazione batch con un semplice script Python. Passa un modello nello script Python e consentigli di rinominare tutti i file in una cartella utilizzando una convenzione di denominazione coerente.

Una volta che lo script Python è pronto, puoi eseguirlo dalla riga di comando e rinominerà tutti i file in una cartella specificata.

Come scorrere tutti i file in una directory

Esistono molti modi per rinominare in batch un file in Windows, anche tramite il prompt dei comandi o Esplora file di Windows.

Un altro modo per rinominare i file è utilizzare uno script Python. Se non hai familiarità con Python, ci sono modi in cui puoi imparare a scrivere un codice Python migliore.

Per rinominare tutti i file in una determinata cartella, dovrai scorrere quella serie di file. Puoi visualizzare l'esempio completo in questo repository GitHub.

  1. Crea una nuova cartella per archiviare i file che desideri rinominare:

  2. Crea un nuovo file chiamato batch-rename.py.
  3. Nella parte superiore del file, importa il modulo del sistema operativo. Ciò ti consentirà di accedere ai file e alle directory del tuo sistema operativo:

    import os
  4. Definisci la directory in cui hai archiviato i file:

    dir_path = "C:\\Users\\Sharl\\Desktop\\files"
    dir_path = "files"
  5. Inizializza una variabile contatore, che utilizzerai per aggiungere un conteggio alla fine del nome file:

    counter = 1
  6. Aggiungi un ciclo for per scorrere ogni file nella directory:

    for filename in os.listdir(dir_path):
      print("Renaming: " + filename + "...")
  7. Per testare lo script, eseguilo dalla riga di comando utilizzando il comando python. Assicurati di accedere al percorso della cartella in cui hai archiviato lo script:

    cd Desktop
    python batch-rename.py

Come rinominare tutti i file in base a un determinato modello

L'utente dovrà inserire un modello nello script, come "Financial_Planning". Lo script rinominerà tutti i file secondo il modello fornito e aggiungerà un conteggio alla fine del nome file.

  1. Nella parte superiore del file, importa il modulo sys.

    import sys
    python batch-rename.py "Financial_Planning"
  2. Dopo le istruzioni di importazione, inserisci l'argomento della riga di comando. Se l'utente non ne inserisce uno, stampa un messaggio di errore:

    commandLineArgs = sys.argv
    if len(commandLineArgs) > 1:
      pattern = commandLineArgs[1] + "_{}"
    else:
      print('Enter a pattern for the new filenames as a command line argument')
      sys.exit()
  3. All'interno del ciclo for, quando si esegue il loop di ciascun file, si ottiene l'estensione del file:

    file_ext = os.path.splitext(filename)[1] 
  4. Crea un nuovo nome file in base al modello specificato. Aggiungi un conteggio alla fine del nome del file e aggiungi nuovamente l'estensione del file:

    new_filename = pattern.format(counter) + file_ext
  5. Rinominare il file con il nuovo nome file:

    oldFileName = os.path.join(dir_path, filename)
    newFileName = os.path.join(dir_path, new_filename)
    os.rename(oldFileName, newFileName)
  6. Incrementa il contatore per il file successivo:

    counter += 1
  7. Dopo il ciclo for, stampa un messaggio di conferma:

    print("All files renamed.")
  8. Su una riga di comando, vai alla cartella in cui hai archiviato lo script Python. Usa il comando python, seguito da uno schema per rinominare i tuoi file:

  9. Apri Esplora file e visualizza i file rinominati:

Automatizzare attività semplici utilizzando Python

Uno script Python è un modo molto utile per automatizzare attività semplici, come rinominare più file contemporaneamente. Puoi esplorare altri modi per rinominare in batch i file sul tuo computer.

Articoli correlati: