Python数组排序

Python数组排序

x = [4, 6, 2, 1, 7, 9]
x.sort()
print x # [1, 2, 4, 6, 7, 9]
改变x自身
 
通过复制数组方式进行排序:
x =[4, 6, 2, 1, 7, 9]
y = x[ : ]
y.sort()
print y #[1, 2, 4, 6, 7, 9]
print x #[4, 6, 2, 1, 7, 9]
 
通过sorted方法来返回一个新数组,而不改变自身
x =[4, 6, 2, 1, 7, 9]
y = sorted(x)
print y #[1, 2, 4, 6, 7, 9]
print x #[4, 6, 2, 1, 7, 9]
 
使用自定义比较函数:
def comp(x, y):
	if x < y:
		return 1
	elif x > y:
		return -1
	else:
		return 0
 
nums = [3, 2, 8 ,0 , 1]
nums.sort(comp)
print nums # 降序排序[8, 3, 2, 1, 0]
nums.sort(cmp) # 调用内建函数cmp ,升序排序
print nums # 降序排序[0, 1, 2, 3, 8]

倒序实现:

y = [3, 2, 8 ,0 , 1]
y.sort(reverse = True)
print y #[8, 3, 2, 1, 0]
posted @ 2015-08-19 14:15  CodeTracker  阅读(3615)  评论(0编辑  收藏  举报