列表排序是我们在初学python就掌握的内容,不过其中字符有大小写之分,这就给我们的排序造成了一定的阻碍。这里小编介绍一下str.lower(),能够将大写替换成小写返回字符串。那么结合其它的知识点能否完成对大小写不敏感的操作呢?下面我们先来简单学习str.lower(),在进一步找寻方法。
str.lower()语法
str.lower()
返回值
lower()方法返回新的字符串
实例
>>> demo = "HuaweiCloudStack is a better cloud service" >>> result = demo.lower() >>> id(demo) 4428303024 >>> id(result) 4428303120 >>> result 'huaweicloudstack is a better cloud service'
key = str.lower() 按字母表顺序对列表字串进行排序,对大小写不敏感。
代码举例
>>> names = ['David Beazley', 'Brian Jones', ... 'Raymond Hettinger', 'Ned Batchelder'] >>> sorted(names, key=lambda name: name.split()[-1].lower()) ['Ned Batchelder', 'David Beazley', 'Raymond Hettinger', 'Brian Jones']
这里的key是一个lambda函数,整个sorted方法起到的作用是:对于names中的每一个name字符串元素,先以空格为边界切割为字符串列表,再取后一部分字符串(姓氏),按字母表顺序进行排列。
以上就是使用key = str.lower() 在排序时对大小写不敏感的方法,没弄明白的小伙伴可以多看几遍,毕竟用到的模块比较多。