--coding:utf8--
“””
py3.5
此程序,是为了看清类中的变量参数是如何调用的。
1、先定义一个singe类,里面有两个功能函数,
2、实例化类s=singe(),再写了两个功能函数,one two
3、在主函数中,改变one() 与 two() 的调用先后顺序 看输出情况。
4、当把singe 类中的,init去掉后。就不能先调changtwo
5、运行输出,就可以明显的看到了,变量参数的运行情况
6、加一单例模式看def__new__(cls,*args,**kwargs):,也多加一个d=single()的仰实例
7、可以把自己的猜做出来。
“””
class single:
def __new__(cls,*args,**kwargs):
if not hasattr(cls,'_sgl'):
cls._sgl = super().__new__(cls,*args,**kwargs)
return cls._sgl
# def __init__(self):
# self.x=0
# self.y='22'
# self.bb = 'enen'
def changone(self,u):
self.x = u+7
self.y = 'hehe!!'
self.bb = 'ni shi sb!!'
print(self.x,self.y,self.bb)
def changtwo(self):
self.x = self.x+3
self.y = 'xiao shen me !!'
self.bb = 'wo bu shi!!'
print(self.x,self.y,self.bb)
s = single()
d = single()
def one():
s.changone(7)
d.changtwo() #把这放在中间就可以看得清楚了!~
s.changone(1)
def two():
s.changtwo()
if name==’main‘:
#先调用 one 再调用 two 看看参数是不是在 one 上面增加
one()
two()
two()
two()
two()
这篇博客探讨了Python 3.5中类(Class)内的变量参数调用机制。通过创建singe类并实例化,作者展示了如何在one()和two()两个功能函数中调用类的方法,并通过改变调用顺序来观察变量参数的变化。实验结果显示,当移除__init__方法后,不能直接调用changtwo()。此外,文章还引入了单例模式的概念,进一步分析了变量参数的运行情况。
369

被折叠的 条评论
为什么被折叠?



