从成员函数内部永久更改 class 变量的方法是什么?
What is the way of permanently changing class variables from inside the member function?
print("Hello World")
class testing:
params = 1
print(params)
#@classmethod
def __init__(self, params):
self.params = params
print(params)
b = testing(params = 5)
输出:
Hello World
1
1
如何使用 __init__
或任何其他函数获取更改后的参数值,同时将参数保持为 class 变量?
与您分配它的方式相同。 self.params
是一个 class 级别的变量,这意味着您可以使用 self.params
来操作和调用它。在代码行中:
params = 1
print(params)
params
与稍后定义的 self.params
是不同的变量。要打印它,您可以这样写:
print(self.params)
在你定义的 __init__()
函数之后的某处。
这是你想要的吗? __init__
方法直接改变class变量。
print("Hello World")
class testing:
params = 1
print(params)
# @classmethod
def __init__(self, params):
# self.params = params
testing.params = params
b = testing(params=5)
print(testing.params)
print("Hello World")
class testing:
params = 1
print(params)
#@classmethod
def __init__(self, params):
self.params = params
print(params)
b = testing(params = 5)
输出:
Hello World
1
1
如何使用 __init__
或任何其他函数获取更改后的参数值,同时将参数保持为 class 变量?
与您分配它的方式相同。 self.params
是一个 class 级别的变量,这意味着您可以使用 self.params
来操作和调用它。在代码行中:
params = 1
print(params)
params
与稍后定义的 self.params
是不同的变量。要打印它,您可以这样写:
print(self.params)
在你定义的 __init__()
函数之后的某处。
这是你想要的吗? __init__
方法直接改变class变量。
print("Hello World")
class testing:
params = 1
print(params)
# @classmethod
def __init__(self, params):
# self.params = params
testing.params = params
b = testing(params=5)
print(testing.params)