使用Python中的sorted函数和正则表达式对文件名中的数字部分进行提取和比较,然后对文件进行排序。
示例代码如下:
import os
import re
# 定义一个函数,用于提取文件名中的数字部分
def extract_num(filename):
match = re.search(r'\d+', filename)
if match:
return int(match.group())
return -1
# 获取当前目录下所有文件名
files = os.listdir()
# 根据文件名中的数字部分进行排序
sorted_files = sorted(files, key=extract_num)
# 打印排序后的文件名
for filename in sorted_files:
print(filename)
在上面的示例中,我们首先定义了一个名为extract_num的函数,它使用正则表达式从文件名中提取数字部分。然后我们使用sorted函数对文件名列表进行排序,key参数指定了排序键,它传入extract_num函数,排序将根据该键来进行。最后,我们打印排序后的文件名列表。