2012-01-14 36 views
0

重命名文件我有一堆文件象下面這樣:重命名串/ Python中

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

我想打印出來的名稱與數字填補(2個字符)

我:

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 2012-01-14 21:38:04

回答

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] _,它運行得非常漂亮。謝謝。 – 2012-01-14 22:17:40

+0

@Simply:在這種情況下,您的輸入不是您所描述的。您指定的編號將在第一個'_'之後。儘管如此,很高興幫助。 – 2012-01-14 22:28:37