Python中关于类的使用问题想请教一下大佬
class A():
def __init__(self):
self.a = np.random.rand(len(self.input_num[0]))
def fun(self, input_num):
pass
如上代码所示,init 中如何能够拿到 fun 方法中的 input_num 输入呢,上面代码显示是错误的,假设 input_num 只在 fun 函数中输入,
Python中关于类的使用问题想请教一下大佬
init 是类的初始化方法,fun 只能在类初始化后才能运行。简而言之,请重看 Python 基础教程。
我无法理解你的问题
拿不到吧,这里的 init 相当于 C++中的构造函数,在对象声明的时候就调用结束了,而这时候 input_num 还没有输入
谢谢,刚刚试了直接在 fun 中初始化 a 属性
你好,你这种情况我们一般不建议用类的呢,用函数就可以了亲
class A():
a = None
def init(self):
pass
def fun(self, input_num):
self.a = np.random.rand(len(input_num[0]))
已解决,谢谢各位
class A():
a = None
def init(self,input_num):
fun(input_num)
def fun(self, input_num):
self.a = np.random.rand(len(input_num[0]))
行吗?
class A(object):
def init(self):
print("--------------")
self.a = self.func()
print(self.a)
def func(self):
a = input("======================:")
return a
A()
感觉很奇妙, init 是初始化实例对象, 可居然能在 init 方法里调用 实例对象的方法. 龟叔果然厉害.

