在以下Python列表Python的高级排序在列表
a = ['BB', 'zz', 'CC', 'aa']
,如果我们运用sorted(a, key=str.isupper)
到列表中它给输出
['zz', 'aa', 'BB', 'CC']
任何人能解释这背后的原因是什么?
在以下Python列表Python的高级排序在列表
a = ['BB', 'zz', 'CC', 'aa']
,如果我们运用sorted(a, key=str.isupper)
到列表中它给输出
['zz', 'aa', 'BB', 'CC']
任何人能解释这背后的原因是什么?
在这种情况下,排序函数按照升序对布尔列表进行排序。
str.isuppper
适用于每个元素。
a = ['BB', 'zz', 'CC', 'aa']
a = [True, False, True, False]
False
(内部0)低于True
(内部1)小。
对于相同的False
s和True
s,顺序不需要改变。
所以,
a = ['zz', 'aa', 'BB', 'CC']
是的,它解决了我的查询... –
@SHIVASRAINA你能接受吗? –
接受...抱歉,延误 –
你能否澄清什么让你感到困惑?那*不是你预期的顺序吗? *您期望的产出*,以什么为基础? – jonrsharpe
我只是想知道它是如何出现的,即它背后的逻辑。 –
那么你*写了*它,你有权访问所有的文档,你觉得怎么样? – jonrsharpe