在 Python 中重载构造函数 您所在的位置:网站首页 构造方法支持重载吗怎么设置 在 Python 中重载构造函数

在 Python 中重载构造函数

2024-04-27 02:23| 来源: 网络整理| 查看: 265

在 Python 中使用多个参数重载构造函数 在 Python 中使用 @classmethod 装饰器重载构造函数

多个构造函数有助于根据其参数自定义我们的自定义类。在使用不同的参数时,我们可以触发不同的构造函数。

Python 不直接支持多个构造函数。当类中提供了多个构造函数时,最新的构造函数会覆盖前一个构造函数。但是有一些替代方法可以在 Python 中重载构造函数。

我们将在本文中讨论这些方法。

在 Python 中使用多个参数重载构造函数

函数重载是指具有相同名称的不同函数具有不同类型的参数。我们可以通过声明多个条件来重载构造函数,每个条件都是基于一组不同的参数。

例如,

class delftstack: def __init__(self, *args): if isinstance(args[0], int): self.ans = args[0] elif isinstance(args[0], str): self.ans = "Hello from " + args[0] s1 = delftstack(1) print(s1.ans) s2 = delftstack("Delft") print(s2.ans)

输出:

1 Hello from Delft

在上面的例子中,我们在构造函数中有两种类型的参数。一个是字符串,另一个是整数。该构造被重载以根据提供的参数类型提供输出。

我们还可以根据提供的参数数量重载构造函数。此方法类似于前面的示例。

请参阅下面的代码。

class delftstack: def __init__(self, *args): if len(args) > 3: self.ans = "More than three" elif len(args)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有