Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
根据每个字符串项中的最后一个数字在python中对列表进行排序_Python_Regex_String_Sorting_Numbers - Fatal编程技术网

根据每个字符串项中的最后一个数字在python中对列表进行排序

根据每个字符串项中的最后一个数字在python中对列表进行排序,python,regex,string,sorting,numbers,Python,Regex,String,Sorting,Numbers,我有一个python列表,其形式如下: myList = ['r0x94', 'r0x21', 'r0x51'] 我想根据列表中每个字符串项的最后一个数字对其进行排序,以便: sorted_myList = ['r0x21', 'r0x51', 'r0x94'] 最后一个数字不是十六进制,而是十进制。怎么做?myList.sortStarting 0x是十六进制的值吗?不,结束值是十进制的,不是十六进制的。嗯,我不认为这比sortedmy_list好…它更好,用['r0x94','r0x21

我有一个python列表,其形式如下:

myList = ['r0x94', 'r0x21', 'r0x51']
我想根据列表中每个字符串项的最后一个数字对其进行排序,以便:

sorted_myList = ['r0x21', 'r0x51', 'r0x94']

最后一个数字不是十六进制,而是十进制。怎么做?

myList.sortStarting 0x是十六进制的值吗?不,结束值是十进制的,不是十六进制的。嗯,我不认为这比sortedmy_list好…它更好,用['r0x94','r0x21','r0x51','r0x100','r0x10']@MartinEvans用['r0x1A']试试看。@StefanPochmann问题作者从未说过这是十六进制还是非十六进制,他只是说出了字符串中的最后一个数字。所以我投票决定结束这个问题好吧,我要说的是答案。但这确实是我对Martin的回应,我的观点是,如果我们假设OP的例子不具有代表性,那么在考虑改变大小之前,我会先考虑hex。
>>> my_list = ['r0x94', 'r0x21', 'r0x51']
>>> sorted(my_list, key=lambda x: int(x.rpartition('x')[-1]))
['r0x21', 'r0x51', 'r0x94']