当前位置:主页 > 网站制作 > Python技术 >

Python的对象

  Python的对象包含:

  1. 对象:

  - 对象是类的实例,拥有类定义的属性和方法

  - 使用类名()创建对象,可以向__init__方法传参初始化对象

  2. 标识和类型:

  - 使用id()获取对象的标识(内存地址)

  - 使用type()获取对象的类型

  - 类型可以是内置类型,也可以是自定义类

  3. 对象比较:

  - 使用 == 比较对象的值(内容)

  - 使用 is 比较对象的标识(id)

  - 通常只有数值类型(int, float, bool等)的对象可以用 == 进行比较,其他类型应使用 is 比较

  4. 属性访问和方法调用:

  - 使用 . 访问对象的属性和方法

  - 例如: 对象.属性 对象.方法()

  5. 魔法方法:

  - 用双下划线开头和结尾的方法,如__init__, __add__等

  - 这些方法会在特定的操作或函数调用时自动触发

  - 可以重写这些魔法方法,实现定制的功能

  - 例如:__init__用于初始化对象,__add__用于对象的加法运算等

  6. 可变对象和不可变对象:

  - 可变对象:列表,字典,集合等,对其操作会改变原对象

  - 不可变对象:数值类型,字符串,元组等,对其操作会生成新对象,原对象不变

  示例:

python
# 对象和类型  
p = Person('John')
id(p)     # 4356809728
type(p)   # <class 'Person'>

# 对象比较
a = b = [1, 2, 3]  
a == b     # True 
a is b     # True

a = [1, 2, 3]; b = [1, 2, 3]  
a == b     # True 
a is b     # False

# 属性和方法访问  
p.name     # John
p.say_hello()  # Hello, I am John

# 魔法方法  
class Person:
    def __init__(self, name):
        self.name = name 
        
    def __add__(self, other):
        return self.name + other.name

p1 = Person('John ')
p2 = Person('Doe')
p1 + p2     # John Doe 

# 可变对象和不可变对象  
a = [1, 2, 3]  
a.append(4)  
a     # [1, 2, 3, 4]  

s = 'abc'
s.replace('a', 'x')   #xbc 
s     # 'abc'  # s并未改变

  对象是面向对象编程的核心,要深入理解对象的概念和用法。要熟悉如何创建和使用对象,访问其属性与方法。

  要注意对象的标识和类型,明确对象比较的方式。要在必要时重写魔法方法,实现定制的功能。要了解可变对象和不可变对象的差异,避免出现意外的问题。

Python的对象

  对象的理解和运用是掌握面向对象编程的关键,要在项目中大量实践,熟练使用,写出清晰的面向对象代码。

上一篇:Python的类
下一篇:Python的继承

猜你喜欢

微信公众号