Python中的类和对象

一、什么是类?什么是对象呢?

首先,我们先来说说什么是类。看了很多关于python类的介绍,大多都介绍如何使用,但是对于概念却一笔带过,一个初学编程的小伙伴很难理解。概括的说:类可以比作是某种类型集合的描述。然而抽象的描述,对于初学者来说并没有什么用。今天就来详细的说说:我们把一类相同的事物叫做类,其中用相同的属性(其实就是变量)描述,里面封装了相同的方法。比如,汽车是一个类,它包括价格、品牌等属性。

对象就是从类中分离出来

# object 任何一个对象都直接或者间接继承自object
# 从功能上定义:类是属性和方法集合
class Hero(object):
    # 属性
    blood = 700,
    attact = 67,
    level = 1,
    # 方法
    def skill(self):
        print('致盲射击')
timo =Hero()
timo.skill()
print(Hero.blood)
print(timo.blood)
class People(object):
    # init初始化
    # 当对象创建的时候 属性的默认值
    # 魔术方法
    count=0
    # 对象创建的时候 会自动调用init方法
    # 如果init方法需要参数的话
    # 那么对象在创建的时候也需要参数
    def __init__(self,name,sex,age):
        self.name = name
        self.sex = sex
        self.age = age
        # 对象方法
    def sleep(self):
        print('{}一天要睡十七八个小时'.format(self.name))
    def work(self):
        print('工作时间太短,不开心')
    def fond(self):
        print('人生苦短,幸亏我甜')
zhangSan = People('张三','男',17)
zhangSan.sleep()
lisi = People('李四','女',21)
lisi.sleep()
lisi.work()
print(People.count)
# 类属性可以通过对象来调用
print(lisi.count)
print(zhangSan.name)

class Person (object):
    # 如果初始化的时候  设置默认值
    # 那么在创建对象的时候 可以不必设置参数
    def __init__(self,name='',age='',sex='',fond=''):
        self.name = name
        # 属性前面添加下划线 这种方式叫做私有属性
        # 也就是不想被别人访问的属性
        # 但是这种属性不是绝对访问不了
        # 可以通过在属性前添加下划线的方式来访问
        self._age = age
        self._sex = sex
        # 属性如果是双下划线,如果想要调用属性
        # 需要通过 p1._Person__fond这种方式调用
        self.__fond = fond

        # get set方法
        # property属性
        # attribute属性
        # argument参数
    @property  #声明set get方法的标记
    def fond(self):
        print('get方法被调用了')
        return self.__fond
    @fond.setter
    def fond(self,fond):
        print('set方法被调用了')
        self.__fond = fond

p1 = Person('张三丰',17,'男','太极')
# get
print(p1.name)
print(p1._age)
”
print(p1._Person__fond)
# set
p1.name = '张三丰'
print(p1.fond)
p1.fond='练拳'



  • 10
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值