首页 > 编程语言 > 详细

python3 面向对象

时间:2019-12-05 14:03:34      阅读:69      评论:0      收藏:0      [点我收藏+]
"""
语法:
class 类名
图纸就是一个类,根据图纸造出来的每辆车就是一个对象。

1、属性:能够描述一个对象的变量(变量)
2、动作:能够描述一个对象能执行的动作(函数)

在类中访问属性:self.属性
在类中访问动作:self.动作
""" class Car: def __init__(self, color): # self就是对象 self.color = color # 属性 def run(self): # 动作 print("我的车会跑") # 创建对象 init 初始化 出厂设置 c1 = Car("red") # 类名() => 实际上默认执行的是__init__函数 c2 = Car("white")

技术分享图片

 

self到底是个什么鬼?

class Car:
    def __init__(self, color):  # self就是对象
        print(self)  # self到底是个什么鬼
        self.color = color  # 属性

    def run(self):  # 动作
        print("我的车会跑")


c1 = Car("red")  
print(c1)

执行结果:

<__main__.Car object at 0x000000000228CEB8>
<__main__.Car object at 0x000000000228CEB8>

 结论:self就是对象

 

不同对象调用同一方法,会有什么样的效果呐?

class Car:
    def __init__(self, color):  # self就是对象
        print(self)  # self到底是个什么鬼
        self.color = color  # 属性

    def run(self):  # 动作
        print(f"我的{self.color}车会跑")


c1 = Car("red")  
c2 = Car("white")
c1.run()
c2.run()

执行结果:

<__main__.Car object at 0x00000000029997F0>
<__main__.Car object at 0x0000000002999828>
我的red车会跑
我的white车会跑

结论:不同对象调用同一属性或方法,调用的是对象自己的属性和方法。

 

接下来,看下类的成员-->变量

"""
类的成员
    1、变量
        1.实例变量 实例=对象 对象的属性值 必须用:对象.变量
        2.类变量 直接写在类中的变量 推荐用:类名.变量
"""
class Person:
    country = "中国"  # 类变量

    def __init__(self, name, age):
        self.name = name  # 实例变量
        self.age = age


p = Person("lily", 18)
print(p.name)  # 对象.实例属性
print(p.age)
print(p.country)  # 不推荐使用
print(Person.country)  # 推荐使用

执行结果:

lily
18
中国
中国

 

 

 

python3 面向对象

原文:https://www.cnblogs.com/lilyxiaoyy/p/11988523.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!