class 类

Posted yangjinquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了class 类相关的知识,希望对你有一定的参考价值。

类的简介:

"""
什么事类:
    类:把一类事物相同的特征和动作整合到一起就是类,类是一个抽象的概念
什么对象:
    对象:是基于 类 而创建的一个具体的事物(具体存在的)
    也就是特征和动作整合到一起
"""
class foo:
    文档注释
    def speak(self):
        print(yjq再说话)

    def  eat(self,name):
        print(%s在吃饭%name)


obj = foo()#实例化一个对象
obj.speak()#调用对象中的方法

o = foo()#实例化一个对象
o.eat(yjq)#调用对象中的方法
print(o.__doc__)
print(o.__module__)

初始化构造函数:

p1 = chinese(yjq,21,)#实例化一个对象
print(类country,chinese.country)
print(实例化,p1.country)
p1.country = japan                                 #给实例化对象复制(修改值),都是对实例化对象进行操作
print(实例化更改实例 的 country值,p1.country)
#调用实例对象的方法
p1.like(Python编程)
print(打印实例化的字典变量,p1.__dict__)

p2 = chinese(xxl,22,)
p2.like(汽车机修)
"""
yjq
类country china
实例化 china
实例化更改实例 的 country值 japan
我非常喜欢这Python编程书
打印实例化的字典变量 {‘name‘: ‘yjq‘, ‘age‘: 21, ‘sex‘: ‘男‘, ‘country‘: ‘japan‘, ‘book‘: ‘Python编程‘}
xxl
我非常喜欢这汽车机修书
"""

append

print(chinese.lis)
print(chinese.__dict__)
p2.lis.append(C++)   # 添加: 添加class 并不是实例化对象的
print(p2.lis)
print(chinese.lis)
print(chinese.__dict__)
""[c, java, python]
{__module__: __main__, country: china, lis: [c, java, python], __init__: <function chinese.__init__ at 0x0000027F3922F9D8>, like: <function chinese.like at 0x0000027F3922FA60>, __dict__: <attribute __dict__ of chinese objects>, __weakref__: <attribute __weakref__ of chinese objects>, __doc__: None}
[c, java, python, C++]
[c, java, python, C++]
{__module__: __main__, country: china, lis: [c, java, python, C++], __init__: <function chinese.__init__ at 0x0000027F3922F9D8>, like: <function chinese.like at 0x0000027F3922FA60>, __dict__: <attribute __dict__ of chinese objects>, __weakref__: <attribute __weakref__ of chinese objects>, __doc__: None}

"""
@property
class Room:
    def __init__(self,name,onewr,width,length,height):#构造函数
        self.name = name
        self.onewr = onewr
        self.width = width
        self.length = length
        self.height = height

    @property #更改函数的调用方式,print(r1.cal_arae) 有点:封装函数了处理逻辑
    def cal_arae(self):
      return self.width*self.length

    @property
    def cal_volume(self):
        return self.width*self.height*self.length

r1 = Room(客厅,yjq,20,30,3.5)
print(r1.name)
print(r1.cal_arae)
print(r1.cal_volume)
‘‘‘
运行结果:
客厅
600
2100.0
‘‘‘
调用类方法
class Room:#类数据
    def __init__(self,name,onewr,width,length,height):
        self.name = name
        self.onewr = onewr
        self.width = width
        self.length = length
        self.height = height

    @property #更改函数的调用方式,print(r1.cal_arae) 有点:封装函数了处理逻辑
    def cal_arae(self):
      return self.width*self.length

    @property
    def cal_volume(self):
        return self.width*self.height*self.length

    @classmethod
    def test_info(cls):
        print(cls)
        print(from test_info)

#调用类方法
Room.test_info()  
#from test_info

静态方class Room:#类数    def __init__(self,name,onewr,width,length,height)        self.name = name        self.onewr = onewr

        self.width = width
        self.length = length
        self.height = height
    @staticmethod#静态方法
    def room_info():
        print(111111111)

    @staticmethod
    def wash_body(name):
        print(%s正在洗澡% name)

Room.room_info()

Room.wash_body(yjq)
"""

111111111 yjq正在洗澡 """

 



以上是关于class 类的主要内容,如果未能解决你的问题,请参考以下文章

Python类OOPs概念[重复]

从某个类调用片段中的方法

Android:将片段和弹出窗口的点击事件中生成的变量传递给活动的方法

Xcode 快速开发 代码块

解决spring-boot启动中碰到的问题:Cannot determine embedded database driver class for database type NONE(转)(代码片段

如何通过单击片段内的线性布局从片段类开始新活动?下面是我的代码,但这不起作用