美文网首页
Python-对象、默认函数

Python-对象、默认函数

作者: 喂_balabala | 来源:发表于2024-07-11 17:02 被阅读0次

创建对象

对象⼜名实例。

  • 语法
对象名 = 类名()
  • 创建对象的过程也叫实例化对象。

  • self指的是调⽤该函数的对象。

# 1. 定义类
class Washer():
     def wash(self):
         print('我会洗⾐服')
         # <__main__.Washer object at 0x0000024BA2B34240>
         print(self)
 
# 2. 创建对象
haier1 = Washer()
# <__main__.Washer object at 0x0000018B7B224240>
print(haier1)

# haier1对象调⽤实例⽅法
haier1.wash()
haier2 = Washer()
# <__main__.Washer object at 0x0000022005857EF0>
print(haier2)

注意:打印对象和self得到的结果是⼀致的,都是当前对象的内存中存储地址。

添加和获取对象属性

对象属性既可以在类外⾯添加和获取,也能在类⾥⾯添加和获取。

类外⾯添加对象属性

  • 语法
对象名.属性名 = 值
  • 示例:
haier1.width = 500
haier1.height = 800

类外⾯获取对象属性

  • 语法
对象名.属性名
  • 示例:
print(f'haier1洗⾐机的宽度是{haier1.width}')
print(f'haier1洗⾐机的⾼度是{haier1.height}')

类⾥⾯获取对象属性

  • 语法
self.属性名
  • 示例:
# 定义类
class Washer():
     def print_info(self):
         # 类⾥⾯获取实例属性
         print(f'haier1洗⾐机的宽度是{self.width}')
         print(f'haier1洗⾐机的⾼度是{self.height}')
# 创建对象
haier1 = Washer()
# 添加实例属性
haier1.width = 500
haier1.height = 800
haier1.print_info()

默认函数

__init__()

__init__() ⽅法的作⽤:初始化对象。

class Washer():
 
     # 定义初始化功能的函数
     def __init__(self):
         # 添加实例属性
         
         self.width = 500
         self.height = 800
         
     def print_info(self):
         # 类⾥⾯调⽤实例属性
         print(f'洗⾐机的宽度是{self.width}, ⾼度是{self.height}')
         
haier1 = Washer()
haier1.print_info()

注意:
__init__() ⽅法,在创建⼀个对象时默认被调⽤,不需要⼿动调⽤
__init__(self)中的self参数,不需要开发者传递,python解释器会⾃动把当前的对象引
⽤传递过去。

  • 带参数的__init__()
class Washer():
     def __init__(self, width, height):
         self.width = width
         self.height = height
     
     def print_info(self):
         print(f'洗⾐机的宽度是{self.width}')
         print(f'洗⾐机的⾼度是{self.height}')
         
haier1 = Washer(10, 20)
haier1.print_info()
haier2 = Washer(30, 40)
haier2.print_info()

__str__()

当使⽤print输出对象的时候,默认打印对象的内存地址。如果类定义了 str ⽅法,那么就会打印从在这个⽅法中 return 的数据。

class Washer():
     def __init__(self, width, height):
         self.width = width
         self.height = height
         def __str__(self):
         return '这是海尔洗⾐机的说明书'
haier1 = Washer(10, 20)
# 这是海尔洗⾐机的说明书
print(haier1)

__del__()

当删除对象时,python解释器也会默认调⽤ __del__() ⽅法。

class Washer():
     def __init__(self, width, height):
         self.width = width
         self.height = height
         
     def __del__(self):
        print(f'{self}对象已经被删除')
     
haier1 = Washer(10, 20)
# <__main__.Washer object at 0x0000026118223278>对象已经被删除
del haier1

相关文章

  • python-函数的默认参数

    如果函数的默认参数为列表: 调用了两次power(), 为什么第二次输出[end, end]?因为列表里存放的是指...

  • new函数() 和 普通函数() 的区别

    区别:1、new执行的函数,函数内部默认生成了一个对象2、函数内部的this默认指向了这个new生成的对象3、ne...

  • java-构造函数

    构造函数   创建对象,兼职成员对象属性就行赋值。分类:  无参构造函数(默认构造函数)   带参数构造函数 注意...

  • 原型对象及使用原型对象注意事项

    原型对象概念 在构造函数创建出来的时候,系统会默认帮构造函数创建并关联的一个新对象自定义构造函数的原型对象默认是一...

  • [剑指offer]01-赋值运算符函数

    在面向对象C++语言中,用户定义一个类时,会默认生成四个成员函数:默认构造函数、默认析构函数、默认复制构造函数和默...

  • JS-对象创建

    使用函数工厂创建对象,通过参数传递对象定制的数据,内部返回包含属性和方法的对象 使用构造函数创建对象,构造函数默认...

  • 面向对象

    面向对象技术的基本概念是:对象,类,继承。C++中的空类默认产生哪些类成员函数?默认产生构造函数,析构函数,拷贝构...

  • 面向对象

    1.面向对象技术的基本概念 对象,类,继承 2.C++中的空类默认产生哪些成员函数 编译器默认产生默认构造函数,析...

  • C++:面向对象基础

    构造函数 C++中有三种构造函数:默认构造函数,有参构造函数,拷贝构造函数 类对象的初始化 括号法//默认构造函数...

  • javascript深入理解系列(三)——constructor

    prototype对象有一个构造函数,默认指向prototype对象所在的构造函数 因为constructor属性...

网友评论

      本文标题:Python-对象、默认函数

      本文链接:https://www.haomeiwen.com/subject/pwsxhjtx.html