什么是面向对象:

    面向对象是一种编程思想,其中的核心是对象,程序是一系列对象的集合,程序员负责调度控制这些对象来交互着完成某些任务。

    在面向对象中程序员的角度发生改变,从具体的操作者变成了指挥者

    面向对象的三大优点:

        1、扩展性

        2、灵活性

        3、重用性

    缺点:

        1、程序的复杂度提高了

        2、无法准确预知结果

    使用场景:

        对扩展性要就较高的程序,通常是直接面向用户的。

类和对象:OOP

    类:

        就是类型、类别,是一种抽象的概念,是一系列具备相同特征和相同行为的对象的集合

    对象:

        就是具体存在的某个事物,具备自己的特征和行为

        对象就是特征和技能的结合体    

    

    类和对象的关系:

        类包含一系列对象

        对象属于某个类

        在程序中是先有类才能有对象的,我们必须告诉计算机这类的对象有什么特征有什么行为

        总结:在使用面向对象编程时,第一步就是思考需要什么样的对象,对象具备什么样的特征和行为,从而根据这些信息总结出需要的类型

    创建类:class关键字

    创建对象:p = Person()

    属性的写法:

        属性可以写在类中,类中的属性,是所有对象公共的

        也可以写的对象中,对象中的属性,是每个对象独特的(不一样的)

    如果类中和对象中存在同样的属性,先访问对象,如果没有的话再去访问类

    

    属性的增删改查:

        增:对象变量名称.属性名称 = 属性之

        删除属性:del 对象的变量名称.属性名称

        修改:对象.属性 = 新的值

        查看属性 访问的是对象的所有属性

            print(对象.__dict__)     print(对象.__class__)

__init__方法:

    叫做初始化方法,本质上就是一个函数

    特点1、当实例化对象时,会自动执行init方法

    特点2、会自动将对象作为第一个参数传入,参数名称为self,self可以是别的名字,但是不建议修改

    功能:用户给对象赋初始值

对象的绑定:默认情况下都是对象绑定方法

    特殊之处:

        当使用对象调用该函数时会自动传入对象本身,作为第一个参数

        当使用类名来调用他就是一个普通函数,有几个参数就得传几个参数

    类绑定方法:

        @classmethod来进行装饰

        特殊之处:不管用类还是对象调用,都会自动传入类本身,来作为第一个参数

        什么时候绑定给对象:当函数逻辑需要访问对象中的数据时

        什么时候绑定给类:当函数逻辑需要访问类中的数据时

    非绑定方法:也叫做静态方法,就是既不需要访问类的数据,也不需要访问对象的数据

        @staticmethod

        不常用

面向对象的概念

类和对象的概念

如何创建类和对象

对合设计属性

属性的查找顺序

初始化方法

绑定方法和非绑定方法

非绑定方法不重要

python基础--类的基础使用的更多相关文章

  1. Python——面向对象(类)的基础疑难点

    相信用Python写def函数大家都信手拈来了,但Python作为面向对象的编程语言,怎么能浪费呢? 那问题来了.什么是类呢?什么是实例?什么是对象?方法是什么??属性又是什么???继承?封装?多态? ...

  2. python基础——类和实例

    python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...

  3. Python基础-类

    Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...

  4. python基础——类名称空间与对象(实例)名称空间

    python基础--类名称空间与对象(实例)名称空间 1 类名称空间 创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性 而类的良好总属性:数据属性和函数属性 其中类 ...

  5. python的类基础

    python类的基础: 1,面向对象的基本概念 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 类变量:类变量在整个实例化的 ...

  6. 图解Python 【第五篇】:面向对象-类-初级基础篇

    由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 ...

  7. python3 速查参考- python基础 8 -> 面向对象基础:类的创建与基础使用,类属性,property、类方法、静态方法、常用知识点概念(封装、继承等等见下一章)

    基础概念 1.速查笔记: #-- 最普通的类 class C1(C2, C3): spam = 42 # 数据属性 def __init__(self, name): # 函数属性:构造函数 self ...

  8. Python菜鸟之路:Python基础-类(1)——概念

    什么是类? 在python中,把具有相同属性和方法的对象归为一个类(class).类是对象的模板或蓝图,类是对象的抽象化,对象是类的实例化.类不代表具体的事物,而对象表示具体的事物. 类的创建 cla ...

  9. python:类1——类和对象基础

    一.OO = Object Oriented 面向对象 OOP面向对象编程.OOA面向对象分析.OOD面向对象设计 二.属性+方法——>类(数据和函数) class Turtle(): #类名约 ...

随机推荐

  1. 07.27NOIP模拟赛

    戳这里下载过去三次NOIP模拟赛总成绩 (别嘲笑垫底的我...解压密码为信奥生所在的两个班的班号,文档密码为机房开机用户名+密码) 又一次垫底…… 我难受. 上来感觉T1不可做,T2和蔼可亲,T3一脸 ...

  2. 解决python中import时无法识别自己写的包和模块的方法

    我们用pycharm打开自己写的代码,当多个文件之间有相互依赖的关系的时候,import无法识别自己写的文件,但是我们写的文件又确实在同一个文件夹中, 这种问题可以用下面的方法解决: 1)打开File ...

  3. php多维数组

    一个数组中的值可以是另一个数组,另一个数组的值也可以是一个数组.依照这种方式,我们可以创建二维或者三维数组: 实例 <?php // A two-dimensional array: $cars ...

  4. 深入浅出 Java Concurrency (30): 线程池 part 3 Executor 生命周期[转]

    我们知道线程是有多种执行状态的,同样管理线程的线程池也有多种状态.JVM会在所有线程(非后台daemon线程)全部终止后才退出,为了节省资源和有效释放资源关闭一个线程池就显得很重要.有时候无法正确的关 ...

  5. iPhoneX适配随笔

    1.安全区域 2.NavigationBar 和 TabBar的xib示意图 两个View要相同的效果,坐标不同 UIButton *btn = [UIButton buttonWithType:UI ...

  6. Java(8)中List的遍历方式总结

    本篇文章主要讲述了List这一集合类型在Java,包括Java8中的遍历方式,不包括其他的过滤,筛选等操作,这些操作将会在以后的文章中得到提现,由List可以类推到Set等类似集合的遍历方式. pub ...

  7. Django之模板语言(三)------>自定义filter

    1.自定义filter: 1.在app01下面新建一个templatetags的python package包. 如果没有app01的话,可以通过命令行在manage中进行创建:python mana ...

  8. Python自学--part2

    概要 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 一.列表.元祖操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 na ...

  9. ssm项目 maven 项目pon.xml 配置

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  10. 关于大数据平台ETL可行性方案

    今年做过两个公司需求都遇到了实时流入hive的需求,storm入hive有几种可行性方案. 1.storm直接写入hive,storm下面有个stormhive的工具包,可以进行数据写入hive.但是 ...