类的定义:一个抽象的概念,保存一些共有的属性和特征
#对象:对象代表具体事物的特征功能,是类的实例 #面向对象程序设计 通过函数实现面向对象设计
def dog(name,type,gender):
def jiao(dog1):
print("你看[%s]狗再叫" % dog1["name"])
#函数的局部作用域
def sleeping(dog1):
print("你看[%s]的类别" %dog1["type"]) #初始化参数
def init(name,type,gender):
dog2={
"name":name,
"type":type,
"gender":gender,
"jiao":jiao,#将函数名作为键值传入
"sleeping":sleeping
}
return dog2
return init(name,type,gender) d1=dog("小黄","中华田园犬","公")
d1['jiao'](d1)
#类:把一类事物相同的特征和动作整合到一起就是类,类是一个抽象的概念

#对象:就是基于类创建的一个具体事物,一个具体的事物具体的存在,,也是特征和动作整合到一块
#对象是由类产生的, 实例化:由类产生对象的过程叫做实例化
# #学校类
#特征: name addres type
#动作: 考试,招生,开除学生 class School:
#school1={"name":"oldboy","addres":"雁江","type":"私立学校"} def __init__(self,name,addres,types):
self.name=name
self.addres=addres
self.types=types def test(self):
print("%s学校正在考试" % self.name) def join_student(self):
print("%s 正在招生" %self.types) bob = School("oldboy","阳江","私立学校")
print(bob.__dict__)
bob.test()
bob.join_student() #通过函数实现面向对象设计
def school(name,addres,type): def init(name,addres,type):
school1={"name":name,
"addres":addres,
"type":type,
"test":test,
"join_student":join_student}
return school1 def test(school_only):
print("%s 学校在考试" %school_only['name']) def join_student(school_only):
print("%s 招生中" %school_only['type']) return init(name,addres,type) s1=school("oldboy","中国",'培训学校')
print(s1,s1['name'])
s1['test'](s1)

python面向对象---用函数实现面向对象原理的更多相关文章

  1. Python编程基础[函数和面向对象](三)

    Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...

  2. Python基础系列----函数,面向对象,异常

    1.前言                                                                                               前 ...

  3. JavaScript函数及面向对象

    函数及面向对象 目录 函数及面向对象 1. 定义函数 1. 定义方式一 2. 定义方式二 2. 调用函数 1. 参数问题 2. arguments 3. rest 3. 变量的作用域 1 . var的 ...

  4. python之函数、面向对象

    学习python到了函数这一块进度有所放缓,主要还是想理解透彻,毕竟直觉告诉我函数是python是其中的关键,不管是模块.还是包.或者是库,都是建立在若干个函数定义上面. 章节后面就是关于面向对象编程 ...

  5. 简学Python第六章__class面向对象编程与异常处理

    Python第六章__class面向对象编程与异常处理 欢迎加入Linux_Python学习群  群号:478616847 目录: 面向对象的程序设计 类和对象 封装 继承与派生 多态与多态性 特性p ...

  6. Python学习之路9☞面向对象的程序设计

    一 面向对象的程序设计的由来 见概述:http://www.cnblogs.com/linhaifeng/articles/6428835.html 二 什么是面向对象的程序设计及为什么要有它 面向过 ...

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

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

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

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

  9. python 学习笔记9(面向对象)

    面向过程.函数式.面向对象 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象(Object Oriented Programmin ...

随机推荐

  1. sh_09_格式化输出

    sh_09_格式化输出 # 定义字符串变量 name,输出 我的名字叫 小明,请多多关照! name = "大小明" print("我的名字叫 %s,请多多关照!&quo ...

  2. UVA 540 Team Queue(模拟+队列)

    题目代号:UVA 540 题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page ...

  3. python新动态执行 文件头标识 禁止断言

    1.exec “python语句” 2. 3.禁止断言

  4. 大牛整理最全Python零基础入门学习资料

    大牛整理最全Python零基础入门学习资料 发布时间:『 2017-11-12 11:56 』     帖子类别:『人工智能』  阅读次数:3504 (本文『大牛整理最全Python零基础入门学习资料 ...

  5. BUFFER CACHE和SHARED POOL原理

    http://blog.csdn.net/wanghai__/article/details/4881492 Buffer Cache LRU与Dirty List 在Buffer Cache中,Or ...

  6. fedora23中安装php-mysql等

    scheme: [ski:M], ch本身还是发的k音, 如同school, 但爆破后发g 默认的, by default. 没有defaultly 基本上所有的短语, 修饰名词都是放在名词的后面的: ...

  7. 《HTML5 与 CSS3 基础教程(第 8 版)》

    第 1 章 网页的构造块 文件名和文件夹名 文件名全部使用小写字母,用短横线分隔单词,用 .html 作为扩展名.混合使用大小写字 母会增加访问者输入正确地址以及找到页面的难度 文件夹的名称也应全部用 ...

  8. json模块:字符串与字典之间的转换--loads,dumps,load,dump

    一.json转化成字典: product.json文件:将该文件内容转换成python中字典,方法如下: 方法一:使用.loads(),先读后转换 import  json   #导入json, 注: ...

  9. 负载均衡环境搭建(nginx和tomcat)

    偶然看到博客上一篇负载均衡的文章,学习了一下,此处做下记录 目录 1.环境准备 2.tomcat配置 3.nginx配置 1.环境准备 第一步:java环境 第二步:nginx和pcre源码包 下载链 ...

  10. 大数据架构师必读的NoSQL建模技术

    大数据架构师必读的NoSQL建模技术 从数据建模的角度对NoSQL家族系统做了比较简单的比较,并简要介绍几种常见建模技术. 1.前言 为了适应大数据应用场景的要求,Hadoop以及NoSQL等与传统企 ...