Created
September 5, 2016 05:50
-
-
Save janpipek/08bb0b59a7fc4be8c70323eb630c4ccc to your computer and use it in GitHub Desktop.
Rename numbered file names to padded variant
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
import math | |
def rename(basename, basename2=None, extension=None, directory="."): | |
"""Rename all XXX1.ext, XXX123.ext files to XXX001.ext, ...""" | |
if basename2 is None: | |
basename2 = basename | |
files = [name for name in os.listdir(directory) if name.startswith(basename)] | |
if extension: | |
files = [name for name in files if name.endswith(extension)] | |
digits = int(math.ceil(math.log10(len(files)))) | |
for name in files: | |
base, ext = os.path.splitext(name) | |
number = base[len(basename):] | |
number = number.zfill(digits) | |
new_name = basename2 + number + ext | |
os.rename(name, new_name) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment