当前位置:首页 » 编程语言 » python对象属性

python对象属性

发布时间: 2023-08-24 01:20:07

A. python什么是类,对象,实例

类和对象
对象是什么?

对象=属性(静态)+方法(动态);

属性一般是一个个变量;方法是一个个函数;

#类的属性 就是 类变量

#实例变量:定义在方法中的变量,只作用于当前实例的类。

例子:

class Turtle:#python 中类名约定以大写字母开头
'''关于类的简单例子。。。'''
#属性 == 类变量
color ="green"
weight="10kg"
legs=4
shell=True
mouth='big'
#方法
def climb(self):
self.name = "test" #实例变量:定义在方法中的变量,只作用于当前实例的类。
print("我在很努力爬。")
def run(self):
print('我在很努力跑。')
def bite(self):
print('我要要要要要')
def sleep(self):
print('我要睡觉啦。')
#创建一个实例对象也就是类的实例化!
tt =Turtle() #类的实例化,也就是创建一个对象,类名约定大写字母开头
tt.bite() #创建好类后就能调用类里面的方法叻;
tt.sleep()

B. python之面向对象

面向对象(OOP)是一种对现实世界理解和抽象的方法,对象的含义是指在现实生活中的具体事物, 一切皆对象 ,Python 是一门面向对象的语言,面向对象编程简单来说就是一种 封装代码 的方式。

Python 中类的定义使用 class 关键字定义类,语法如下所示:

举例,定义一个类 Cat

构造方法 init() 会在类实例化时自动调用。无论构造方法还是其他方法都需要将 self 作为第一个参数,它代表类的实例。

类创建好后,可以直接通过类名访问属性,格式为: 类名.属性名 ,比如我们访问 Cat 类的 color 属性,如下所示:

创建对象也称类的实例化,比如我们通过 Cat 类创建对象,如下所示:

创建好对象后,使用它访问属性和调用方法了,如下所示:

内部私有属性和方法是可以被访问和调用的。

我们来一起看个例子,如下所示:

输出结果:

Python 支持类的继承,而且支持多继承,语法格式为:

示例如下所示:

如果继承的父类方法不能满足我们的需求,这时子类可以 重写 父类方法,如下所示:

C. Python中处理属性的重要属性和函数是什么

处理属性的重要属性和函数

1、特殊属性

__class__:对象所属类的引用(即obj.__class__和type(obj)的作用相同)。Python中的某些特殊方法比如 __getattr__,只在对象的类中寻找,而不在实例中寻找。__dict__:一个映射,存储对象或类的可写属性。__slots__:类可以定义这个属性,限制实例有哪些属性。

2、内置函数

dir([object]):列出对象的大多数属性。getattr(object,name[,default]):从object对象中获取name字符串对应的属性。获取的属性可能来自对象所属的类或超类。hasattr(object,name):若object对象中存在指定的属性,或者能以某种方式(如继承)通过object对象获取指定的属性,返回True。setattr(object,name,value):把object对象指定属性的值设为value,前提是object对象能接受那个值。这个函数可能会创建一个新属性,或者覆盖现有的属性。var([object]):返回object对象的__dict__属性。

相关推荐:《Python视频教程》

3、特殊方法

__delattr__(self,name):只要使用del语句删除属性,就会调用这个方法。__dir__(self):把对象传给dir函数时调用,列出属性。__getattr__(self,name):仅当获取指定的属性失败,搜索过obj,Class和超类之后调用。__getattribute__(self,name):尝试获取指定的属性时总会调用这个方法。不过寻找的属性是特殊属性或特殊方法时除外。为了防止无限递归,__getattribute__方法的实现要使用super().__getattribute__(obj,name)。__setattr__(self,name,value):尝试设置指定的属性时总会调用这个方法。点号和setattr内置函数会触发这个方法。

相关推荐:

Python中的属性和特性是什么

热点内容
phpposthtml 发布:2025-02-04 21:37:46 浏览:87
最新asp源码 发布:2025-02-04 21:17:33 浏览:570
让linux死机 发布:2025-02-04 20:48:08 浏览:141
单方块生存服务器里如何获取岩浆 发布:2025-02-04 20:48:07 浏览:785
快速指数算法 发布:2025-02-04 20:20:40 浏览:299
python在类中定义函数调用函数 发布:2025-02-04 20:14:47 浏览:596
安卓手机的壁纸是哪个 发布:2025-02-04 20:14:44 浏览:202
java发展前景 发布:2025-02-04 20:10:19 浏览:77
mac登陆密码哪里设置 发布:2025-02-04 19:50:20 浏览:526
手游脚本封号 发布:2025-02-04 19:42:12 浏览:439