最近都没有怎么更新,因为突然换方向了,颓了一个月,现在又开始新的工程了。希望继续努力!
起因是需要写一个含很多变量的环境,不同函数间还需要互相修改,有两种方案:1、全局变量;2、值传递。但我试试用类的self变量解决。
值传递的话,每个函数需要传的变量太多了。全局变量的话,因为每个对象都不太一样,只是具有相同的属性而已,我想强调这种关系。而用类的话,可能每个人初学类的时候都有用 __init__
定义self.name,在 function XXX
里面打印的记忆。所以我想这个是可以的。因为我不是代码大牛,所以本篇仅看实现就好,不解释
- 不同函数间 self 变量调度
class MYCLASS():
def __init__(self):
self.name = "name"
def fun1(self):
print("pre:", self.name)
self.name = "my"
print("end:", self.name)
输出是这样的
my = MYCLASS()
my.fun1()
>>> pre: name
>>> end: my
到现在是证明可以修改的,然后再深入一下,试试
- 实例化多个类时还一样吗?
class MYCLASS():
def __init__(self, name):
self.name = name
def change_name(self, new_name):
print("pre:", self.name)
self.name = new_name
print("end:", self.name)
实例化
A = MYCLASS("A")
B = MYCLASS("B")
A.change_name("小明")
B.change_name("小红")
>>> pre: A
>>> end: 小明
>>> pre: B
>>> end: 小红
其实挺水的,哈哈哈。