我如何访问 class 对象的值

How do i access value of a class object

代码

from math import factorial as fact

class dm:

def __init__(self,num):

    #if type(num)==type(1):
        self.num=num

def fact(self):

    return(fact(self.num))

def show(self):
    return(self.num)

def __getitem__(self,num):
    return(self.num)
num=5
print(num)
num=dm(num)
print(num)

输出为:

5
<__main__.dm object at 0x06D9A790>

为什么不是:

5
5

指导我。

您已将 num 设置为 class dm 的对象。这就是为什么当你在 num = dm(num) 行之后打印 num 时你会收到 <__main__.dm object at 0x06D9A790>

的属性

如果您想打印 class 中初始化的 num 的值;

print(num.num)

如果您想调用 fact() 函数;

print(num.fact(5))

当您定义 var = class() 时,您将 var 设置为对 class 的引用,这就是您取回对象的原因。

一些简单的阅读可能会帮助您更多地掌握 classes 的概念; Python Classes

快乐学习:)

尝试写作

print(num.show()) instead

num 是 class Dm 的对象。但是要访问对象中的值,您必须使用 class.

show() 方法

用大写字母命名您的 class 也是一个好习惯。