gpt4 book ai didi

python - len 是如何工作的?

转载 作者:太空宇宙 更新时间:2023-11-03 12:29:45 24 4
gpt4 key购买 nike

len 如何在 Python 上工作?

看这个例子:

class INT(int):
pass

class STR(str):

def __len__(self):
return INT(42)

q = STR('how').__len__()
print q, type(q)
q = len(STR('how'))
print q, type(q)

输出是:

42 <class '__main__.INT'>
42 <type 'int'>

我如何处理它以便 len 返回一个 INT 实例?

答案表明唯一的解决方案是覆盖 len

这是我的替代实现。它似乎不是很有害。

original_len = len
def len(o):
l = o.__len__()
if isinstance(l, int):
return l
original_len(o)

最佳答案

不要这样做。你需要了解什么时候最好的答案真的是根本不做你想做的事。这是其中一个时代。

关于python - len 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2171960/

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