首页 > 解决方案 > 有没有办法使用 Python 检索文件名?

问题描述

在 Linux 目录中,我有几个编号的文件,例如“day1”和“day2”。我的目标是编写一个代码,从文件中检索数字并将 1 添加到具有最大数字的文件并创建一个新文件。因此,例如,如果有文件“day1”、“day2”和“day3”,代码应该读取文件列表并添加“day4”。为此,至少我需要知道如何检索文件名上的数字。

标签: pythonlinuxpython-3.xfileubuntu

解决方案


我会os.listdir用来获取所有文件名,删除“day”前缀,将剩余的字符转换为整数,然后取最大值。从那里开始,只需增加数字并将其附加到相同的前缀:

import os
max_file = max([int(f[3:]) for f in os.listdir('some_directory')])
new_file = 'day' + str(max_file + 1)

推荐阅读