Skip to main content
 首页 » 编程设计

python之有没有什么办法可以在 python 类中使用不需要定义的可选参数

2025年05月04日24itcoder

我正在编写一个面向对象的文本冒险引擎代码,我的主要目标是使其用户友好,但功能强大。代码中的一个类目前有 15 个参数。然而,在该类的每个实例中,实际上只定义了几个参数,其中许多最终留空。

为了让代码更简洁,也为了让引擎的使用体验更友好,我想知道有没有办法让类中的一些参数可选填写。这样做的目的是,当您创建所述类的实例时,您只需定义该特定实例所需的参数,而不必将所有其他参数定义为无值。

换句话说,我想知道这是否可能:

class sampleClass: 
    def __init__(self, arg1, optional1) 
        self.arg1 = arg1 
        self.optional1 = optional1 
 
var = sampleClass(value) 
var = sampleClass(value2, value3) 

在上述情况下,可以定义“optional1”变量,也可以留空。

我还查看了该站点上关于 *args 和 **kwargs 的帖子,在我看来,这两个参数都可以取多个值,但没有一个可以选择不取任何值。

总而言之,是否有可能在 python 类中拥有完全可选的参数,这些参数可以被定义或留空并且不会产生错误消息?

此外,对于我在这篇文章中所做的任何错误,我深表歉意。这是我在 Stack Overflow 上的第一个问题,所以我是这个网站的新手。请告诉我是否有任何我可以改进的地方,以便提出更好的问题。

请您参考如下方法:

类的 init 方法与任何其他函数一样,其参数可以默认为 None。

def __init__(self, arg1, optional1=None):