2014-11-22 49 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