Python實現(xiàn)多屬性排序的方法
多屬性排序:
把需要排序的屬性拿出來作為一個 tuple,主要的放前面,次要的放后面。
假如某對象有n個屬性,那么先按某規(guī)則對屬性a進(jìn)行排序,在屬性a相等的情況下再按某規(guī)則對屬性b進(jìn)行排序,以此類推。
終端打印結(jié)果如下:
按照屬性name進(jìn)行排序:
按照ASCII進(jìn)行排序,本案例中,按照小寫字母的順序進(jìn)行排序;
按照屬性name和age進(jìn)行排序:
案例中,先斤=進(jìn)行name進(jìn)行排序后,再用age進(jìn)行排序,我們看到的結(jié)果是:
主要是按照age進(jìn)行排序,如果age相同,那么就按照name屬性進(jìn)行排序;
我們將代碼進(jìn)行簡化,將多個需要進(jìn)行排序的屬性直接放在元組里傳入:
打印結(jié)果如下:
我們會發(fā)現(xiàn),一次性將多個屬性傳入后,它的打印結(jié)果和上面的不一樣;原因是這樣的,我們?nèi)绻枰M(jìn)行多屬性的排序,那么,主要的條件應(yīng)該放在前面,次要的放在后面:
修改代碼如下:
結(jié)果如下,這就和我們想要的結(jié)果是一樣的了
總結(jié)
以上所述是小編給大家介紹的Python實現(xiàn)多屬性排序的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 基于python list對象中嵌套元組使用sort時的排序方法
- Python利用operator模塊實現(xiàn)對象的多級排序詳解
- Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)實現(xiàn)對不原生支持比較操作的對象排序算法示例
- Python中字典(dict)和列表(list)的排序方法實例
- python實現(xiàn)忽略大小寫對字符串列表排序的方法
- Python中對元組和列表按條件進(jìn)行排序的方法示例
- Python編程對列表中字典元素進(jìn)行排序的方法詳解
- python使用sorted函數(shù)對列表進(jìn)行排序的方法
- Python對列表排序的方法實例分析
- Python3實現(xiàn)對列表按元組指定列進(jìn)行排序的方法分析
- python實現(xiàn)對象列表根據(jù)某個屬性排序的方法詳解
相關(guān)文章
Python簡單過濾字母和數(shù)字的方法小結(jié)
這篇文章主要介紹了Python簡單過濾字母和數(shù)字的方法,涉及Python基于內(nèi)置函數(shù)與正則表達(dá)式進(jìn)行字母和數(shù)字過濾的相關(guān)操作技巧,需要的朋友可以參考下2019-01-01python 爬蟲基本使用——統(tǒng)計杭電oj題目正確率并排序
這篇文章主要介紹了python 爬蟲基本的基本使用,主要利用了Urllib和BeautifulSoup4這兩個庫,配以簡單的實例幫助大家理解,感興趣的朋友可以了解下2020-10-10利用python實現(xiàn)平穩(wěn)時間序列的建模方式
這篇文章主要介紹了利用python實現(xiàn)平穩(wěn)時間序列的建模方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06