Python 在不重新输入函数参数的情况下覆盖函数/方法

标签 python oop function metaclass

比如我有

class A:
    def f(self, x, y, z):
        # do something with x, y, z

是否可以在不重新输入“self, x, y, z”的情况下覆盖 f 。基本上我有一个带有 10 个参数的函数的类,并且打算有很多类扩展它,所以我不想每次都输入参数。请不要只告诉我传递所有参数的列表/字典。

最佳答案

没有。如果您希望覆盖的函数具有相同的参数,则需要键入相同的参数。您可以覆盖它以具有不同的参数,因此无法神奇地知道您希望它具有相同的参数。

避免这种情况的唯一方法是使用 *args 和/或 **kwargs,但您似乎在说您不想这样做。 (此外,这与使用正确的参数实际定义函数并不完全相同,如果您使用错误的参数调用,则在何处/何时引发错误。)

关于Python 在不重新输入函数参数的情况下覆盖函数/方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13505729/

相关文章:

java - Google App Engine - update_indexes 错误

Python,argparse : different parameters with different number of arguments

java - 在 Java 中为级别内的形状类创建层次结构

c - 在 c 用户输入中编译错误

postgresql - 返回给定表的动态列集的函数

python - 如何使用 python 通过 (tor) socks 代理发出 HTTP 请求?

c - 什么是纯C中的类

java - 对象类型和引用类型之间的区别

javascript - 仅每隔一次点击一次

python - 是否可以通过内存地址访问对象?