目录

  • 一、属性的查找顺序
  • 二、给对象添加属性的两种方式
    • 方式一:直接通过对象添加属性
    • 方式二:通过__init__方法添加属性
  • 三、对象的绑定方法

类有两种属性:数据属性函数属性

  1. 类的数据属性是所有对象共享
  2. 类的函数属性是绑定给对象用

一、属性的查找顺序

属性的查找顺序: 先从对象自身找---> 类中找 ---> 报错

二、给对象添加属性的两种方式

方式一:直接通过对象添加属性

class Student:#变量表示属性school='xxx'def choose(self):print("选课....")def study(self):print('学习')
# 实例化对象
stu1=Student()
stu1.name='xucheng' # 添加属性

方式二:通过__init__方法添加属性

class Student:#变量表示属性school='xxx'def __init__(self,name):    # 实例化对象会默认执行self.name=namedef choose(self):print("选课....")def study(self):print('%s学会了python'%self.name)# 实例化对象是传递参数,通过init函数给对象添加属性
stu1=Student('xucheng')
stu1.study()    # 添加属性

三、对象的绑定方法

对象的绑定方法就是定义在类内部的方法

  • 中定义的数据属性函数属性都是共享给所有对象用的
  • 对象名称空间中定义的只有数据属性,而且是对象所独有的数据属性

当对象实例化后,使用对象调用类中的任一方法,都会将该对象传递给函数形参的self表示当前对象。

init方法。初始化方法,和C++中的构造方法类似。当实例化对象时,进行传递参数,给当前对象添加属性。

对象的绑定方法都是对于本对象而言的类中的方法。当对象调回用类中方法时,忽略self

如果直接使用类来调用:就是一个普通函数,有几个参数就需要传几个参数

使用对象来调用:它叫对象的绑定方法,第一个参数不需要传,自动传递

# 直接使用类来调用
Student.choose(123)
print(Student.school)# 对象来调用方法,第一个参数不用传
stu2=Student()
print(stu2.school)

转载于:https://www.cnblogs.com/XuChengNotes/p/11413194.html

085 对象的绑定方法相关推荐

  1. Python基础教程:绑定方法和非绑定详细用法

    绑定和方法调用 1.首先,方法仅仅是类内部定义的函数.(这意味着方法是类属性而不是实例属性) 2.其次,方法只有在其所属的类拥有实例时,才能被调用.当存在一个实例时,方法才被认为是绑定到那个实例了.没 ...

  2. python 类的绑定方法和非绑定方法

    一.绑定方法 1.对象的绑定方法 首先我们明确一个知识点,凡是类中的方法或函数,默认情况下都是绑定给对象使用的.下面,我们通过实例,来慢慢解析绑定方法的应用. class People:def __i ...

  3. python:绑定方法和非绑定方法

    类中定义的方法大致可以分为两类:绑定方法和非绑定方法.其中绑定方法又可以分为绑定到对象的方法和绑定到类的方法. 一.绑定方法 1.1 对象的绑定方法 在类中没有被任何装饰器修饰的方法就是 绑定到对象的 ...

  4. 类方法classmethod 绑定方法

    绑定方法 1.凡是类中的方法和函数,都是绑定给对象使用的: 2.绑定方法都有自动传值的功能.传递进去的值,就是对象本身. 3.如果类想调用绑定方法,就必须遵循函数的参数规则,有几个参数,就必须传递几个 ...

  5. 全面解析python类的绑定方法与非绑定方法(转载+自己的消化与理解)

    参考链接来自: https://www.cnblogs.com/vipchenwei/p/7126772.html#_label1 先说下,这篇文章中,其实有这么个事情: 也就是,该文章有的函数后面没 ...

  6. python_day7 绑定方法与非绑定方法

    在类中定义函数如果 不加装饰器 则默认 为对象作为绑定方法 如果增加 classmethod 是 以 类 作为绑定方法 增加 classmethod 是 非绑定方法,就是不将函数 绑定 ####### ...

  7. 绑定方法与非绑定方法

    绑定方法 绑定到对象的方法 定义:凡是在类中定义的函数(没有被任何装饰器修饰),都是绑定给对象的,就是给对象用的. 特点:obj.method() 自动把obj作第一个参数传入,因为method的逻辑 ...

  8. 在js对象上绑定js数组原生方法

    在js对象上绑定js数组原生方法 在js对象上绑定数组方法会给当前对象添加一个lenght:0属性 例: var o = {}; [].pop.call(o) console.log(o)//返回结果 ...

  9. jQuery 事件绑定方法(bind hover toggle live.... )、删除事件方法(unbind, die)及 事件对象

    事件绑定方法: 1.<type>(function) $("button").click(function(){... }); 2.bind(map) $(" ...

  10. 37.对象属性查找绑定方法

    文章目录 1.属性查找顺序 1.1.对象属性查找 1.2类查找 2.使用方法 2.1对象使用 2.2类使用方法 3修改类的属性 3.1类增查改删 3.2在方法内修改类的属性 3.4练习1 3.5练习2 ...

最新文章

  1. Ubuntu局域网下利用client联网
  2. 添加删除一个controller
  3. 可以预防新冠病毒的项链 -脉动
  4. 生命周期 用户可以操作dom_React 生命周期的打怪升级之路
  5. 数据库Sqlite3
  6. 为什么我的modbus tcp server只能连一个client_TCP 协议概览
  7. hystrix文档翻译之metrics
  8. Windows10下解压版mysql-8.0.11安装教程
  9. 561. 数组拆分 I
  10. HTML5期末大作业:我的家乡网站设计——我的家乡-杭州(7页) HTML+CSS+JavaScript 大学生家乡网页作品 老家网页设计作业模板 学生网页制作源代码下载
  11. lammps建模_lammps建模
  12. 怎么修改服务器网卡mac地址是什么,网卡MAC地址是什么?怎么修改网卡MAC地址
  13. Html 中的Body 标签
  14. Yate for mac(标记和管理音频文件工具)
  15. 大学物理实验电学基本参数的测量实验报告_大学物理电学基本实验实验报告
  16. Linux中的数学运算
  17. 日系插画学习笔记(七):日系角色脸部画法-3表情
  18. 鸡啄米:C++编程入门系列之一(进制数)
  19. 微信公众平台开发基础
  20. Python判断变量的数据类型

热门文章

  1. java ADT的简单介绍
  2. android 编译c代码吗,在Android手机上编译C代码
  3. mysql c3p0 释放连接_mysql重启后,防止c3p0丢掉连接数_mysql
  4. Hibernate事务与并发问题处理(乐观锁与悲观锁)
  5. podman 在 windows 安装
  6. Centos7 Kubernetes(k8s) 开发服务器(单服务器)部署 prometheus 监控
  7. Netty 整合 MessagePack 序列化框架 + LengthFieldBasedFrameDecoder 自定义解码器
  8. Google Gson API 介绍与使用
  9. Spring Boot 2.x 注册 Servlet 三大组件 Servlet、Filter、Listener
  10. java文件编译后,出现xx$1.class的原因