파이썬에서 두개의 리스트를 1:1 대응할 수 가 있나요??

조회수 1093회

파이썬으로 동영상 파일과 자막파일을 리스트로 받아서 rename하려고 하는데요. 마지막에 어떻게 해야 할까요??

import os, glob

fpath = glob.glob('e:/utorrent/Neon Genesis Evangelion/*.smi')
movies = glob.glob('e:/utorrent/Neon Genesis Evangelion/*.mkv')
dirl = 'e:/utorrent/Neon Genesis Evangelion/'
nt = os.listdir('e:/utorrent/Neon Genesis Evangelion/')
data_list = []
r_name_list = []
for i in nt:
    if i.find('.smi') != -1:
        data_list.append(i)

for j in movies:
    if j.find('.mkv') != -1:
        tn = j.replace('mkv','smi')
        r_name_list.append(tn)

for k in data_list:
    pp = dirl + k
    os.rename(pp, r_name_list)  <===== 여기서 어떻게 결과를 출력하는 것이 좋은 거죠??

아직 반복문이 서툴러서 ㅡㅜ

  • 하고자 하는 것이 무엇인지를 적어주세요. 정영훈 2017.10.6 04:18

1 답변

  • import os

    dirl = 'e:/utorrent/Neon Genesis Evangelion/' nt = os.listdir(dirl) data_list = [] r_name_list = []

    for i in nt: if i.find('.smi') != -1: pp = dirl + i data_list.append(pp) elif i.find('.mkv') != -1: tn = i.replace('mkv','smi') pp = dirl + tn r_name_list.append(pp) for j in data_list: os.rename(j, r_name_list.pop()) # 대상파일 이름(대상을 지칭함), 바꿀이름

    해결했습니다. 대상리스트를 활용해서 pop를 활용하니 편하게 완성할 수가 있었네요.^

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

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

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

(ಠ_ಠ)
(ಠ‿ಠ)