Python3.5 Class안에서 def 함수의 for문안의 find를 사용할 수가 없네요. ㅠㅠ 이유가 뭐죠????

조회수 912회

class Auto_title(): def init(directory, title_ext, movie_ext, exception,self): return

def Chg_name(a, title_ext):
    return a.replace(a[len(a)-3:], title_ext)

def auto_renamed(directory, title_ext, movie_ext, exception):
    print('\'%s\'경로의 \'*.%s\'파일들을 해당 \'*.%s\'영상에 맞추어 변경합니다.\n예외명칭은 \'%s\'입니다.' %(directory, title_ext, movie_ext, exception))
    nt = os.listdir(directory)
    data_list = []
    r_name_list = []

    for i in nt:
        if i.find(title_ext) != -1:               # 자막파일 확장자리스트 <---여기서 find가 안먹혀요..
            print('tt')
            pp = directory + i
            data_list.append(pp)
            print(data_list)
        elif i.find(movie_ext) != -1:              # 동영상파일 리스트 <---여기서 find가 안먹혀요..
            if i.find(exception) != -1:
                pass
            else:
                tn = Auto_title.Chg_name(i, title_ext)
                pp = directory + tn
                r_name_list.append(pp)

    data_list.sort()
    r_name_list.sort()

    for j in data_list:
        os.rename(j, r_name_list.pop(0))

        print('%d변경하였습니다.' %j+1)
    return print('작업이 완료되었습니다.\n')

if name == 'main': Auto_title.auto_renamed('E:/utorrent/movie/', 'sim', 'mkv', 'simple')

=======================================================================

해당 경료에 있는 모든 mkv 파일들을 동명의 sim 파일로 바꾸는 건데요. 왜?? Class의 def문에서 반복 for문의 find가 먹히지 않는 것일까요?? 다른 대처 방안이 있을까요??

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)