질문이 있습니다

코딩의 ㅋ자도 잘 모르고 챗gpt와 구글링으로 어찌어찌 기워가면서 쓰고 있는데


특정 경로 내 .ts 파일 확장자만을 가진 파일들의 파일명에 영어, 한글, 숫자, 공백, - ,_ 만 있도록 하는 파이썬 코드를 만들려고 했습니다.

구글링을 하니 제 역량 부족인 것 같지만 파일명을 그와 같이 바꾸는 것 관련해서는 잘 나오지 않았고

챗gpt가 써준 파이썬 코드는 일본어문자를 지우지 못했습니다.

혹시 조언을 구해봐도 될까요? 

다음은 챗gpt의 코드입니다.

import os

import re


def clean_filename(filename):

    cleaned_filename = re.sub(r'[^\w\s가-힣]', '', filename)

    return cleaned_filename


def process_directory(directory_path):

    for root, _, files in os.walk(directory_path):

        for filename in files:

            if filename.endswith('.ts'):

                base_name, extension = os.path.splitext(filename)

                cleaned_base_name = clean_filename(base_name)

                new_filename = cleaned_base_name + extension

                old_filepath = os.path.join(root, filename)

                new_filepath = os.path.join(root, new_filename)

                

                # 파일명 변경

                os.rename(old_filepath, new_filepath)

                print(f'Renamed: {filename} -> {new_filename}')


# 대상 디렉토리 경로 설정

target_directory = r'C:\Users\User\Downloads\a'


# 디렉토리 내의 파일명 처리

process_directory(target_directory)