欢迎访问Python每天3分钟系列。
每天花3分钟时间,学习或温习一个Python知识点。今天是第049篇:
sort和sorted的细微但重要的区别
给一个列表排序,可以用sort()
函数,也可用sorted()
方法。
它们的功能和名称都很类似,但是理解它们的区别又很重要:
-
sort()
在原列表上直接原地排序,会改变原列表。 -
sorted()
会创建一个新的列表,不会改变原列表。
sort()
的例子
foods = ['milk', 'bread', 'tea']
print('foods: {}'.format(foods))
foods.sort()
print('foods: {}'.format(foods))
打印结果:
foods: ['milk', 'bread', 'tea']
foods: ['bread', 'milk', 'tea']
sort()
是foods对象一个方法,它直接改变了对象本身。
sorted()
的例子
foods = ['milk', 'bread', 'tea']
new_foods = sorted(foods)
print('foods: {}'.format(foods))
print('new_foods: {}'.format(new_foods))
打印结果:
foods: ['milk', 'bread', 'tea']
foods: ['milk', 'bread', 'tea']
new_foods: ['bread', 'milk', 'tea']
使用sorted()
函数前后,foods列表并没有变化。sorted()
函数是Python的内置函数,它用排好序的列表生成了一个新的对象new_foods。
原文链接:https://www.afxvip.com/5642.html,转载请注明出处。
评论0