重命名文件/从文件名中删除字符

时间:2013-10-01 20:37:52

标签: python filenames renaming

我有一个目录,其中包含已重命名为以下内​​容的视频文件:

video.3gp~1209384

我需要从文件名中删除所有字符,包括~。任何帮助都会很棒!

2 个答案:

答案 0 :(得分:0)

我个人只会使用IPython;它与bash / shell集成。只需使用!为shell命令添加前缀,并使用$在shell命令中插入Python变量。

>>> files = !ls *.3gp~*
>>> for f in files:
        newname = f.split('~')[0]
        mv $f $nename

或者,如果那不是一个选项(例如,您无法安装IPython或必须使用纯Python):

import os

files = os.listdir(DIRNAME)
for f in files:
    if '.3gp~' in f:
        newname = f.split('~')[0]
        os.rename(f, newname)

这两个假设您的文件在您要保留的名称部分没有~;这不太可能;但如果他们这样做,那么在代码中它将是一个非常简单的适应。

答案 1 :(得分:0)

试试这个:

import os
for filename in os.listdir("."):    
    os.rename(filename, filename[:filename.find("~")])