Python的列表排序
阿新 • • 發佈:2018-12-20
1 快速應用
快速應用是給需要快速解決問題,贊不細究原理的朋友準備的。
1.1 永久排序
sort
- 例子
// An highlighted block
cars=['bmw','audi','toyoto','subaru']
cars.sort()
print(cars)
###結果
['audi', 'bmw', 'subaru', 'toyoto']
- 結論 sort對列表的排序是永久性的
reverse
- 例子
// An highlighted block
cars=['bmw','audi','toyoto','subaru']
cars.reverse()
print(cars)
###結果
['subaru', 'toyoto', 'audi', 'bmw']
- 結論 reverse對列表的排序也是永久性的,但是是可恢復的,因為它就是翻轉的功能,所以想恢復的話只需要再翻轉一下就可以了。
1.2 臨時排序
sorted
- 例子
// An highlighted block cars=['bmw','audi','toyoto','subaru'] print(sorted(cars)) print(cars) ###結果 ['audi', 'bmw', 'subaru', 'toyoto'] ['bmw', 'audi', 'toyoto', 'subaru']
- 結論 sorted對列表的排序是暫時的,所以直接可以print(sorted(cars)),當print(cars)的時候還是原來的列表順序。
1.3 注意事項
1.3.1 假設如果要倒序,可以使用reverse引數
- 例子 sorted
cars=['bmw','audi','toyoto','subaru']
print(sorted(cars,reverse=True))
###結果
['toyoto', 'subaru', 'bmw', 'audi']
- 例子 sort
cars=['bmw','audi','toyoto','subaru']
cars.sort(reverse= True)
print(cars)
###結果
['toyoto', 'subaru', 'bmw', 'audi']
1.3.2 如果首字母裡面有大寫字母的情況
實際上,排序是按照ASCII碼來的,假設全是小寫,那其字母對應的ASCII碼和字母是一致的,但是如果有大小寫字母混雜的情況,那麼實際上大寫字母的ASCII碼是要比小寫字母小的。所以順序可能不是我們想象的那樣。
- 例子sort
cars=['bmw','audi','Toyoto','subaru']
cars.sort()
print(cars)
###結果
['Toyoto', 'audi', 'bmw', 'subaru']
- 附ASCII碼對照表: