python--类(相似事物的统称)、对象(实例化)、调用方法(类属性、初始化方法__init__,实例方法、静态方法staticmethod,类方法classmethod)

python是面向对象的语言

不同的数据类型属于不同类 int 8 9 10==同一类、不同对象

类型下面具体的内容-----------对象

python一切皆对象


类的创建

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写
    pass

#python一切皆对象(检验是否是对象只要看是否具有对象的三要素)
print('',id(Student))
print('type',type(Student))
print('value',Student)

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写
    place='北京' #直接写在类里面的变量---------称为类属性
    def __init__(self,name,age):#初始化方法 #这里面的是局部变量
        self.name=name #self.name称为实例属性,进行了一个赋值操作 将局部变量Name的值赋给实例属性
        self.age=age
    #实例方法 slef
    def ext(self):  #函数在类之外定义的称为函数、在类之内的称为方法
        print('学生在吃饭.....')
    #静态方法 使用 staticmethod 修饰 , 什么都不写
    @staticmethod
    def method():
        print('使用了staticmethod进行修饰,所以是静态方法')
    #类方法(类方法要求传一个cls)
    @classmethod
    def cm(cls):
        print('使用了classmethod进行修饰,所以是类方法')
# 函数函数在类之外定义的称为函数
def drink():
    print('喝水')


对象的创建(类的实例化)

实例名=类名()

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写
    place='北京' #直接写在类里面的变量---------称为类属性

    def __init__(self,name,age):#初始化方法 #这里面的是局部变量
        self.name=name #self.name称为实例属性,进行了一个赋值操作 将局部变量Name的值赋给实例属性
        self.age=age

    # 实例方法 self
    def ext(self):  #函数在类之外定义的称为函数、在类之内的称为方法
        print('学生在吃饭.....')

    # 静态方法 使用 staticmethod 修饰 , 什么都不写
    @staticmethod
    def method():
        print('使用了staticmethod进行修饰,所以是静态方法')
    # 类方法(类方法要求传一个cls)
    @classmethod
    def cm(cls):
        print('使用了classmethod进行修饰,所以是类方法')
# 函数函数在类之外定义的称为函数
def drink():
    print('喝水')
print('--------实例对象----------------')
#创建Student类的对象
stul=Student('张三',20) #根据init来编写的
print(id(stul)) #
print(type(stul))#Student的类型
print(stul)#值 输出的Student的地址的16进制的数

print('-----------类对象-------------')
print(id(Student))
print(type(Student))
print(Student)

 


实例对象如何调用方法 实例方法传的是实例的对象self

# cyy python study
# 开发时间:2022/6/3 11:44

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写
    place='北京' #直接写在类里面的变量---------称为类属性

    def __init__(self,name,age):#初始化方法 #这里面的是局部变量
        self.name=name #self.name称为实例属性,进行了一个赋值操作 将局部变量Name的值赋给实例属性
        self.age=age

    # 实例方法 self
    def ext(self):  #函数在类之外定义的称为函数、在类之内的称为方法
        print('学生在吃饭.....')

    # 静态方法 使用 staticmethod 修饰 , 什么都不写
    @staticmethod
    def method():
        print('使用了staticmethod进行修饰,所以是静态方法')
    # 类方法(类方法要求传一个cls)
    @classmethod
    def cm(cls):
        print('使用了classmethod进行修饰,所以是类方法')
# 函数函数在类之外定义的称为函数
def drink():
    print('喝水')
print('--------实例对象----------------')
#创建Student类的对象
stul=Student('张三',20) #根据init来编写的
print('--------对象创建完成后、可以调用类方法- 使用. ---------------')
stul.ext() #对象.方法
print(stul.age) #实例属性
print(stul.name)
print('--------对象创建完成后、可以调用类方法- 使用.---------------')
Student.ext(stul) #类名.方法名(类的对象----实际上就是定义处的self)


 类属性:类方法外的变量,会被类的所有对象共享

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写

    place='北京' #直接写在类里面的变量---------称为类属性

    def __init__(self,name,age):#初始化方法 #这里面的是局部变量
        self.name=name #self.name称为实例属性,进行了一个赋值操作 将局部变量Name的值赋给实例属性
        self.age=age

    # 实例方法 self
    def ext(self):  #函数在类之外定义的称为函数、在类之内的称为方法
        print('学生在吃饭.....')

    # 静态方法 使用 staticmethod 修饰 , 什么都不写
    @staticmethod
    def method():
        print('使用了staticmethod进行修饰,所以是静态方法')
    # 类方法(类方法要求传一个cls)
    @classmethod
    def cm(cls):
        print('使用了classmethod进行修饰,所以是类方法')
# 函数函数在类之外定义的称为函数

print('--------使用类属性----------------')
print(Student.place)
print('--------创建对象----------------')
stu1=Student('张三',10)
stu2=Student('李四',20)
print(stu1.place)
print(stu1.place)
print('--------修改属性----------------')
Student.place='天津'
print(stu1.place)
print(stu1.place)

类方法:使用@classmethod修饰,使用类名直接访问

静态方法:使用@staticmethod修饰,使用类名直接访问

class Student: # Student 是类名,由一个或多个单词组成、每个单词的首字母大写 其余小写

    place='北京' #直接写在类里面的变量---------称为类属性

    def __init__(self,name,age):#初始化方法 #这里面的是局部变量
        self.name=name #self.name称为实例属性,进行了一个赋值操作 将局部变量Name的值赋给实例属性
        self.age=age

    # 实例方法 self
    def ext(self):  #函数在类之外定义的称为函数、在类之内的称为方法
        print('学生在吃饭.....')

    # 静态方法 使用 staticmethod 修饰 , 什么都不写
    @staticmethod
    def method():
        print('使用了staticmethod进行修饰,所以是静态方法')
    # 类方法(类方法要求传一个cls)
    @classmethod
    def cm(cls):
        print('使用了classmethod进行修饰,所以是类方法')
# 函数函数在类之外定义的称为函数

print('--------使用类方法----------------')
Student.cm()#调用的时候cls不需要传入
print('--------使用静态方法----------------')
Student.method()


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值