- 博客(5)
- 收藏
- 关注
原创 requests模块基础知识
基本用法:response = requests.get(url)response.status_code #状态码response.url #请求的urlresponse.headers #头消息response.cookies #cookies信息response.text #网页源码response.content #以字节流方式查看网页源码各种请求方式:request...
2019-03-13 12:54:22
172
原创 多进程与多线程的优缺点、不同
多进程与多线程最大的不同在于:在多进程中,同一变量拷贝存在于每一个进程,互不影响在多线程中,所有变量都是由所有线程共享,所有线程都有权限去修改任何一个变量,所以需要引入Lock。当多个线程在同时执行lock.acquire()时,只有一个线程能够成功的获取锁,然后继续执行代码,其他代码需要原地等待,直到获得锁为止。获得锁的线程在用完之后一定要释放锁,所以用try…finally来保证一定释放...
2019-03-08 14:37:19
961
原创 python中进程相关问题
fork() Unix/Linux操作系统提供了fork()系统调用普通函数调用一次返回一次fork 调用一次返回两次——因为操作系统把当前进程(父进程)复制了一份(子进程),然后分别在父子进程内返回,但是子进程永远返回0,父进程返回子进程id。因为父进程可以fork出很多子进程,要记住子进程id。而子进程可以通过getppid调用父进程idgetpid()得到当前进程idgetpp...
2019-03-08 14:28:10
142
原创 python中的线程相关问题
GIL: 全局解释器锁——保证同一时刻只有一个线程在运行。在多线程环境中,python虚拟机按以下方式执行:1、设置GIL2、切换到一个线程中运行3、运行:a:指定数量的字节码指令 或者b:线程主动让出控制4、把线程设置为睡眠状态5、解锁GIL6、重复以上步骤getpid()得到当前进程idgetppid()得到父进程idfork() Unix/Linux操作系统提供...
2019-03-08 14:18:52
94
原创 python——生成器迭代器、return和yield
迭代器:调用next()时返回容器中的下一个值,热和实现了__iter__和__next__()方法的对象都是迭代器,不会一次性把元素追加到内存中可迭代对象:实现了iter方法,该方法返回迭代器对象。列表是一个可迭代对象。用for循环遍历列表——列表实现了iter方法——返回一个迭代器——调用next()方法生成器:一边循环一边计算的机制,生成器能做迭代器能做的所有事。return...
2019-03-07 20:56:31
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人