7 простых способов преобразовать имена папок в нижний регистр с помощью Python

В этой статье блога мы рассмотрим различные методы преобразования названий папок в нижний регистр с помощью Python. Независимо от того, имеете ли вы дело с каталогом, содержащим несколько папок, или вам просто нужно записать имя одной папки строчными буквами, эти методы помогут вам легко выполнить задачу. Давайте погрузимся!

Метод 1: использование модуля osи функции os.rename()

import os
def lowercase_folder_name(folder_path):
    folder_name = os.path.basename(folder_path)
    lowercased_name = folder_name.lower()
    new_folder_path = os.path.join(os.path.dirname(folder_path), lowercased_name)
    os.rename(folder_path, new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 2: использование модуля pathlib

from pathlib import Path
def lowercase_folder_name(folder_path):
    folder = Path(folder_path)
    lowercased_name = folder.name.lower()
    new_folder_path = folder.with_name(lowercased_name)
    folder.rename(new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 3: использование модуля shutil

import shutil
def lowercase_folder_name(folder_path):
    parent_path = os.path.dirname(folder_path)
    new_folder_path = os.path.join(parent_path, folder_path.lower())
    shutil.move(folder_path, new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 4: использование модуля subprocessи команд оболочки

import subprocess
def lowercase_folder_name(folder_path):
    subprocess.run(['mv', folder_path, folder_path.lower()])
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 5: использование модуля re

import re
def lowercase_folder_name(folder_path):
    folder_name = os.path.basename(folder_path)
    lowercased_name = re.sub(r'\W+', '_', folder_name).lower()
    new_folder_path = os.path.join(os.path.dirname(folder_path), lowercased_name)
    os.rename(folder_path, new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 6: использование модуля glob

import glob
def lowercase_folder_name(folder_path):
    folders = glob.glob(os.path.join(folder_path, '*'))
    for folder in folders:
        new_folder_path = os.path.join(folder_path, folder.lower())
        os.rename(folder, new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

Метод 7: использование функции walk

import os
def lowercase_folder_name(folder_path):
    for root, dirs, files in os.walk(folder_path):
        for folder in dirs:
            old_folder_path = os.path.join(root, folder)
            new_folder_path = os.path.join(root, folder.lower())
            os.rename(old_folder_path, new_folder_path)
# Usage example:
folder_path = '/path/to/FOLDER'
lowercase_folder_name(folder_path)

В этой статье мы рассмотрели семь различных методов преобразования имен папок в нижний регистр с помощью Python. В зависимости от ваших конкретных требований и предпочтений вы можете выбрать метод, который подходит вам лучше всего. Не забывайте осторожно относиться к операциям с файловой системой и при необходимости создавать резервные копии. Приятного кодирования!