godlikesuperbob 发表于 2022-4-2 21:24:56

sorted

car = ["bmw","audi","toyota","subaru"]
print(sorted(car))
print(car)
运算结果:
['audi', 'bmw', 'subaru', 'toyota']
['bmw', 'audi', 'toyota', 'subaru']

为什么最后那个print(car)得出的结果是['bmw', 'audi', 'toyota', 'subaru'],它这个car不应该是sorted(car)吗?       不应该是print(car)运算结果为:['audi', 'bmw', 'subaru', 'toyota']吗?

还有sorted这个重要吗? 还是很少用

isdkz 发表于 2022-4-2 21:28:31

sorted 是返回排序后的副本的,不是原地排序,sorted 比较重要

列表的 sort() 方法才是原地排序的:

car = ["bmw","audi","toyota","subaru"]
car.sort()
print(car)

运算结果:
['audi', 'bmw', 'subaru', 'toyota']

爱吃肥肉的马 发表于 2022-4-3 09:53:33

b = sorted(a),会把a排序后赋值给b,但a还是那个a
你用a.sort(),a才会被排序
页: [1]
查看完整版本: sorted