如何在Python的类中创建一个简单的函数?

2024-04-24 22:48:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我开始使用Python中的类,并学习如何在类中创建函数。有人对我正在测试的这个示例类和函数有什么建议吗?你知道吗

class test:
    def __init__(self):
        self.a = None
        self.b = None
        self.c = None

    def prod(self): 
        return self.a * self.b

trial = test
trial.a = 4
trial.b = 5
print trial.prod

理想的结果是看到数字20。你知道吗


Tags: 函数testselfnone示例returninitdef
2条回答

你需要:

  1. 创建test的实例。

  2. 调用该实例的prod方法。

这两种方法都可以通过在它们的名字后面添加()来实现:

trial = test()
trial.a = 4
trial.b = 5
print trial.prod()

下面是一个演示:

>>> class test:
...     def __init__(self):
...         self.a = None
...         self.b = None
...         self.c = None
...     def prod(self):
...         return self.a * self.b
...
>>> trial = test()
>>> trial.a = 4
>>> trial.b = 5
>>> print trial.prod()
20
>>>

如果没有括号,这一行:

trial = test

只是将变量trial赋给类test本身,而不是它的实例。此外,这一行:

print trial.prod

只是打印test.prod的字符串表示,而不是调用它返回的值。你知道吗


这里有一个关于Python classes and OOP的引用。你知道吗

理想情况下,还可以将值作为参数传递给a、b、c到对象的构造函数:

class test:
    def __init__(self, a, b, c):
        self.a = a
        self.b = b
        self.c = c

    def prod(self): 
        return self.a * self.b

然后,构造和调用函数如下所示:

 trial = test(4, 5, None)
 print trial.prod()

相关问题 更多 >