Python 3.x 对文件进行数字排序,即使文件中有字母
我如何对这样的东西进行数字排序 GDcheerios.38265484009 BirdPigeon.2051412858 彼得帕克姆J.66848470 这些都在scores.txt中Python 3.x 对文件进行数字排序,即使文件中有字母,python-3.x,file,sorting,numbers,Python 3.x,File,Sorting,Numbers,我如何对这样的东西进行数字排序 GDcheerios.38265484009 BirdPigeon.2051412858 彼得帕克姆J.66848470 这些都在scores.txt中 #reading the file lines with open("scores.txt") as f: names_scores = f.read().splitlines() #sorting player scores player_sort = [] fo
#reading the file lines
with open("scores.txt") as f:
names_scores = f.read().splitlines()
#sorting player scores
player_sort = []
for line in names_scores:
player_sort.append(line)
player_sort.sort()
print(player_sort)
您可以使用内置函数使用键函数对列表进行排序,键函数在
上拆分,并选择最后一个整数元素作为列表中每个项目的比较键
names_scores = [
"BirdPigeon.2051412858", "GDcheerios.38265484009", "peterparkermj.66848470",
]
print(sorted(names_scores, key=lambda x: int(x.rsplit(".", maxsplit=1)[-1])))
['peterparkermj.66848470', 'BirdPigeon.2051412858', 'GDcheerios.38265484009']