gpt4 book ai didi

python - python 排序键是否保证只调用一次?

转载 作者:太空狗 更新时间:2023-10-29 20:18:58 25 4
gpt4 key购买 nike

在回答 another question 时,我最终创建了一个 sortkey 函数,它修改了一个字典以保存状态,然后将其用于排序中的后续项目。

虽然我的回答 似乎有效,但我的问题是:python 文档中是否实际定义了每个对象只调用一次排序键?这是 Cpython 的实现细节吗?还是排序键实际上被调用了不止一次,而我只是运气不好才得到正确答案?

sorted 的文档状态:

key specifies a function of one argument that is used to extract a comparison key from each list element: key=str.lower. The default value is None (compare the elements directly)

我不认为这意味着 key 每个元素只会被调用一次......但它可以在别处说明。

显然我会问,因为这会对任何有副作用的排序键产生影响。

最佳答案

从您链接的文档部分:

In general, the key and reverse conversion processes are much faster than specifying an equivalent cmp function. This is because cmp is called multiple times for each list element while key and reverse touch each element only once.

这似乎是一个"is"...

关于python - python 排序键是否保证只调用一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13391553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com