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

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

直接return s1.lower()這樣為什么不行 非得把統一大小寫后的值賦給變量嗎?

。。。。。

正在回答

1 回答

def cmp_ignore_case(s1, s2):
??? if (s1[0].lower()+s1[1:] )> (s2[0].lower()+s2[1:]):
??????? return 1
??? if (s1[0].lower()+s1[1:] )< (s2[0].lower()+s2[1:]):
??????? return -1
??? return 0
print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)


------------------------------------------------------------------------------------------------

這樣也可以得出正確結果。

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

兔子愛叫 提問者

這是正好只有首字母為大寫 那如果是CreDit按你的程序變成creDit 就有可能還是排不出正確的序列 直接return s1.lower()這樣為什么不行 反正sorted()也可以對字符串進行排序,字符串默認按照ASCII大小來比較
2015-10-08 回復 有任何疑惑可以回復我~
#2

德占仁里 回復 兔子愛叫 提問者

謝謝指正。我的那個只能解決題目給出的那幾個排序,嘿嘿。向您學習。
2015-10-11 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

直接return s1.lower()這樣為什么不行 非得把統一大小寫后的值賦給變量嗎?

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

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

幫助反饋 APP下載

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

公眾號

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