猿问

如何获取目录中最后列出的目录的路径?

我有一个看起来像这样的文件夹设置。


myscript.py

directory/

- subdir1/

- subdir2/

- subdir3/

有时会将新文件夹添加到中directory/,但是每个新文件夹始终被命名为subdirX,其中X是一个递增1的数字。


如何获取要在其中列出的最后一个文件夹的路径directory/?


泛舟湖上清波郎朗
浏览 197回答 3
3回答

拉丁的传说

您应该使用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函数

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,然后从中获取最大值。
随时随地看视频慕课网APP

相关分类

Python
我要回答