python 类里的初始化函数里的代码块和直接写在类里函数外的代码有什么区别呢?
import requests
class A:
a = 'a1'
def __init__(self):
b = 'b1'
写在类A里但不在这个类的函数的代码和直接写在__init__这初始化函数里,比如变量a和变量b,这两块有什么区别呢
一个是类变量 a 一个是实例变量 b 类可以调用 A.a 但不能A.b 必须实例化后A().b , 而实例化后的对象都可以调用a
__init__是类的构造函数,在实例化的时候初始化属性用的,你这两个写法,,貌似没啥区别都只是声明了两个类变量(用于资源共享,能调用不能修改) ,不是类的属性。
class A:
a = 'a1' # 类变量
def init(self):
self.b = 'b1' # 类属性
python(类和对象之类属性和类变量)_博客小白-CSDN博客_类变量和类属性 类属性 类变量#1.类属性、类变量、只能由类调用的属性class People(object): #类变量可以由所有的对象访问,但是对象只能访问,不可修改 #用来做资源共享 total = 0 name = 'python8期' #初始化函数,添加对象属性 def __init__(self,name,age,school): https://blog.csdn.net/huo_1214/article/details/79233636
init相当于你实例化的时候可以直接传入参数,写在外面你就只能初始化之后再对其进行修改