问题描述
- python中zip后进行sort,但是print结果是None,琢磨很久了
-
我根据网上找的——a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
b
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
c=zip(a,b)
c
[(0, 9), (1, 8), (2, 7), (3, 6), (4, 5), (5, 4), (6, 3), (7, 2), (8, 1), (9, 0)]
c.sort(key=lambda x:x[1])
c
[(9, 0), (8, 1), (7, 2), (6, 3), (5, 4), (4, 5), (3, 6), (2, 7), (1, 8), (0, 9)]
用vim写了个python脚本,
我用的是a=c.sort(key=lambda x:x[1])
然后print a
为什么在linux上运行的结果是None?
解决方案
sort是对list自身排序的 所以你可以打印print c 而a根本没获取数据
解决方案二:
c.sort()的返回值为None
(另,c.sort()修改了对象c)
解决方案三:
1楼正解 sort方法不返回副本 他是在原list的操作 你要取c 此时的c应该已经变化了
时间: 2024-08-03 00:51:46