python - Python3 排序函数未按预期运行,得到不同的输出
问题描述
为什么会出现这种奇怪的行为:
a = ['This','is','some','banana']
"_".join(sorted(a)).
输出 -
This_is_banana_some
它应该给出输出 -
is_banana_some_this
我错过了什么吗?
解决方案
您需要指定排序键 -str
在您的情况下为小写。
"_".join(sorted(a, key=str.lower))
这行得通。默认情况下,python 将大写放在首位。
推荐阅读
- angular - 如何停止执行数据检索,直到其他数组填满数据
- replace - Notepad ++中有没有办法使用查找和替换来查找文本,然后替换后面几行的文本?
- gremlin - 如何使用远程遍历生成用于导出的 GraphSON 数据?
- sql-server - “无法绑定多部分标识符”错误,但服务器已链接
- c++ - C++ 程序中的分段错误,查找重复字符串中出现的字符
- javascript - Javascript 中 BigInt 类型的 Math.max 和 Math.min 的替代方案
- reactjs - 在反应道具中看不到子组件
- java - 有没有办法改变 TableView 焦点可遍历的行为?
- database - 如何访问laravel中的对象字段?
- php - PHP SQL 在项目中添加几个人