wilkins

老实做人

导航

列表操作的小问题

例如:a=[2,3,1,2],对a从下标1开始排序:

错误代码:

a=[2,3,1,2]
a[1:].sort()
b=a[1:].sort()

上述代码是不能直接改变a的,我们会发现b是None,因为sort函数无返回值。a[1:].sort()等价于下述代码:

b=a[1:]
b.sort()

当然不会改变a了

所以正确做法是:

a=[2,3,1,2]
b=a[1:]
b.sort()
a[1:]=b

#或者
a=[2,3,1,2]
a[1:]=sorted(a[1:])

 

posted on 2015-03-20 15:13  wilkins  阅读(113)  评论(0编辑  收藏  举报