亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用Python中的比較器進行排序

使用Python中的比較器進行排序

慕容森 2023-08-22 16:10:19
在 python 3.x 中,不推薦使用比較器。相反,Python 依賴于一個key函數,為每個元素分配一個鍵值并使用這些鍵進行排序。但是,當有一種復雜的方法來確定一個元素是否應該出現在另一個元素之前時,這就是一個問題。示例:一組字符串應按字母順序排序,但如果字符串的第一個字母是,則x它應該排在第一位。例如:a, b, xaaa, c, xbbb, bxa, bax應該排序為xaaa, xbbb, a, b, bax, bxa, c.請問這個排序可以用python實現嗎?
查看完整描述

1 回答

?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

一種可能的解決方案,使用str.startswith

lst = ['a', 'b', 'xaaa', 'c', 'xbbb', 'bxa', 'bax']
print(sorted(lst, key=lambda k: (not k.startswith('x'), k)))

印刷:

['xaaa', 'xbbb', 'a', 'b', 'bax', 'bxa', 'c']


查看完整回答
反對 回復 2023-08-22
  • 1 回答
  • 0 關注
  • 1606 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號