python面向对象的基础

就是具有相同属性和功能的一类事物

对象就是类的具体表现,是面向对象编程的核心

定义类:

class 类名():
    类中的代码(属性/方法)
类三要素:类名(符合大驼峰的命名风格)、属性(对象的特征描述)、方法(对象具有的行为)
 
# 定义一个类Washer
class Washer():
    height=800

# 创建对象、实例一个对象 Washer的对象
# 对象名=类名()
haier=Washer() #<__main__.Washer object at 0x0000027508656548>
print(haier) #<__main__.Washer object at 0x0000027508656548>

# 对象对类中的属性进行操作
print(haier.height) #800


#类型二:

class Watch():
    # 定义方法
    def look(self): #self指的是调用当前函数的对象
        print(self) #<__main__.Watch object at 0x000001C206F065C8>
        print('看电视') #看电视
# 创建对象/实例化对象
watchs=Watch()
watchs.look()

添加/获取对象属性

# 定义一个对象
class Person():
    name='adsk'
    def p_info(self):
        print('你好')
# 创建对象
yry01=Person()

# 类外面添加对象属性:对象名.属性名=值
yry01.age=18
print(yry01.age) #18  测试一下添加成功没
# 类的里面添加/获取属性
# 定义一个对象
class Person():
    name='yry'
    def p_info(self):
        print('你好')
        # 类的里面添加/获取属性
        print(f'我叫{self.name},我今年{self.age}')
        
# 创建对象
yry01=Person()
yry01.age=18
print(yry01.p_info()) #我叫yry,我今年18

 魔法方法:

构造方法 :__init__(),在创建一个对象的时候会默认调用,不需要手动调用
# class Person():
#     def __init__(self): #构造函数
#         print('我是__init__方法')
#     def  p_info(self):
#         print('你好!!')
# h1=Person()  #我是__init__方法
# print(h1)    #<__main__.Person object at 0x0000023B53E86388>
# h1.p_info()  #你好!!





# class Person():
#     sex='女' #类属性
#     def __init__(self): #构造函数
#         # 添加实例属性
#         self.name='dsd'
#         self.agename=19
#
# # 创建对象:创建对象的时候会自动执行构造函数
# p=Person()
# print(p.name) #dsd
# print(p.agename) #19
析构函数 __del__():如果希望对象在被销毁之前在做的一些事情,可以用__del__()
class Person():
    def __init__(self):  # 构造函数
        print('我是__init__')
    def __del__(self) :#析构函数
        # 添加实例属性
        print('我是__del__')  #会在这个对象销毁的前一步调用这个函数
p=Person()
del p  #删除这个对象  这里会调用我是__del__
print('最后一行代码')

__str__():当使用print输出对象的时候,默认打印的是对象的内存地址,但是如果类里面有str方法,那么就会打印这个方法的返回值

class Person():
    def __init__(self):  # 构造函数
        print('我是__init__')
    def __str__(self) :
        return '我是__str__' #必须有返回值,且返回值必须是字符串类型
p=Person()
print(p) #我是__init_     我是__str__

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值