gpt4 book ai didi

Python:制作一个在任何函数调用上都返回 None 的类

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:26 25 4
gpt4 key购买 nike

我想知道是否有可能创建一个无论调用什么“方法”都始终返回 None 的类。

例如,

# The following all returns None
Myclass.method1()
Myclass.method2(1, 2, 3)
Myclass.method2(1,2)

基本上,我想实现一个类,这样

  1. 类未定义的任何非内置方法都被接受并识别为有效方法。
  2. 第 1 点中的所有方法都将返回 None

我知道 mock.MagicMock 可以给我这个结果,但是它很慢,所以我想知道是否有更好的方法来做到这一点。

最佳答案

是的,很简单。

def return_none(*args, **kwargs):
"""Ignores all arguments and returns None."""
return None

class MyClass(object):
def __getattr__(self, attrname):
"""Handles lookups of attributes that aren't found through the normal lookup."""
return return_none

关于Python:制作一个在任何函数调用上都返回 None 的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34301227/

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