gpt4 book ai didi

python - 如何创建一个独特的对象?

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

我要

class MyClass(object):
_my_unique = ???? # if this were lisp, I would have written (cons nil nil) here

def myFunc (self, arg):
assert arg != _my_unique # this must never fail
...

用什么代替 ??? 来确保 assert 永远不会失败?

(使用 Lisp,我可以使用 (cons nil nil) 创建 _my_unique 并在 assert 中使用 eq ).

附言。用例:我将把 _my_unique 放在 dict 中,所以我希望它等于它自己,但我不希望它相等(在 dict collision sense) 到从外部传入的任何内容。

最佳答案

您可以使用 object(),但这不会使断言“永不失败”。如果您调用 myFunc 并将 MyClass.my_unique 作为对象传递,它仍然会失败。此外,如果您想测试它是否是同一个对象,请使用 arg is not my_unique 而不是 !=

关于python - 如何创建一个独特的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22642713/

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