18 面向对象初识1
class person:
level="高级动物"
mind="有思想"
def __init__(self,name,age,gent,area,hobby):
self.name=name
self.age=age
self.gent=gent
self.area=area
self.hobby=hobby
print("__init__")
pass
def walk(self):
pass
def eat(self):
pass
aQ=person("Q","16","男","中国","吹牛")
print(aQ.__dict__)
一.类
1.具有相同属性和技能的一类事物.
2.类的结构( 两部分 )
(1).静态变量 ( 字段 )
level="高级动物"
mind="有思想"
(2).动态方法 ( 函数 )
def __init__(self,name,age,gent,area,hobby):
self.name=name
self.age=age
self.gent=gent
self.area=area
self.hobby=hobby
print("__init__")
pass
def walk(self):
pass
def eat(self):
pass 3.类名调用变量,方法
(1).类名查看类中所有变量( 字段 ),方法( 函数 )
print(类名.__dict__) #类中所有的东西 属性方法 只能查不能增删改类中的东西.
(2).类名查找静态变量 ( 字段)
常用:通过类名.变量名
查:print(person.mind)
增:person.create="有创造力"
改:person.mind="行尸走肉"
删:del person.mind
不常用:print(类名.__dict__[mind])
(3).类名对方法的操作 ( 函数)
常用 : 类名.方法名 (函数)
person.walk( 参数 )
不常用 : 类名.__dict__["walk"] 二.对象.
1.对象是类的具体表现.
2.实例化对象
写法: 类名 ( ) 相当于实例化一个对象
3执行流程
(1).产生一个对象空间 ; ( aQ=类名 ( ) aQ是一个对象空间 )
(2).自动执行类中__init__方法,并将对象空间传给self; ( def __init__(self) 把aQ传给self )
(3).执行__init__方法给对象加属性,并将完善的对象返回给类名.
def __init__(self,name,age,gent,area,hobby):
self.name=name #self.name 中 name 表示对象属性 等号右边的 name 指 形参
self.age=age
self.gent=gent
self.area=area
self.hobby=hobby
print("__init__")
4.对象查找对象中的所有属性
print(aQ.__dict__)
5.对象操作对象中的静态变量
查:对象.name # print(aQ.name)
增:对象.job="student" # aQ.job="stu"
删:del 对象.age
改:对象.gent="男"
6.对象操作类中的静态变量 只能查询,不能增删改
对象名.类中的变量(level) # print(aQ.level) 7.对象执行类中的方法
对象名.walk( ) # aQ.walk( ) # 无需传参数 self位置的参数,自动接收对象空间. 补充:__init__叫构造方式,执行方法时也可以添加属性(临时)
print("__init__")
self.eye=eye
在类的非__init__中也可以给对象添加属性,前提必须先执行这个方法
def walk(self,skincolor)
self.skincolor=skincolor
 
												

python全栈开发 * 18 面向对象知识点汇总 * 180530的更多相关文章

  1. python全栈开发 * 23 面向对象 知识点汇总 * 180704

    23 面向对象 -----特殊方法 1. isinstance(obj,类名) 判断对象是否是此类实例化或者此类的子类实例化出来的class A:passclass B(A):passb1=B()pr ...

  2. python全栈开发 * 22 面向对象 知识点汇总 * 180703

    22 面向对象 -----属性,类方法,静态方法,反射一.属性1.属性的定义:将方法伪装成属性,虽然在代码层面上没有任何高深之处,但让其看起来更合理. (类似于属性的方法)class Person: ...

  3. python全栈开发 * 19 面向对象 知识点汇总 * 180701

    19 面向对象初识2 一.类的名称空间1.对象的名称空间对象的名称空间中有类对象指针,对象可以通过"类对象指针"找类中的"静态变量"(静态字段),也可以用对象找 ...

  4. python全栈开发 * 20 继承知识点汇总 * 180530

    20 面向对象的三大特征之一(继承,多态,封装) -----继承 1.继承的定义: 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类;父类又可称为基类或超类,新建的类称为派生 ...

  5. Python全栈开发【面向对象进阶】

    Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...

  6. Python全栈开发【面向对象】

    Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...

  7. Python 全栈开发七 面向对象

    一.编程范式 编程是程序员用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程 , 一个程序是程序员为了得到一个任务结果而编写的一组指令的集合,正所谓条条大路通罗马,实现一个任务的方式 ...

  8. 巨蟒python全栈开发django9:一些知识点的汇总

    回顾上周内容: 题目: 1.人民出版社出版过的所有书籍的名字以及作者的姓名(三种写法,笔记中有两种写法) 2.手机以2开头的作者出版过的所有书籍名称以及出版社名称(三种写法,笔记中有1种写法) 1.聚 ...

  9. python全栈开发day21面向对象初识总结

随机推荐

  1. Docker 集群Swarm创建和Swarm Web管理

    关于Docker Swarm更多的介绍请查看<Docker管理工具-Swarm部署记录> 一.环境配置 1.安装环境 # cat /etc/redhat-release CentOS Li ...

  2. WPF 实现窗体拖动

    C# 实现代码 this.Loaded += (r, s) => { this.MouseDown += (x, y) => { if (y.LeftButton == MouseButt ...

  3. centos7下docker二进制安装

    问题描述: 内网离线环境下,安装docker.二进制来的还是快点,或者内网搭建yum的epel仓库! 环境: centos7.x docker-18.9.0 x86_64  static //二进制 ...

  4. 【C++】C++中的基本内置类型

    基本数据类型 下面这张表是C++支持的基本数据类型 类型 含义 最小尺寸 bool 布尔 未定义 char 字符 8位 wchar_t 宽字符 16位 char16_t Unicode字符 16位 c ...

  5. matplotlib 与 seaborn 中出现中文乱码的解决方法

      Linux.Mac osx 系统中,出现 matplotlib 或 seaborn 绘图中有中文乱码的情形,可以考虑使用以下方式处理: 到 anaconda 的 matplotlib 中查看是否有 ...

  6. matplotlib绘图不显示问题解决plt.show()

    最近在看<Python数据分析>这本书,而自己写代码一直用的是Pycharm,在练习的时候就碰到了plot()绘图不能显示出来的问题.网上翻了一下找到知乎上一篇回答,试了一下好像不行,而且 ...

  7. Redis在C#中的使用及Redis的封装

    Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server).Redis的键值可以包括字符串(string ...

  8. maven项目打包额外lib目录

    maven项目依赖了几个额外的jar包一直都无法打进最终jar,不知道哪里出了问题.一直对这块不甚清楚,就大概梳理一下 默认打包方式: maven项目下,默认编译目录为 src/main/java和s ...

  9. 2.基础(Foundations)

    chain rule: Bayes' rule: 其他内容就是一些基本的概率论的概念(联合分布,边际分布等)和图的一些概念(节点,边,路径,向上闭包等)

  10. 01Spark的TopN问题

    和hadoop的目的一样,给你数据,然后取TopN.数据如下: 取出数据在排名前十的数据. 代码如下: package com.test.book; import java.util.ArrayLis ...