摘要:
一.一对多添加记录 方法1 xxx.objects.create 外键_id=数字 方法2 xxx.objects.create 外键字段(属性)=models对象 二.多对多添加记录 方式一 models对象.外键.add(models对象1,models对象2) 方式二 models对象.外键. 阅读全文
摘要:
一. IO多路复用 检测多个socket是否已经发生变化(是否已经连接成功/是否已经获取数据)(可读/可写) 操作系统检测socket是否发生变化,有三种模式: select:最多1024个socket;循环去检测. poll:不限制监听socket个数;循环去检测(水平触发). epoll:不限制 阅读全文
摘要:
一.线程安全 多线程操作时,内部会让所有线程排队处理.如:list/dict/queue 线程不安全+锁=>排队处理 二. 锁 1.lock(1次放1个)但不能连续lock,否则锁死 2.Rlock也是(1次放1个)可以连续lock,不会锁死 3.BoundedSemaphore(一次放N个,N个N 阅读全文
摘要:
一.关于线程和进程的说明 python本身没有进程和线程,python中调用了操作系统的线程和进程. 一个应用程序(软件),可以有多个进程(默认只有一个),一个进程中可以创建多个线程(默认一个). 创建进程是为了提供环境让线程工作,进程和进程之间做数据隔离(java/c#) 创建线程是因为线程是cp 阅读全文
摘要:
一.random模块 random.random() 取0-1之间的小数 random.uniform() 取某个范围之间的小数 random.randint() 取某个范围的其中一个数[ ] random.randrange() 取某个范围之间的其中一个数[ ) random.choice() 从 阅读全文
摘要:
一.异常处理的几种情况 # try ... except # try ... except ... else # try ... finally # try ... except ... finally # try ... except ... else ... finally 二.主动抛出异常 r 阅读全文
摘要:
一.isinstance/issubclass/type 1.isinstance检查第一个参数(对象)是否是第二个参数(类及父类的实例) 2.type获取当前对象是由哪个类创建的 3.issubclass检查第一个参数是否是第二个参数的 子子孙孙类 二.方法和函数 1.称谓: 类,方法 外,函数 阅读全文
摘要:
一.面向对象三大特性: 1.封装 (1)将相关功能封装到一个类中: (2)将数据封装到一个对象中: 2.继承 3.多态 鸭子模型.传入的参数可以是任何一种形态,只要能完成相应的功能就可以了 二.类的成员 1.成员 1.变量 --类变量(静态字段) 类.字段/对象.字段 --实例变量(字段) 对象.字 阅读全文
摘要:
一.字符组 : [] 写在中括号中的内容,都出现在下面的某一个字符的位置上都是符合规则的 [0-9] 匹配数字 [a-z] 匹配小写字母 [A-Z] 匹配大写字母 [a-zA-Z] 匹配大小写字母 [a-zA-Z0-9] 匹配大小写字母数字 [a-zA-Z0-9_] 匹配大小写字母数字下划线 65- 阅读全文
摘要:
一. re模块 1.查找. findall:匹配所有,每一项都是列表中的一个元素 search: 只匹配从左到右的第一个,得到的不是直接的结果,而是一个变量,通过这个变量的group方法来获取结果,如果没有匹配到,会返回None,使用group会报错 match:只匹配最开头的内容,相当于searc 阅读全文