封装 广义上的封装,它其实是一种面向对象的思想,它能够保护代码;狭义上的封装是面向对象三大特性之一,能把属性和方法都藏起来不让人看见 私有属性 私有属性表示方式即在一个属性名前加上两个双下划线 class Fighter: def __init__(self,name,hp,atk,speed): self.name = name self.__hp = hp #私有属性 变形成self._Fighter__hp self.__atk = atk #私有属性 变形为self._Fighter__…
修饰器 NOTE 1.函数对象有一个__name__属性,可以拿到函数的名字: #!/usr/bin/env python3 def now(): print('2017/2/19') def main(): f = now f() print(now.__name__) print(f.__name__) if __name__ == '__main__': main() sh-3.2# ./decorator1.py 2017/2/19 now now 2.增强now函数的功能,又不想重新对…
转载自:http://www.cnblogs.com/liwenzhou/p/8258992.html 一.Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen(5) while True: conn, addr = sk.accep…
MySQL作业分析 五张表的增删改查: 完成所有表的关系创建 创建教师表(tid为这张表教师ID,tname为这张表教师的姓名) create table teacherTable( tid int auto_increment primary key, tname ) )engine=innodb default charset=utf8; 创建班级表(cid为这张表班级ID,caption为这张表班级门号) create table classTable( cid int auto_incr…
hashlib模块 主要提供字符加密算法功能,如md5.sha1.sha224.sha512.sha384等,这里的加密算法称为摘要算法.什么是摘要算法?它又称为哈希算法.散列算法,它通过一个函数把任意长度的数据转换为一个长度固定的数据串(通常以16进制符表示) 摘要算法的作用主要在于密码的密文存储,以及文件的一致性验证(比如在下载的时候,检查我们下载的文件和远程服务器上的文件是否一致;两台机器上的两个文件,检查上面的文件是否相等) 使用md5算法: import hashlib md5 = h…
引子 假设我们要开发一个关于飞机大战的游戏,那么游戏的里面就会有两个角色,分别是属于玩家操控的战机和敌方的战机,并且两个战机都有不同的技能或攻击方式,现在我们用自己目前所学的去写出下面的这些代码: def Fighter(name,atk,hp,speed): fighter = { 'name' : name, #战机的名字 'atk' : atk, #战机的攻击力 'hp' : hp, #战机的血量 'speed' : speed #战机的速度 } return fighter def En…
早期的计算机通信需要有一个中间件,A要给B传东西,A必须要把信息传给中间件,B再把从中间件中拿到信息 由于不同机器之间需要通信就产生了网络 软件开发的架构 1.C/S架构 服务器-客户机,即Client-Server架构,C/S架构通常采取两层结构.Sever负责数据的管理,Client负责完成与用户的交互任务 这里来说Client主要是某个应用软件的exe文件,程序要在安装后,才能运行在用户电脑上. 例如:QQ.微信.网易云音乐等 2.B/S架构 浏览器端-服务器,即Browser-Sever…
接口类 继承有两种用途:继承基类的方法,并且做出自己的改变或扩展(代码重用)和声明某个子类兼容于某基类,定义一个接口类interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子类继承接口类,并且实现接口的功能 比如说一种支付方式有三种不同的途径:Alipay.Applepay.Wechatpay 如果现在只有两种支付方式Alipay和Wechatpay,我们该如何去实现支付的方法呢? class Wechat: def pay(self,money): print('已经…
继承 什么是继承?就是一个派生类(derived class)继承基类(base class)的字段和方法.一个类可以被多个类继承;在python中,一个类可以继承多个类. 父类可以称为基类和超类,而子类可以称为派生类 在继承中可分为单继承和多继承两种 下面是继承的用法,语法为'class 子类的名字(父类名):' class Plane: #定义一个所有战机的父类 def __init__(self,name,speed,hp,atk): self.name = name self.speed…
# 访问字典car = {'make':'bmw', 'model':'550i', 'year':2016}print(car)print(car['make']) # 添加元素d = {}d['one'] = 1print(d) # 嵌套字典d = {'k1' : {'nestk1': 'nestvalue1', 'nestk2':'nestvalue2'}, 'fds':3}print(d)print(d['k1']['nestk1']) # 访问嵌套元素 # 字典的keys, value…