我有一个字符串列表,其中存储着我的文件名:
flist = ['0.png','10.png', '3.png', '4.png', '100.png']
flist.sort()
print(flist)
输出:
['0.png', '10.png', '100.png', '3.png', '4.png']
但我希望:
['0.png', '3.png', '4.png', '10.png', '100.png']
有没有简单的方法来实现这个?
我有一个字符串列表,其中存储着我的文件名:
flist = ['0.png','10.png', '3.png', '4.png', '100.png']
flist.sort()
print(flist)
输出:
['0.png', '10.png', '100.png', '3.png', '4.png']
但我希望:
['0.png', '3.png', '4.png', '10.png', '100.png']
是的:
flist.sort(key=lambda fname: int(fname.split('.')[0]))
flist = ['0.png','10.png', '3.png', '4.png', '100.png']
flist.sort(key=lambda x: '{0:0>8}'.format(x))
print(flist)
split()
来隔离数值。重复项在整个范围的情况下都有效。您的问题标题(如果其他人在搜索中偶然发现此问题)掩盖了您具体的情况。 - roganjoshsplit()
是用来做什么的? - roganjosh