📅  最后修改于: 2023-12-03 15:36:18.867000             🧑  作者: Mango
当我们处理文件时,经常需要操作文件名,其中包括删除文件名中的扩展名。在Python中,可以使用一些简单的方法来实现这个目的。
我们可以使用Python字符串的split方法将文件名和扩展名分开。split函数会以指定的分隔符分割字符串,并返回一个包含分割后字符串的列表。对于文件名和扩展名,常用的分隔符是点号(.)。
filename = 'example.txt'
name = filename.split('.')[0]
print(name) # output: example
在上面的代码中,我们将文件名拆分为“example”和“txt”,然后选择索引0来获取文件名。
如果文件名中包含多个点,则可以通过指定分隔符数量来确保只分隔一次。
filename = 'example.old.txt'
name = filename.split('.', 1)[0]
print(name) # output: example
在上面的代码中,我们指定分隔符数量为1,以确保只分隔第一个点。
os.path模块是Python标准库中用于处理文件和目录路径的模块之一。它提供了许多有用的函数,包括可以从文件路径中获取文件名的basename函数。
import os
filename = 'example.txt'
name = os.path.splitext(filename)[0]
print(name) # output: example
在上面的代码中,我们调用了os.path模块的splitext函数,该函数将文件名和扩展名分开,并返回一个包含两个元素的元组。我们选择索引0以获取文件名部分。
这个方法不仅与单个点工作,而且可以与任何数量的点一起使用。
filename = 'example.old.txt'
name = os.path.splitext(filename)[0]
print(name) # output: example.old
在上面的代码中,我们将获取到的文件名保留为“example.old”,因为它是文件名中的所有内容。
这些是从Python文件名中删除扩展名的两种主要方法。无论您选择哪种方法,都可以轻松地操作文件名以及从中提取所需的部分。