Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/315.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 - Fatal编程技术网

如何在python中的列表排序中获得正确的结果

如何在python中的列表排序中获得正确的结果,python,Python,如何对下面的列表进行排序 我的结果是: ['10','11','12','7','8','9'],['1','2','3','4','5','6']] 这是我的密码 lst= [['7','10','8','9','11','12'],['3','1','2','4','6','5']] for i in lst: i.sort() print(i) 这些是字符串对象,用于字符串: '10' < '7' because `1 < 7` 只需在排序之前将它们转换

如何对下面的列表进行排序

我的结果是:

['10','11','12','7','8','9'],['1','2','3','4','5','6']]
这是我的密码

lst= [['7','10','8','9','11','12'],['3','1','2','4','6','5']]

for i in lst:
    i.sort()
    print(i)

这些是字符串对象,用于字符串:

'10' < '7' because `1 < 7`
只需在排序之前将它们转换为int对象


如果需要将它们保留在字符串对象中,请将它们隐藏回去或设置密钥:

>>> [list(map(str, i)) for i in [sorted(map(int, i)) for i in lst]]
[['7', '8', '9', '10', '11', '12'], ['1', '2', '3', '4', '5', '6']]

>>> [sorted(i, key=lambda x: int(x)) for i in lst]
[['7', '8', '9', '10', '11', '12'], ['1', '2', '3', '4', '5', '6']]
使用排序(列表,key=int):


您想要的输出是什么?只需谷歌如何在python中对列表排序。。你会发现很多关于这个的东西topic@BrianCain问一个非常合理的问题:你得到的输出有什么问题?在我看来,您正在对字符串进行排序,并且通过对这些字符串进行排序获得了预期的输出。没什么明显的问题。你必须告诉我们问题出在哪里。想一想,你有一个包含两个列表的列表,对吗?要访问第一个,您需要执行
lst[0]
和访问另一个
lst[1]
。。。我把剩下的留给你。好吧,我以前不知道:)这是给我的:[[7,8,9,10,11,12],[1,2,3,4,5,6]]不是[1,2,3,4,5,6],[7,8,9,10,11,12]谢谢你
>>> [list(map(str, i)) for i in [sorted(map(int, i)) for i in lst]]
[['7', '8', '9', '10', '11', '12'], ['1', '2', '3', '4', '5', '6']]

>>> [sorted(i, key=lambda x: int(x)) for i in lst]
[['7', '8', '9', '10', '11', '12'], ['1', '2', '3', '4', '5', '6']]
lst= [['7','10','8','9','11','12'],['3','1','2','4','6','5']]

for i in lst:
    i = sorted(i, key=int)
    print(i)