python英文字符串排序_Python根据内嵌的数字将字符串排序(sort by numbers embedded in strings)...
標簽:
import re
re_digits = re.compile(r‘(\d+)‘)
def embedded_numbers(s):
pieces = re_digits.split(s)?????????????? # 切成數字與非數字
pieces[1::2] = map(int, pieces[1::2])???? # 將數字部分轉成整數
return pieces
def sort_strings_with_embedded_numbers(alist):
return sorted(alist, key=embedded_numbers)
files = ‘12 2 56 345 12‘.split( )
new_list=sort_strings_with_embedded_numbers(files)
str=‘ ‘.join(new_list)
print(str)
import re
re_digits = re.compile(r‘(\d+)‘)
def embedded_numbers(s):
pieces = re_digits.split(s)?????????????? # 切成數字與非數字
pieces[1::2] = map(int, pieces[1::2])???? # 將數字部分轉成整數
return pieces
def sort_strings_with_embedded_numbers(alist):
return sorted(alist, key=embedded_numbers)
files = ‘file3.txt file11.txt file7.txt file4.txt file15.txt‘.split( )
new_list=sort_strings_with_embedded_numbers(files)
str=‘ ‘.join(new_list)
print(str)
chrfiles = [ ‘chr9.txt‘, ‘chr10.txt‘, ‘chr1.txt‘, ‘chr3.txt‘, ‘chr11.txt‘ ]
chrfiles.sort(key = lambda x:int(re.match(‘\D+(\d+)\.txt‘,x).group(1)))
chrfiles
chrfiles = [ ‘9.txt‘, ‘10.txt‘, ‘1.txt‘, ‘3.txt‘, ‘11.txt‘ ]
chrfiles.sort(key = lambda x:int(re.match(‘(\d+)\.txt‘,x).group(1)))
chrfiles
chrfiles = [ ‘9‘, ‘10‘, ‘1‘, ‘3‘, ‘11‘ ]
chrfiles.sort(key = lambda x:int(re.match(‘(\d+)‘,x).group(1)))
chrfiles
標簽:
總結
以上是生活随笔為你收集整理的python英文字符串排序_Python根据内嵌的数字将字符串排序(sort by numbers embedded in strings)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 地下城与勇士的疲劳值没了就不能玩了吗
- 下一篇: 做试管婴儿越年轻就越容易吗?