python基础--类的基础使用
什么是面向对象:
面向对象是一种编程思想,其中的核心是对象,程序是一系列对象的集合,程序员负责调度控制这些对象来交互着完成某些任务。
在面向对象中程序员的角度发生改变,从具体的操作者变成了指挥者
面向对象的三大优点:
1、扩展性
2、灵活性
3、重用性
缺点:
1、程序的复杂度提高了
2、无法准确预知结果
使用场景:
对扩展性要就较高的程序,通常是直接面向用户的。
类和对象:OOP
类:
就是类型、类别,是一种抽象的概念,是一系列具备相同特征和相同行为的对象的集合
对象:
就是具体存在的某个事物,具备自己的特征和行为
对象就是特征和技能的结合体
类和对象的关系:
类包含一系列对象
对象属于某个类
在程序中是先有类才能有对象的,我们必须告诉计算机这类的对象有什么特征有什么行为
总结:在使用面向对象编程时,第一步就是思考需要什么样的对象,对象具备什么样的特征和行为,从而根据这些信息总结出需要的类型
创建类:class关键字
创建对象:p = Person()
属性的写法:
属性可以写在类中,类中的属性,是所有对象公共的
也可以写的对象中,对象中的属性,是每个对象独特的(不一样的)
如果类中和对象中存在同样的属性,先访问对象,如果没有的话再去访问类
属性的增删改查:
增:对象变量名称.属性名称 = 属性之
删除属性:del 对象的变量名称.属性名称
修改:对象.属性 = 新的值
查看属性 访问的是对象的所有属性
print(对象.__dict__) print(对象.__class__)
__init__方法:
叫做初始化方法,本质上就是一个函数
特点1、当实例化对象时,会自动执行init方法
特点2、会自动将对象作为第一个参数传入,参数名称为self,self可以是别的名字,但是不建议修改
功能:用户给对象赋初始值
对象的绑定:默认情况下都是对象绑定方法
特殊之处:
当使用对象调用该函数时会自动传入对象本身,作为第一个参数
当使用类名来调用他就是一个普通函数,有几个参数就得传几个参数
类绑定方法:
@classmethod来进行装饰
特殊之处:不管用类还是对象调用,都会自动传入类本身,来作为第一个参数
什么时候绑定给对象:当函数逻辑需要访问对象中的数据时
什么时候绑定给类:当函数逻辑需要访问类中的数据时
非绑定方法:也叫做静态方法,就是既不需要访问类的数据,也不需要访问对象的数据
@staticmethod
不常用
面向对象的概念
类和对象的概念
如何创建类和对象
对合设计属性
属性的查找顺序
初始化方法
绑定方法和非绑定方法
非绑定方法不重要
python基础--类的基础使用的更多相关文章
- Python——面向对象(类)的基础疑难点
相信用Python写def函数大家都信手拈来了,但Python作为面向对象的编程语言,怎么能浪费呢? 那问题来了.什么是类呢?什么是实例?什么是对象?方法是什么??属性又是什么???继承?封装?多态? ...
- python基础——类和实例
python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...
- Python基础-类
Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...
- python基础——类名称空间与对象(实例)名称空间
python基础--类名称空间与对象(实例)名称空间 1 类名称空间 创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性 而类的良好总属性:数据属性和函数属性 其中类 ...
- python的类基础
python类的基础: 1,面向对象的基本概念 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 类变量:类变量在整个实例化的 ...
- 图解Python 【第五篇】:面向对象-类-初级基础篇
由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 ...
- python3 速查参考- python基础 8 -> 面向对象基础:类的创建与基础使用,类属性,property、类方法、静态方法、常用知识点概念(封装、继承等等见下一章)
基础概念 1.速查笔记: #-- 最普通的类 class C1(C2, C3): spam = 42 # 数据属性 def __init__(self, name): # 函数属性:构造函数 self ...
- Python菜鸟之路:Python基础-类(1)——概念
什么是类? 在python中,把具有相同属性和方法的对象归为一个类(class).类是对象的模板或蓝图,类是对象的抽象化,对象是类的实例化.类不代表具体的事物,而对象表示具体的事物. 类的创建 cla ...
- python:类1——类和对象基础
一.OO = Object Oriented 面向对象 OOP面向对象编程.OOA面向对象分析.OOD面向对象设计 二.属性+方法——>类(数据和函数) class Turtle(): #类名约 ...
随机推荐
- Java实现RSA加密
末尾贴上代码↓↓↓↓↓↓↓↓↓↓↓↓ 1.原理 2.实现过程 3. 公式 4.举例 p=13, q=11 , (p,q互质) N=p*q=143 L=(p-1)*(q-1)=120 E=7 ...
- csps-s模拟测试60嘟嘟噜,天才绅士少女助手克里斯蒂娜,凤凰院凶真题解
题面:https://www.cnblogs.com/Juve/articles/11625190.html 嘟嘟噜: 约瑟夫问题 第一种递归的容易re,但复杂度较有保证 第二种适用与n大于m的情况 ...
- poj3167- Cow Patterns
传送门 两个串相等定义为串中每一位排序后的相对大小相等. 一位相等等价于这一位前面比他小的和等于他的数的个数相等. 那么用kmp,比较的时候比较这两个个数就可以了. 一开始很瓜地想,询问一段区间内比我 ...
- html 按钮跳转问题(及其相关)
1.点击一个按钮跳转到另一个页面 (网址) 两种写法: <button onclick="{location.href='location.html'}">获取现在 ...
- Python(四)基础篇之「文件对象&错误处理」
[笔记]Python(四)基础篇之「文件对象&错误处理」 2016-12-08 ZOE 编程之魅 Python Notes: ★ 如果你是第一次阅读,推荐先浏览:[重要公告]文章更新. ...
- 按钮事件v-on
<!DOCTYPE html> <html lang="zh"> <head> <title></title> < ...
- 2018CCPC吉林赛区 | 部分题解 (HDU6555 HDU6556 HDU6559 HDU6561)
// 杭电上的重现赛:http://acm.hdu.edu.cn/contests/contest_show.php?cid=867 // 杭电6555~6566可交题 A - The Fool 题目 ...
- php构造方法(函数)基础
什么是构造函数呢?在回答这个问题之前,我们来看一个需求:我们在创建人类的对象时,是先把一个对象创建好后,再给他的年龄和姓名属性赋值,如果现在我要求,在创建人类的对象时,就指定这个对象的年龄和姓名,该怎 ...
- 用this 对方法的扩展
*都是静态方法 this指向的是调用的object*
- 爬虫(二)建立代理ip池
之前我们说网站反爬虫的一个常用方法是检测ip,限制访问频率.所以我们要通过设置代理ip的办法绕过这个限制.有不少提供免费代理ip的网站,像https://www.xicidaili.com/nt/,我 ...