- 博客(20)
- 收藏
- 关注
转载 面向对象基础
目录 组合 多态 多态性 好处 封装 两个层面 property 组合 组合就是一个类的对象具备某一个属性,该属性的值是指向另外外一个类的对象 组合是用来解决类与类之间代码冗余的问题 首先我们先写一个简单版的选课系统 class OldboyPeople: school = 'oldboy' def __init__(self, name, age, s...
2019-09-22 16:58:00 117
转载 isinstance与issubclass,反射
目录 isinstance与issubclass isinstance issubclass 反射 定义 反射在模块中的应用 内置方法 isinstance与issubclass isinstance 在游戏项目中,我们会在每个接口验证客户端传过来的参数类型,如果验证不通过,返回给客户端“参数错误”错误码。 这样做不但便于调试,而且增加健壮性。因为客户端是可以作弊的,不要轻易...
2019-09-22 16:57:00 142
转载 元类
目录 元类 什么是元类 为什么用元类 内置函数exec class创建类 type实现 自定义元类 _ _ call _ _ _ _ new _ _ 自定义元类控制的实例化 属性查找顺序 元类 警告!警告!前方核能来袭!!!想要上车的小伙伴赶紧上车了,时间不多了。。。列车长注意把各车门给我焊死了!请各位小伙伴在路途中勿随意跳车,跳车不规范,亲人两行泪。。。各位乘客我们开始出发了,...
2019-09-22 16:56:00 108
转载 单例模式
单例模式 什么是单例模式 单例模式:基于某种方法实例化多次得到实例是同一个 为什么用单例模式 当实例化多次得到的对象中存放的属性都一样的情况,应该将多个对象指向同一个内存,即同一个实例 用类方法来实现单例模式 # settings.py IP = '1.1.1.1' PORT = 3306 class Mysql: __instacne = None def...
2019-09-22 16:55:00 95
转载 网络架构,七层协议,三次握手四次挥手,socket套接字简单编程
一、单机架构 应用领域: 植物大战僵尸 office 二、CS架构 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端。 客户端:用户安装的软件; 服务端:统一管理数据库的主机中的软件就叫做服务端,再后来服务端不只是管理数据,外加处理业务逻辑。 2.1 CS架构要求 用户操作系统安装客户端;产商操作系统部署服务端 每个...
2019-09-22 16:54:00 261
转载 队列,生产者消费者模型
前景回顾 抢票系统的代码优化,使用了Lock类 from multiprocessing import Process,Lock import os,time,json with open('user', 'w', encoding='utf-8')as f: dic={'count':2} json.dump(dic,f) def search(): with open('user',...
2019-09-22 16:53:00 104
转载 线程
目录 线程 线程开启的两种方式 1 2 子线程和子进程的创建速度 子线程共享资源 线程的join方法 守护线程 线程其他用法 线程 线程开启的两种方式 1 from threading import Thread import time def test(): print('hello world') t=Thread(target=test) t.start() print('hell...
2019-09-22 16:52:00 75
转载 锁
目录 线程锁 死锁问题及递归锁 死锁 递归锁 信号量 GIL全局解释器锁 线程锁 from threading import Thread,Lock x=0 lock=Lock() def test(): lock.acquire() #锁住不让cpu切换 global x for i in range(111100): x+=...
2019-09-22 16:51:00 66
转载 day40 线程
目录 线程队列 1 2 3 线程定时器 进程池和线程池 线程队列 1 import queue q=queue.Queue() q.put('123') q.put('456') q.put('789') print(q.get()) print(q.get()) print(q.get()) q.task_done() q.task_done() q.task_done() q.joi...
2019-09-22 16:50:00 99
转载 2019 08 13 函数进阶装B操作
三元表达式 条件成立时的返回值 if 条件 else 条件不成立时的返回值 x = 10 y = 20 print(f"x if x > y else y: {x if x > y else y}") x if x > y else y: 20 dog_name = 'crazy_dog1' # if dog_name == 'crazy_dog': # p...
2019-08-13 20:14:00 140
转载 2019 08 12 闭包函数 装饰器 迭代器
闭包函数 回顾: 函数对象:可以将定义在函数内的函数返回到全局使用,从而打破函数的层级限制。 名称空间与作用域:作用域关系在函数定义阶段时就已经固定死了,与调用位置无关,即在任意位置调用函数都需要跑到定义函数时找到作用域关系。 def f1(): x = 1 def inner(): print(x) return inner func ...
2019-08-12 19:40:00 101
转载 2019 08 09 函数扩展
可变长参数 可变长参数:指的是在调用函数时,传入的参数个数可以不固定 调用函数时,传值的方式无非两种,一种是位置实参,另一种是关键字实参,因此形参也必须得有两种解决方法,以此来分别接收溢出的位置实参(*)与关键字实参(**) 一、可变长形参之* 形参中的会将溢出的位置实参全部接收,然后存储元组的形式,然后把元组赋值给后的参数。需要注意的是:*后的参数名约定俗成为args。 def sum...
2019-08-09 18:47:00 120
转载 2019 08 08 文件高级应用和函数基础
文件的高级应用 可读、可写 r+t: 可读、可写 即可读又可写(尽量不要使用) # r+ 是在后面追加 w+t: 可写、可读 清空文件的功能是w提供的, w+更不要使用 a+t: 可追加、可读 a有追加的功能,a的指针在末尾,a+功能也没用 # wt with open('36w.txt', 'wt', encoding='utf-8') as fw: print(fw.re...
2019-08-08 20:21:00 113
转载 2019 08 07 字符编码,文件操作
字符编码 一、计算机基础 cpu: 控制程序的运行(从内存中取出文本编辑器的数据读入内存) 内存: 运行程序(经cpu操作后,内存中含有文本编辑器的数据) 硬盘: 存储数据(文本编辑器) 二、文本编辑器存取文件的原理 计算机只认识 0和1 文本编辑器的作用: 读写数据,保存数据 打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的...
2019-08-07 18:20:00 1188
转载 2019 08 06
一、按存值个数区分 存值个数 数据类型 单个值 数字,字符串 多个值(容器) 列表,元组,字典,集合 二、按可变不可变区分 可变or不可变 数据类型 可变 列表,字典,集合 不可变 数字,字符串,元组 三、有序无序区分 有序or无序 数据类型 有序(可按索引取值) 字符串,列表,元组 不可变 字典,集合 四、按访问类...
2019-08-07 15:18:00 78
转载 2019 08 05 容器数据类型内置方法
列表数据类型内置方法 作用 描述多个值,比如爱好 定义方式 hobby_list = ['play', 'swimming', 'dancing', '666'] 内置方法 优先掌握 索引取值 1. hobby_list = ['play', 'swimming', 'dancing', '666'] print(1, hobby_list[-1]) hobby_li...
2019-08-05 18:43:00 105
转载 2019 08 02 数字类型和字符串类型内置方法
再说内置方法之前,先来介绍一下 什么是有序or无序,什么是可变or不可变 有序:有索引 无序:无索引 可变:值变id不变,不可哈希 不可变:值变id也变,可哈希 01 数字类型内置方法 整形 作用 (具体参考数据类型基础) 描述年龄,id 定义方式(具体参考数据类型基础) 可以使用int()方法将纯数字的字符串转为十进制的整型 age = 19 # age = int(10) pri...
2019-08-02 20:55:00 145
转载 2019 08 01 流程控制循环
流程控制之while循环 这里很多人有都会有个疑问,什么是循环? 循环就是一个重复的过程,就像工厂里面的流水线的工人,重复做个同一件事,那么就这事循环。而计算机的循环就是重复干一个活,可以举一个实例,就像我们QQ登录帐号或密码输入错误,你可以再一次输入,这就是一个循环! 语法 ''' while(当) <条件>: <需要进行重复的代码块> # 当条件成立...
2019-08-01 19:17:00 79
转载 2019 07 31 猜拳小程序
今天在做leetcode 做的累的的时候,不知道怎么休息了,就想找个人玩猜拳(石头剪刀布),没有做优化,只要不瞎输,就可以一直玩下去。 import random meun=''' 1:剪刀 2:石头 3:布 q:退出 ''' win_count = 0 cp_win_count = 0 equality_count = 0 meun_dic = {1:'剪刀',2:"石头",3:"布...
2019-07-31 19:22:00 115
转载 2019 07 31 python 运算和流程控制
写在之前 今天突发奇想,想要弄一个微信自动抢红包的程序,首先去百度这个,找到了有两种方法 一种是安装「pocoui」这个第三方库,但没有给出详细代,我就没有使用这个方法。 我用使用的是第二种借助「Airtest IDE」工具,在进行cv大法的时候,发现连接上了我的Android手机,但是运行打开微信的代码时,没有打开我的微信,我也不知道是代码的问题还是我手机的问题,因为运用了其他的工具,...
2019-07-31 18:47:00 106
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人