2014-11-22 144 views
0

我試圖重命名使用python的文件,但我沒有找到如何設置一個未知變量設置未知變量/ os.rename - Python的

import sys,os 

    os.rename('picture(.+?).png', 'true.png'); 

我想劇本找到「picture_1444.png」例如,並將其重命名爲「true.png」,我知道在批處理中我們使用「*」來設置一個未知的變量,我希望python中的「*」等價。

所以我已經試過這樣:

import sys,os 

    episode = creepy; 
    serie = pasta; 
    output = str(serie)+'_'+str(episode); 
    names = glob.glob('picture_[0-9]*.png') 
    if matching_names: 
     os.rename(names[0], ''+output+'.png'); 

,但我有一個錯誤的

names = glob.glob('picture_[0-9]*.png') 

感謝

回答

0

os.rename()擴展通配符。您可以使用glob.glob() function列出匹配的文件名,然後移動找到的第一個:

matching_names = glob.glob('picture_[0-9]*.png') 
if matching_names: 
    os.rename(matching_names[0], 'true.png') 
+0

非常感謝。 – Prixeler 2014-11-22 16:05:04

+0

我試過這個 \t \t'import sys,os \t episode = creepy; serie =意大利麪; output = str(serie)+'_'+ str(episode); 名稱= glob.glob( 'picture_ [0-9] * PNG') \t \t如果matching_names: \t \t os.rename(名稱[0], '' +輸出+ 'PNG')' \t \t 但我在names = glob.glob('picture_ [0-9] *。png') – Prixeler 2014-11-22 17:04:02

+0

@Prixeler上出錯:那麼實際的錯誤是什麼呢? – 2014-11-22 18:17:49