基础
文章平均质量分 93
lyp_CSDN
这个作者很懒,什么都没留下…
展开
-
python多线程详解
import threadingfrom threading import Lock,Threadimport time,os''' python多线程详解 什么是线程? 线程也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。 线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其他线程共享进程所原创 2020-06-18 01:36:16 · 191 阅读 · 0 评论 -
Django开发聚合函数的使用
在django开发中,获取一些统计数据时,需要用到model中的聚合函数;下面就聊一下django中跟统计、聚合有关的方法。1.aggregate: 对QuerySet进行汇总后得到的数据1)求所有订单的平均消费:from django.db.models import Avg, Countavg_price = OrderModel.objects.all().aggregate(Avg...转载 2019-12-26 10:35:25 · 368 阅读 · 0 评论 -
Django之F()函数
F()函数F()函数的导入from django.db.models import F为什么要使用F()函数?一个 F()对象代表了一个model的字段值或注释列。使用它就可以直接参考model的field和执行数据库操作而不用再把它们(model field)查询出来放到python内存中。作为代替,Django使用 F()对象生成一个SQL表达式,来描述数据库层级所需要的操作这些...原创 2019-12-25 17:51:11 · 3028 阅读 · 1 评论 -
pymysql防sql注入的书写规范,和orm的防注入原理
sql注入演示: ’ ’ or 1解决方案:将搜索对象写到execute里边就可以防注入"""pymysql 让我们可以书写python代码来操作数据库1、导入pymysql包2、使用pymysql连接到数据库,创建连接对象3、创建游标对象4、操作数据库,执行sql语句5、关闭游标对象6、关闭连接对象"""# 1、导入pymysql包import pymy...原创 2019-09-09 12:00:14 · 1277 阅读 · 0 评论 -
Flask-SQLALchemy的基本操作
数据库基本操作在Flask-SQLAlchemy中,插入、修改、删除操作,均由数据库会话管理。会话用db.session表示。在准备把数据写入数据库前,要先将数据添加到会话中然后调用commit()方法提交会话。数据库会话是为了保证数据的一致性,避免因部分更新导致数据不一致。提交操作把会话对象全部写入数据库,如果写入过程发生错误,整个会话都会失效。数据库会话也可以回滚,通过db.sessio...原创 2019-09-09 14:58:43 · 236 阅读 · 0 评论 -
python的各类锁
1. GIL锁一、GIL介绍GIL (Global Interperter Lock) 称作全局解释器锁。GIL并不是Python语言的特性,它是在实现Python解释器时引用的一个概念。GIL只在CPython解释器上存在。不过,在Python的解释器中,使用最多的是CPython解释器,所以我们不可避免的会遇到GIL。在使用互斥锁解决代码中的资源竞争问题时,当一个线程执行时,会将全局...原创 2019-09-09 17:29:45 · 587 阅读 · 0 评论 -
redis的五种数据类型和操作命令汇总
string 字符串命令行为返回值使用示例(略去回调函数)set设置存储在单个键和值OKset(‘key’, ‘value’)mset设置多个键和值OKmset a1 python a2 java a3 c++get获取单个键和值value/nullget(‘key’)mget获取多个键和值mget a1 a2 a3appe...原创 2019-09-09 20:39:37 · 191 阅读 · 0 评论 -
python web面试题部分汇总
** 0.深拷贝和浅拷贝的区别?**1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。好处:只拷贝引用,不增加内存2. copy.deepcopy 深拷贝 拷贝对象及其子对象 好处:可用于备份,源数据被修改它不会被影响可变类型(list,dict):浅拷贝只拷贝第一层,深拷贝会拷贝所有层不可变类型(int,string,float,tuple):深浅拷贝都一................................................原创 2019-09-14 16:57:48 · 2386 阅读 · 0 评论 -
Linux常用命令(面试)
常用指令ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent)cd 切换目录touch 创建空文件ec...原创 2019-09-16 16:26:38 · 951 阅读 · 0 评论 -
同步异步,阻塞非阻塞的区别
1. 同步,异步同步:在发出一个同步调用时,在没有得到结果之前,该调用就不返回。异步:在发出一个异步调用后,调用者不会立刻得到结果,该调用就返回了。2. 阻塞,非阻塞阻塞调用是指调用结果返回之前,调用者会进入阻塞状态等待。只有在得到结果之后才会返回。非阻塞调用是指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回区别:阻塞和非阻塞强调的是程序在等待调用结果(消...原创 2019-09-09 10:36:37 · 173 阅读 · 0 评论 -
进程以及和线程的关系
1.线程和进程有什么不同? 进程:1>系统进行资源分配和调度的一个独立单元 2>进程间不共享全局变量,需要进行进程间的通信 3>进程在运行过程中为独立的内存单元 线程:1>进程的一个实体,是CPU调度和分派的基本单位 2>同时对一个全局变量进行修改,容易混乱(不一定执行完就换线程) 3>线程依赖进程的存...原创 2019-09-07 11:05:47 · 648 阅读 · 0 评论 -
python常用的魔法方法
1.__ init__() 在创建对象的时候,会自动调用,用于初始化2.__ str__() print 对象名的时候会调用,函数最后需要返回一个字符串3.__ del__() :3.1 实例对象(创建类的对象),都删除时会调用del魔法方法3.2 对象销毁,从内存中删除,引用计数为0 会调用del魔法方法3.3 当上面两个都没实现时,会在程序执行完后,即所有引用和对象都销毁后,...原创 2019-09-08 10:38:34 · 219 阅读 · 0 评论