我有一个看起来像这样的文件夹设置。myscript.pydirectory/- subdir1/- subdir2/- subdir3/有时会将新文件夹添加到中directory/,但是每个新文件夹始终被命名为subdirX,其中X是一个递增1的数字。如何获取要在其中列出的最后一个文件夹的路径directory/?
3 回答
拉丁的传说
TA贡献1789条经验 获得超8个赞
您应该使用os.listdir()
获取目录中的所有文件,然后使用max()
获取具有最大后缀号的文件,最后使用os.path.join()
将文件名与目录名结合起来以获得完整路径名。
import os print(os.path.join('directory', max(os.listdir('directory'), key=lambda n: int(n.replace('subdir', '')))))
HUH函数
TA贡献1836条经验 获得超4个赞
x = ['subdir{}'.format(i) for i in range(100)] max(x, key=lambda n: int(n[6:]))
max函数将按字典顺序进行排序,但是会将“ 99”放在“ 100”之后(9> 1)。因此,首先提取整数部分(n [6:]),将其转换为一个int,然后从中获取最大值。
添加回答
举报
0/150
提交
取消