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

為了賬號安全,請及時綁定郵箱和手機立即綁定

比較大小與排列順序

怎么理解“如果 x 應該排在 y 的前面,返回 -1,如果 x 應該排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0”

def cmp_ignore_case(s1, s2):
??? if s1.lower()>s2.lower():
??????? return -1
??? if s1.lower()<s2.lower():
??????? return 1
??? return 0

print sorted(['bob', 'about', 'Zoo', 'Credit'],cmp_ignore_case) 結果是倒序


正在回答

1 回答

def?cmp_ignore_case(s1,?s2):
????if?s1.lower()?>?s2.lower():
????????return?1
????if?s1.lower()?<?s2.lower():
????????return?-1
????return?0


print(sorted(['bob',?'about',?'Zoo',?'Credit'],?cmp_ignore_case))
#?順序反了呀


0 回復 有任何疑惑可以回復我~
#1

裴湛永 提問者

是的,不太理解為什么 if s1.lower() > s2.lower(): return 1 代表的是從小到大排序
2019-06-28 回復 有任何疑惑可以回復我~
#2

macleo 回復 裴湛永 提問者

這個和Java的Interface Comparable,性質類似,就是比較排序的。你牢牢記住就行。 大于 就必須返回1.小于就必須返回-1.對于自定義的比較需要用到。
2019-06-28 回復 有任何疑惑可以回復我~
#3

裴湛永 提問者 回復 macleo

好的,謝謝你
2019-06-28 回復 有任何疑惑可以回復我~
#4

macleo 回復 裴湛永 提問者

嘿嘿……都是童鞋啦還辣么客氣
2019-06-28 回復 有任何疑惑可以回復我~
查看1條回復

舉報

0/150
提交
取消
python進階
  • 參與學習       255563    人
  • 解答問題       3038    個

學習函數式、模塊和面向對象編程,掌握Python高級程序設計

進入課程

比較大小與排列順序

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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