python:检查文件名是否是另一个文件名的子字符串
如果这是一个非常简单的问题,请原谅,但我对python还是新手 我有两个文件路径的文件列表,我想从第一个列表中选择第一个文件,检查具有第一个文件的子字符串的文件并运行我的代码 例如:python:检查文件名是否是另一个文件名的子字符串,python,Python,如果这是一个非常简单的问题,请原谅,但我对python还是新手 我有两个文件路径的文件列表,我想从第一个列表中选择第一个文件,检查具有第一个文件的子字符串的文件并运行我的代码 例如: "name1.csv" in "testname1.csv" # True "test.csv" in "testname1.csv" # False 第一张清单: 第一个文件1=/../../testname1.csv 第一个文件2=/…/…/testname2.csv 第一个文件3=/…/…/testn
"name1.csv" in "testname1.csv" # True
"test.csv" in "testname1.csv" # False
第一张清单:
if os.path.basename(first_file) in os.path.basename(second_file):
file2 = this_file
open(this_file,'r') as f:
#then run my code
尝试剥离文件扩展名,看看它是否有效,假设这些不是文件的真实名称。如果要搜索的子字符串不在文件名的末尾,则比较将因扩展名而失败。例如:
"name1.csv" in "testname1.csv" # True
"test.csv" in "testname1.csv" # False
第一个示例之所以有效,是因为name1.csv位于testname1.csv中,但第二个示例由于文件扩展名而失败
最简单的修复方法是删除扩展名,只需切掉最后4个字符,即:
my_search_string = os.path.basename(first_file)
if my_search_string[:-4] in os.path.basename(second_file):
[:-4]
从字符串末尾向后计算4个字符,并返回所有其他字符。尝试剥离文件扩展名,看看它是否有效,假设这些不是文件的真实名称。如果要搜索的子字符串不在文件名的末尾,则比较将因扩展名而失败。例如:
"name1.csv" in "testname1.csv" # True
"test.csv" in "testname1.csv" # False
第一个示例之所以有效,是因为name1.csv位于testname1.csv中,但第二个示例由于文件扩展名而失败
最简单的修复方法是删除扩展名,只需切掉最后4个字符,即:
my_search_string = os.path.basename(first_file)
if my_search_string[:-4] in os.path.basename(second_file):
[:-4]
从字符串末尾向后计算4个字符,并返回所有其他字符。您的代码看起来不错,这些文件名是真实名称吗?不要忘记,os.path.basename
包含文件扩展名。我只是把它放在if语句之前,看看这些变量是否是您所期望的:print(os.path.basename(first_文件)
我会检查一下,谢谢。如果我需要查找basename的一部分,而不是在randomtestname1.csv中查找testname1.csv,我只想查找name1.csv作为答案发布一些内容,看看这是否有帮助您的代码看起来不错,这些文件名是真实名称吗?别忘了,os.path.basename
包含文件扩展名我只是把它放在if语句之前,看看这些变量是否是您期望的:print(os.path.basename(first_文件)
我会检查一下,谢谢如果我需要查找basename的一部分,而不是在randomtestname1.csv中查找testname1.csv,我只想查找name1.csv作为答案发布一些内容,看看这是否有帮助