作者sunrise0406 (baker)
看板Python
标题Re: [问题] 想请教有关sorted的问题
时间Mon Jan 17 13:22:06 2011
※ 引述《DP1010 (DP)》之铭言:
: 请教板上各位大大
: 我现在有一个档案里面长这样
: ai3-u2 52
: ai3-zor3 23
: am3-si5 30
: an1-zuan5 37
: an3-giann2 19
: .
: .
: : .
: 第一行是音 第二行是频率
: 现在这个档案是照着第一行来做排序
: 可是排序方式也有受到第一行其中的数字影响
: 我现在想要改成不要受到第一行的数字跟'-'得影响
: 就只要依据第一行的英文字母来排序就好
: 例如:an3-giann2 应该排在an1-zuan5上面才对
: 想请教该怎麽做
: 谢谢
Method 1 :将要排序的值,例"ai3-u2",先处理成你要的字串(也就是去除数字和-),
再进行排序。
import re
num_filter = re.compile('[0-9-]+')
filecontent = [('ai3-u2',52),(ai3-zor3,23),...]
filecontent.sort(key = lambda x:num_filter.sub('',x[0]))
试试看这是不是你要的答案。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.166.94