![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
q354636996
人生苦短,我用Python
展开
-
Event事件
python进程的事件用于主进程控制其他进程的执行 multiprocessing -> Event e = 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 · 163 阅读 · 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 · 5211 阅读 · 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 · 1229 阅读 · 1 评论 -
mysql存储过程
delimiter // create procedure myproc(out n int) begin select ... end // delimiter ;原创 2018-10-14 09:18:28 · 66 阅读 · 0 评论 -
将两个有序列表合并,并保持顺序(一)
列表l1,l2的长度很可能不一致 我们的思路是这样的: 首先要将L1,L2的元素一个一个地比较 我们可以每次拿出L1的一个元素,去和列表L2的每个元素作比较 然后插入到L2合适的位置 插入完毕在L1中将这个元素删除 这样就会出现一个问题 当L2有两个相同元素时,L1中比它大的元素插入到第一个的后面,就会出现差错 我们可以想一种其他的方法 每次取出L1,L2列表中的第一个元素...原创 2018-09-29 10:12:31 · 4708 阅读 · 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 · 313 阅读 · 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 · 150 阅读 · 0 评论 -
已知二叉树的先序遍历和中序遍历,求后序遍历。以及已知二叉树的中序遍历和后序遍历,求先序遍历。
1.已知先序遍历、中序遍历、后序遍历中的任意一种方式,都无法建立起二叉树。 2.已知先序遍历和中序遍历,可以建立二叉树。 3.已知中序遍历和后序遍历,可以建立二叉树。 4.已知先序遍历和后序遍历,无法建立二叉树。 下面来看洛谷p1030 https://www.luogu.org/problemnew/show/P1030 参考题解中的思路: 首先定义两个字符串inorder,pos...原创 2019-04-17 01:16:52 · 2069 阅读 · 0 评论 -
Python进程间的通信方式
保持多个进程之间数据的一致性至关重要,此时需要用到进程同步技术 (一)多个进程需要同时访问共享资源时,Lock可以避免访问发生冲突 from multiprocessing import Process, Lock def func(lock, num): lock.acquire() try: print('hello world', num) ...原创 2019-04-23 17:57:28 · 429 阅读 · 0 评论 -
讲一些正则表达式的细节问题
一、为什么使用原生字符串 r''指的是原生字符串,目的是将Python中反斜杠的含义取消,避免发生冲突 例一:目标字符串为'ab\bc\cd',想要匹配'ab\' 我们知道一个\需要用两个\\来匹配,正则表达式应改写为ab\\,进而在Python中应改写为"ab\\\\"。 一串字符需要经过Python解释器的转义和正则表达式的转义,这样做显然比较麻烦。所以我们可以使用r''原生字符串跳过Pyt...原创 2019-04-24 15:33:04 · 172 阅读 · 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 · 898 阅读 · 0 评论 -
ubuntu16.04安装pymysql时出现错误command 'x86_64-linux-gnu-gcc' failed with exit
sudo apt-get install libpcap-dev libpq-dev sudo pip3 install PyMySQL原创 2018-09-19 10:40:04 · 798 阅读 · 0 评论 -
解决浮动引起的父元素高度塌陷
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> #nav{ backgro原创 2018-09-01 11:43:39 · 260 阅读 · 0 评论 -
进程锁Lock
multiprocessing -> Lock 创建对象 lock = Lock() 上锁lock.acquire() 解锁lock.release() 上锁状态 执行acquire()会阻塞 解锁状态 执行acquire()不会阻塞 from multiprocessing import Process,Lock import sys from time import sleep ...原创 2018-07-31 11:06:02 · 259 阅读 · 0 评论 -
线程锁队列
队列锁 #!/usr/bin/python3 import queue import threading import time exitFlag = 0 class myThread (threading.Thread): def __init__(self, threadID, name, q): threading.Thread.__init__(self)...转载 2018-07-31 17:42:07 · 544 阅读 · 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 · 4325 阅读 · 0 评论 -
查看mysql端口进程
sudo netstat -anp | grep 3306 tcp 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 · 2491 阅读 · 0 评论 -
python3安装cv2模块
ubuntu 16.04 pip3 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 · 9202 阅读 · 0 评论 -
mongodb数据库上传和下载图片
在mongodb数据库中存储图片 from pymongo import MongoClient import bson.binary conn = MongoClient('localhost',27017) db = conn.images myset = db.img with open('girl.jpg','rb') as f: content = bson.bin...原创 2018-08-27 15:32:36 · 3113 阅读 · 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 · 777 阅读 · 0 评论 -
Python正则表达式findall()函数
# list = re.findall(regex,string,flag) import re string0 = 'abcdefgh' list0 = re.findall('ab',string0) print(list0) # ['ab'] string1 = 'abcdefghab' list1 = re.findall('ab',string1) print(list1) #...原创 2018-08-24 10:56:50 · 22374 阅读 · 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 · 2245 阅读 · 0 评论 -
Typora的使用
原创 2019-05-14 21:27:35 · 233 阅读 · 0 评论