Re: [問題] 想請教有關sorted的問題
※ 引述《DP1010 (DP)》之銘言:
: 請教板上各位大大
: 我現在有一個檔案裡面長這樣
: ai3-u2 52
: ai3-zor3 23
: am3-si5 30
: an1-zuan5 37
: an3-giann2 19
: .
: 第一行是音 第二行是頻率
: 現在這個檔案是照著第一行來做排序
: 可是排序方式也有受到第一行其中的數字影響
: 我現在想要改成不要受到第一行的數字跟'-'得影響
: 就只要依據第一行的英文字母來排序就好
: 例如:an3-giann2 應該排在an1-zuan5上面才對
: 想請教該怎麼做
: 謝謝
data = [("ai3-u2", 52), ("ai3-zor3", 23), ("am3-si5", 30),
("an1-zuan5", 37), ("an3-giann2", 19)]
def my_key(item):
return "".join(c for c in item[0] if c.isalpha())
data.sort(key=my_key)
希望沒錯 :P
不用 list comprehension 也可以用 filter,如下
def my_key(item):
return filter(str.isalpha, item[0])
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.172.245.60
※ 編輯: cakewalks 來自: 218.172.245.60 (01/17 01:18)
※ 編輯: cakewalks 來自: 218.172.245.60 (01/18 02:39)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章