python对字符串数组进行排序,依据字符数,字符串排列组合python
基本答案:
mylist=[b , c , A]
mylist.sort(
此操作将更改原始列表。也就是会按原来的位置排序。要获得列表的排序副本而不更改原始版本,请使用sorted()函数。
融合(我的列表):
打印x
但是,上面的例子有点幼稚,因为它没有考虑区域设置,而是执行区分大小写的排序。您可以使用可选的参数键来指定自定义排序顺序。这是一个过时的解决方案,因为密钥一次只能计算一次,而不是使用cmp。
因此,要根据当前的区域设置进行排序,需要考虑特定语言的规则。Cmp_to_key是func工具中的帮助函数。
sorted(mylist,key=CMP_to_key ) locale.strcoll))
最后,如有必要,您可以为排序指定自定义区域设置。
本地导入
locale.setlocale(区域设置。LC_all,en_US。UTF-8 )# varydependingonyourlang/locale
资产保护((u ab),uad),uaa),
key=CMP _ to _ key(locale . str coll))==[u aa ,uAb ,uad]
最后一个注意事项:lower))让我们看看使用方法的不区分大小写的排序示例。这些仅适用于ASCII字符的子集,因此它们是不正确的。这两个是英语以外的错误数据:
#这是不正确的!
my list . sort(key=lambdax:x . lower()
#备选注释,速度稍快,但仍然错误
mylist.sort(key=str.lower)).
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。