版权声明:本教程只限学习交流,不得用于商业用途。 https://blog.csdn.net/weixin_45086637/article/details/90936400
8.2.3 类代码块
class语句与for、while语句一样,都是代码块,这就意味着,定义类其实就是执行代码块。
calss myclass:
print('myclass')
执行上面的代码后,会输出"myclass"。在class代码块中可以包含任何语句。如果这些语句是立即可执行的(如print函数),那么会立即执行它们。除此之外,还可以动态向class代码块中添加新的成员。
[例 8.3] Benin创建了一个myclass类,并在这个类代码块中添加了一些语句。myclass类中有一个count变量,通过counter方法可以让该变量值加1。在创建myclass类的实例后,可以动态向myclass对象添加新的变量。
# 创建myclass类
class myclass:
# class块中的语句,会立刻执行
print('myclass')
count = 0
def counter(self):
self.count += 1
my = myclass()
my.counter() # 调用counter方法
print(my.count) # 输出结果:1
my.counter() # 调用counter方法
print(my.count) # 输出结果:2
my.count = 'abc' # 将count变量改变成字符串类型
print(my.count) # 输出结果:abc
my.name = 'hello' # 向my对象动态添加name变量
print(my.name) # 输出结果:hello
输出结果:
myclass
1
2
abc
hello