2012-01-14 7 views
0

에있는 파일의 이름을 변경/문자열의 이름을 변경 : 숫자 (2 자) 패딩과 내가 이름을 인쇄하고 싶은나는 아래와 같은 파일들을 가지고 파이썬

_1 blank file_ 
_10 - blank file_ 
_11 - blank file_ 
_2 blank file_ 
_3 blank file_ 

을 내가 가진 :

PATH = "/Users/seth/python/test" 
# 
# 
for (path, dirs, files) in os.walk(PATH): 

    for z in files: 

     filename = z.replace(" ","_").replace("-","").replace("__","_") 
     print filename 

원하는 출력 :

_01_blan k_file_

_02_blank_file_

_03_blank_file_

_10_blank_file_

_11_blank_file_

+2

당신이 원하는 출력에 게시물을 업데이트 할 수 있습니까? – sholsapp

답변

1

당신은 그것에 대해 rjust 사용할 수 있습니다

for (path, dirs, files) in os.walk(PATH): 
    for z in files: 
    filename = z.replace(" ","_").replace("-","").replace("__","_") 

    # explode and transform number 
    parts = filename.split('_', 2) 
    parts[1] = parts[1].rjust(2, '0') 

    # rejoin the transformed parts 
    print '_'.join(parts) 
+0

나는 _parts [1] _을 _parts [0] _ (으)로 변경했고 그것은 아름답게 작동했습니다. 감사. –

+0

@ Simply :이 경우 귀하의 의견은 귀하가 설명한 것이 아닙니다. 첫 번째'_' 다음에 번호가 지정되었습니다. 그럼에도 불구하고 도움이 된다니 기쁘다. –

관련 문제