如何使用 Python 检查是否存在具有不同扩展名的同名文件
How to check if file with same name exists with different extensions using Python
我对文件相当陌生,目前正在编写可以传递 file.pom 路径并检查 .jar 文件是否存在于同一路径中的方法。
def get_file_type(self, file_path):
return pathlib.Path(file_path).suffix
def check_if_file_exists(self, pom_file_path, extension):
pom_file_extract_file = str(pom_file_path).rpartition("/")
pom_file_extract_filename = str(pom_file_extract_file [-1]).rpartition("-")
if pom_file_extract_filename ... # stuck
....
for file in files:
f = os.path.join(zip_path, file)
f_fixed = "." + f.replace("\", "/")
if self.get_file_type(f_fixed) == ".pom":
pom_paths = (root + "/" + file).replace("\", "/")
print(pom_paths)
# if self.check_if_file_exists(pom_paths, ".jar") == True:
# Do stuff...
我应该传递 pom 的目录吗?
在 pathlib 中发现有 is_file()
方法,使用它帮助我弄清楚了我的问题:
def check_if_file_exists(self, pom_file_path, extension):
pom_file_path_one = str(pom_file_path).rpartition("/")
pom_file_path_two = str(pom_file_path_one[-1]).rpartition(".")
extension_file = pathlib.Path(pom_file_path_one[0] + "/" + pom_file_path_two[0] + extension)
if extension_file.is_file():
return True
else:
return False
编辑
尽管如此,我还是使用这种方法来查找 -javadoc.jar
个文件。
pathlib
有几个方便的函数:
from pathlib import Path
p = Path('./file.pom')
p.with_suffix('.jar').exists()
您的函数将是:
def check_if_file_exists(self, pom_file_path, extension):
return pom_file_path.with_suffix(extension).exists()
我对文件相当陌生,目前正在编写可以传递 file.pom 路径并检查 .jar 文件是否存在于同一路径中的方法。
def get_file_type(self, file_path):
return pathlib.Path(file_path).suffix
def check_if_file_exists(self, pom_file_path, extension):
pom_file_extract_file = str(pom_file_path).rpartition("/")
pom_file_extract_filename = str(pom_file_extract_file [-1]).rpartition("-")
if pom_file_extract_filename ... # stuck
....
for file in files:
f = os.path.join(zip_path, file)
f_fixed = "." + f.replace("\", "/")
if self.get_file_type(f_fixed) == ".pom":
pom_paths = (root + "/" + file).replace("\", "/")
print(pom_paths)
# if self.check_if_file_exists(pom_paths, ".jar") == True:
# Do stuff...
我应该传递 pom 的目录吗?
在 pathlib 中发现有 is_file()
方法,使用它帮助我弄清楚了我的问题:
def check_if_file_exists(self, pom_file_path, extension):
pom_file_path_one = str(pom_file_path).rpartition("/")
pom_file_path_two = str(pom_file_path_one[-1]).rpartition(".")
extension_file = pathlib.Path(pom_file_path_one[0] + "/" + pom_file_path_two[0] + extension)
if extension_file.is_file():
return True
else:
return False
编辑
尽管如此,我还是使用这种方法来查找 -javadoc.jar
个文件。
pathlib
有几个方便的函数:
from pathlib import Path
p = Path('./file.pom')
p.with_suffix('.jar').exists()
您的函数将是:
def check_if_file_exists(self, pom_file_path, extension):
return pom_file_path.with_suffix(extension).exists()