Python3排序函数的行为与预期不符,获得不同的输出
为什么会有这种奇怪的行为:Python3排序函数的行为与预期不符,获得不同的输出,python,python-3.x,sorting,lexicographic,Python,Python 3.x,Sorting,Lexicographic,为什么会有这种奇怪的行为: a = ['This','is','some','banana'] "_".join(sorted(a)). 输出- 这是香蕉 它应该给出输出- 这是香蕉吗 我遗漏了什么吗?您需要在本例中指定排序键-小写str "_".join(sorted(a, key=str.lower)) 这很有效。默认情况下,python将大写字母放在第一位。为什么T介于i和T之间T是84,i是105,所以这个应该在is之前
a = ['This','is','some','banana']
"_".join(sorted(a)).
输出-
这是香蕉
它应该给出输出-
这是香蕉吗
我遗漏了什么吗?您需要在本例中指定排序键-小写
str
"_".join(sorted(a, key=str.lower))
这很有效。默认情况下,python将大写字母放在第一位。为什么
T
介于i
和T
之间T
是84,i
是105,所以这个
应该在is
之前