如何在Python中按长度对字符串数组进行排序?
Python按字符串长度排序数组的实现方法
要实现按字符串长度排序数组,Python里可以用内置的sorted()函数,通过指定key参数以元素长度为排序依据,再结合reverse参数控制排序方向。
具体实现步骤
- 先定义你的数组:
SETACTION = ("forever", "for one and", "for two") - 使用
sorted()函数,设置按元素长度从长到短排序:sorted_list = sorted(SETACTION, key=lambda x: len(x), reverse=True) # 若要覆盖原变量,直接重新赋值即可 SETACTION = tuple(sorted_list) - 运行后得到的结果就是:
SETACTION = ("for one and", "for two", "forever")
补充说明
- 如果需要按长度从小到大排序,去掉
reverse=True参数即可:sorted_list = sorted(SETACTION, key=lambda x: len(x)) - 如果你使用的是列表(而非元组),也可以用列表的
.sort()方法直接原地排序:SETACTION = ["forever", "for one and", "for two"] SETACTION.sort(key=lambda x: len(x), reverse=True)
内容的提问来源于stack exchange,提问作者Naveen
相关产品推荐
相关产品推荐

