日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 字符串比较忽略大小写的方法_python实现忽略大小写对字符串列表排序的方法...

發布時間:2023/12/10 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 字符串比较忽略大小写的方法_python实现忽略大小写对字符串列表排序的方法... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例講述了python實現忽略大小寫對字符串列表排序的方法,是非常實用的技巧。分享給大家供大家參考。具體分析如下:

先來看看如下代碼:

string = '''

the stirng

Has many

line In

THE fIle

jb51 net

'''

list_of_string = string.split()

print list_of_string #將字符串分離開,放入列表中

print '*'*50

def case_insensitive_sort(liststring):

listtemp = [(x.lower(),x) for x in liststring]#將字符串列表,生成元組,(忽略大小寫的字符串,字符串)

listtemp.sort()#對元組排序,因為元組為:(忽略大小寫的字符串,字符串),就是按忽略大小寫的字符串排序

return [x[1] for x in listtemp]#排序完成后,返回原字符串的列表

print case_insensitive_sort(list_of_string)#調用起來,測試一下

結果:

['the', 'stirng', 'Has', 'many', 'line', 'In', 'THE', 'fIle', 'jb51', 'net']

**************************************************

['fIle', 'Has', 'In', 'jb51', 'line', 'many', 'net', 'stirng', 'THE', 'the']

另一種方法:

使用內建函數

sorted(iterable[,cmp[, key[,reverse]]])

該函數的官方描述文檔如下:

Return a new sorted list from the items in iterable.

key specifies a function of one argument that is used to extract a comparison key from each list element:key=str.lower. The default value isNone.

使用參數key=str.lower

完整代碼如下:

string = '''

the stirng

Has many

line In

THE fIle

jb51 net

'''

list_of_string = string.split()

print list_of_string #將字符串分離開,放入列表中

print '*'*50

def case_insensitive_sort2(liststring):

return sorted(liststring,key = str.lower)

print case_insensitive_sort2(list_of_string)#調用起來,測試一下

效果一樣~

方法三:

使用list的sort方法:

該方法的官方描述文檔如下:

The sort() method takes optional arguments for controlling the comparisons.

cmp specifies a custom comparison function of two arguments (list items) which should return a negative, zero or positive number depending on whether the first argument is considered smaller than, equal to, or larger than the second argument: cmp=lambda x,y: cmp(x.lower(), y.lower()). The default value is None.

key specifies a function of one argument that is used to extract a comparison key from each list element: key=str.lower. The default value is None.

reverse is a boolean value. If set to True, then the list elements are sorted as if each comparison were reversed.

具體代碼如下:

string = '''

the stirng

Has many

line In

THE fIle

jb51 net

'''

list_of_string = string.split()

print list_of_string #將字符串分離開,放入列表中

print '*'*50

def case_insensitive_sort3(liststring):

liststring.sort(cmp=lambda x,y: cmp(x.lower(), y.lower()))

case_insensitive_sort3(list_of_string)

print list_of_string

但這次調用的時候就有區別了。

感興趣的朋友可以調試運行一下本文實例以加深印象,相信會有新的收獲!

本文標題: python實現忽略大小寫對字符串列表排序的方法

本文地址: http://www.cppcns.com/jiaoben/python/114209.html

總結

以上是生活随笔為你收集整理的python 字符串比较忽略大小写的方法_python实现忽略大小写对字符串列表排序的方法...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。