代码
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
设置为类dm
的对象。这就是为什么在行num
之后打印num = dm(num)
时会收到<__main__.dm object at 0x06D9A790>
如果要打印在班级中初始化的num
的值;
print(num.num)
如果要调用fact()
函数;
print(num.fact(5))
定义var = class()
时,将var
设置为对该类的引用,这就是为什么要取回对象的原因。
一些简单的阅读可能会帮助您更多地理解课堂的概念; Python Classes
快乐学习:)
尝试写作
print(num.show()) instead
num是类Dm的对象。但是要访问对象中的值,必须使用类的show()方法。
使用大写字母命名课程也是一个好习惯。