这是我当前的代码:
directory = "C:/Users/test/Desktop/test/sign off img"
choices = glob.glob(os.path.join(directory, "*.jpg"))
print(choices)
这将为我返回该特定文件夹内所有.JPG文件的每个路径。
作为示例,这是当前上面的代码的输出:
['C:/Users/test/Desktop/test/sign off img\\SFDG001 0102400OL - signed.jpg', 'C:/Users/test/Desktop/test/sign off img\\SFDG001 0102400OL.jpg']
如何获取仅返回路径结尾的输出?
这是我的愿望结局:
['SFDG001 0102400OL - signed.jpg', 'SFDG001 0102400OL.jpg']
相同的路径,但只返回结尾字符串。
答案 0 :(得分:1)
您可以使用os.listdir
函数:
>>> import os
>>> files = os.listdir("C:/Users/test/Desktop/test/sign off img")
>>> filtered_files = [file for file in files if 'signed' in file]
如您在文档中所见,os.listdir
使用当前目录作为默认参数,即,如果您不传递值。否则,它将使用您传递给它的路径。
答案 1 :(得分:0)
我建议大部分时间在pathlib.Path
上使用os
。试试这个,例如:
from pathlib import Path
directory = Path("C:/Users/test/Desktop/test/sign off img")
choices = [path.name for path in directory.glob("*.jpg")]