
Python
文章平均质量分 81
q354636996
人生苦短,我用Python
展开
-
Event事件
python进程的事件用于主进程控制其他进程的执行multiprocessing -> Evente = Event()e.wait([timeout])e.set()e.clear()e.is_set() from multiprocessing import Event#创建事件对象e = Event()e.wait()#阻塞print('=====...原创 2018-07-31 09:31:00 · 200 阅读 · 0 评论 -
mysql设计收藏与标签
用户表--收藏表(多对多)收藏表--标签表(多对多) 1.创建一个用户表create table user(id int primary key auto_increment,name varchar(20));2.创建一个收藏表create table book(id int primary key auto_increment,title varchar...原创 2018-10-13 11:49:21 · 5364 阅读 · 2 评论 -
用python实现选择排序法、冒泡排序法、插入排序法
冒泡排序法l = [10, 1, 18, 30, 23, 12, 7, 5, 18, 17]for n in range(len(l)-1): for i in range(len(l)-n-1): if l[i] > l[i+1]: l[i],l[i+1] = l[i+1],l[i]print(l)选择排序法l = [10...原创 2018-10-13 14:25:46 · 1294 阅读 · 1 评论 -
mysql存储过程
delimiter // create procedure myproc(out n int) begin select ... end //delimiter ;原创 2018-10-14 09:18:28 · 89 阅读 · 0 评论 -
将两个有序列表合并,并保持顺序(一)
列表l1,l2的长度很可能不一致我们的思路是这样的:首先要将L1,L2的元素一个一个地比较我们可以每次拿出L1的一个元素,去和列表L2的每个元素作比较然后插入到L2合适的位置插入完毕在L1中将这个元素删除这样就会出现一个问题当L2有两个相同元素时,L1中比它大的元素插入到第一个的后面,就会出现差错 我们可以想一种其他的方法每次取出L1,L2列表中的第一个元素...原创 2018-09-29 10:12:31 · 4769 阅读 · 0 评论 -
列表有序合并的代码(二)
list1 = [13,44,32,25,48,62]list2 = [22,15,34,55,26,18,18,18]list1.sort()list2.sort()print(len(list1),len(list2))#这种方法只能保证其中一个列表,和另一个列表的部分内容完全排序result = []while list1 and list2: if list1...原创 2018-09-29 11:04:34 · 343 阅读 · 0 评论 -
wsgi,uwsgi,nigix
wsgi:服务器网关接口描述web server如何与web application通信的规范WSGI server负责从客户端接收请求,将request转发给application,将application返回的response返回给客户端;uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议nginx作为最前端的服务器,他负责接收所有的客户端请求,对于...原创 2018-10-15 08:56:55 · 175 阅读 · 0 评论 -
已知二叉树的先序遍历和中序遍历,求后序遍历。以及已知二叉树的中序遍历和后序遍历,求先序遍历。
1.已知先序遍历、中序遍历、后序遍历中的任意一种方式,都无法建立起二叉树。2.已知先序遍历和中序遍历,可以建立二叉树。3.已知中序遍历和后序遍历,可以建立二叉树。4.已知先序遍历和后序遍历,无法建立二叉树。下面来看洛谷p1030https://www.luogu.org/problemnew/show/P1030参考题解中的思路:首先定义两个字符串inorder,pos...原创 2019-04-17 01:16:52 · 2191 阅读 · 0 评论 -
Python进程间的通信方式
保持多个进程之间数据的一致性至关重要,此时需要用到进程同步技术(一)多个进程需要同时访问共享资源时,Lock可以避免访问发生冲突from multiprocessing import Process, Lockdef func(lock, num): lock.acquire() try: print('hello world', num) ...原创 2019-04-23 17:57:28 · 462 阅读 · 0 评论 -
讲一些正则表达式的细节问题
一、为什么使用原生字符串r''指的是原生字符串,目的是将Python中反斜杠的含义取消,避免发生冲突例一:目标字符串为'ab\bc\cd',想要匹配'ab\'我们知道一个\需要用两个\\来匹配,正则表达式应改写为ab\\,进而在Python中应改写为"ab\\\\"。一串字符需要经过Python解释器的转义和正则表达式的转义,这样做显然比较麻烦。所以我们可以使用r''原生字符串跳过Pyt...原创 2019-04-24 15:33:04 · 191 阅读 · 0 评论 -
F查询与Q查询
models.Book.objects.filter(id__lt=F("price"))models.Book.objects.all().update(price=F("price")+30)models.Book.objects.filter(Q(author__name="鸣人") & ~Q(publish_day__year=2018)).values_list("...原创 2018-09-26 17:28:16 · 934 阅读 · 0 评论 -
ubuntu16.04安装pymysql时出现错误command 'x86_64-linux-gnu-gcc' failed with exit
sudo apt-get install libpcap-dev libpq-devsudo pip3 install PyMySQL原创 2018-09-19 10:40:04 · 822 阅读 · 0 评论 -
解决浮动引起的父元素高度塌陷
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> #nav{ backgro原创 2018-09-01 11:43:39 · 292 阅读 · 0 评论 -
进程锁Lock
multiprocessing -> Lock创建对象lock = Lock()上锁lock.acquire()解锁lock.release()上锁状态执行acquire()会阻塞解锁状态执行acquire()不会阻塞from multiprocessing import Process,Lockimport sysfrom time import sleep...原创 2018-07-31 11:06:02 · 287 阅读 · 0 评论 -
线程锁队列
队列锁#!/usr/bin/python3import queueimport threadingimport timeexitFlag = 0class myThread (threading.Thread): def __init__(self, threadID, name, q): threading.Thread.__init__(self)...转载 2018-07-31 17:42:07 · 588 阅读 · 0 评论 -
使用mongodb存储大文件
1.使用mongodb存储大文件mongofiles -d dbname put file此时 dbname数据库里有两个文件:fs.chunks{ "_id" : ObjectId("5b83523869d72e0ac439e40f"), "files_id" : ObjectId("5b83523769d72e0ac439e3fb"),"n" : 19, "data"原创 2018-08-27 09:40:19 · 4369 阅读 · 0 评论 -
查看mysql端口进程
sudo netstat -anp | grep 3306tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 3972/mysqld tcp 0 0 127.0.0.1:46860 127.0.0.1:3306 ESTAB...原创 2018-08-27 10:58:28 · 2545 阅读 · 0 评论 -
python3安装cv2模块
ubuntu 16.04pip3 install opencv-python如果出现问题ImportError: libSM.so.6: cannot open shared object file: No such file or directory使用命令sudo apt-get install -y python-qt4即可解决 ...原创 2018-08-20 14:15:32 · 9237 阅读 · 0 评论 -
mongodb数据库上传和下载图片
在mongodb数据库中存储图片 from pymongo import MongoClientimport bson.binaryconn = MongoClient('localhost',27017)db = conn.imagesmyset = db.imgwith open('girl.jpg','rb') as f: content = bson.bin...原创 2018-08-27 15:32:36 · 3170 阅读 · 0 评论 -
python中装饰器的写法
def deco(func): #传入原函数并在包装函数里调用 def wrapper(x,y): #装饰器中定义和原函数相同参数的包装函数 print('prepare') result=func(x,y) #把这些参数再传入到原函数中 print('done') return result #原函数有返回值时,在包装函数中返回 return wrapper...原创 2018-08-28 10:16:06 · 827 阅读 · 0 评论 -
Python正则表达式findall()函数
# list = re.findall(regex,string,flag)import restring0 = 'abcdefgh'list0 = re.findall('ab',string0)print(list0)# ['ab']string1 = 'abcdefghab'list1 = re.findall('ab',string1)print(list1)#...原创 2018-08-24 10:56:50 · 22492 阅读 · 1 评论 -
多对多三表连接查询
select author.name,book.title from author left join book_author on author.id = book_author.author_id left join book on book_author.book_id = book.id;原创 2018-08-29 15:11:32 · 2285 阅读 · 0 评论 -
Typora的使用
原创 2019-05-14 21:27:35 · 262 阅读 · 0 评论