根据某些规则在Python中编辑文件名

时间:2018-12-27 17:52:38

标签: python file text

我有很多文件,其名称结构如下:

this_is_a_file.extension

我必须将它们从最后一个下划线(包括在内)中删除,保留扩展名,然后将具有新名称的文件保存到另一个目录中。

请注意,这些名称的长度是可变的,因此我无法利用单个字符的位置。

此外,它们具有不同数量的下划线,否则我将应用类似的内容:split a file name

我该怎么办?

1 个答案:

答案 0 :(得分:1)

您可以创建一个函数,该函数将原始文件名用下划线分隔,并在句点之间分隔最后一段。然后,您可以像这样再次将它们重新结合在一起:

def myJoin(filename):
    splitFilename=filename.split('_')
    extension=splitFilename[-1].split('.')
    splitFilename.pop(-1)
    return('_'.join(splitFilename)+'.'+extension[-1])

一些示例来说明它的工作原理:

>>> p="this_is_a_file.extension"
>>> myJoin(p)
'this_is_a.extension'
>>> q="this_is_a_file_with_more_segments.extension"
>>> myJoin(q)
'this_is_a_file_with_more.extension'