Python os.listdir sort 排序问题(默认ASCII规则排序)

Python os.listdir sort 排序问题(默认ASCII规则排序)

sort默认ASCII规则排序

# 数组
test_list = ['0.jpg', '11.jpg', '2.jpg', '1.jpg', '20.jpg', '3.jpg']
# 排序
test_list.sort()
# 输出
print(test_list)

输出结果:

['0.jpg', '1.jpg', '11.jpg', '2.jpg', '20.jpg', '3.jpg']

字符串+数字排序正常

# 数组
test_list = ['0.jpg', '11.jpg', '2.jpg', '1.jpg', '20.jpg', '3.jpg']
# 排序
test_list.sort(key=lambda x: int(x[:-4]))
# 输出
print(test_list)

输出结果:

['0.jpg', '1.jpg', '2.jpg', '3.jpg', '11.jpg', '20.jpg']
原文地址:https://www.cnblogs.com/guoqingyan/p/15760149.html