python - 有没有 len(someObj) 没有调用 someObj 的 __len__ 函数的情况?

标签 python magic-methods

有没有len(someObj)没有调用someObj的__len__函数的情况?

我最近用后者替换了前者以(成功)加速一些代码。我想确保不存在 len(someObj)someObj.__len__() 不同的边缘情况。

最佳答案

如果 __len__ 返回的长度超过 sys.maxsizelen() 将引发异常。直接调用 __len__ 是不正确的。 (事实上​​ ,您可以从 __len__ 返回任何对象,除非它通过 len() 才能被捕获。)

关于python - 有没有 len(someObj) 没有调用 someObj 的 __len__ 函数的情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/496009/

相关文章:

python - 使用 numpy.unique 获取数值数组中包含的每个唯一值的计数

python - 删除数百万个 pandas 行,其中包含 numpy 数组中的值

python - 使用 distutils 构建 C 扩展时打印编译器和链接器命令

python - python 的所有内置函数都有神奇的方法吗?

javascript - 如何删除 :hover from element when suddenly browser window lost focus?

python - 在 Python 中替换控制台输出

python - Azure 表存储 - 使用 next_row_key 返回相同的 block

php - 通过 __get() 通过引用返回 null

python - 如何制作两种不同的 __mul__ 方法