python
[email protected]
这个作者很懒,什么都没留下…
展开
-
优雅的使用 Python 协程
协程(Coroutine)是由程序员在代码中显示调度的。(进程和线程是由操作系统调度,线程是操作系统调度的最小单位)。看过前边的文章应该知道,线程任务在 IO 阻塞之后,操作系统会进行线程切换,这个切换会浪费时间与资源。而协程是在单个线程中并发的多个任务,当执行中的协程任务遇到阻塞之后,立即切换到其他就绪状态协程任务去执行,这样会极大的减小了线程因为阻塞而有操作系统切换。协程的切换属于程序级别,...原创 2020-02-24 22:16:26 · 212 阅读 · 0 评论 -
Python 多进程的使用
一、普通多进程import timeimport multiprocessingdef worker(flag): print("before sleep---%s" % flag) time.sleep(3) print("after sleep---%s" % flag)if __name__ == '__main__': p_one = multi...原创 2020-02-24 22:14:06 · 189 阅读 · 0 评论 -
Python 中多线程的使用
写在前面:由于 Global Interpreter Lock(全局解释器锁) 的存在,Python 的多线程是无法实现多个线程并行,而是多个线程并发。这也就是 Python 多进程”鸡肋“的地方。关于Python GIL 的一些故事,可以到这篇文章了解一下。Python3 通过两个标准库 _thread 和 threading 提供对线程的支持,更推荐使用 threading。_th...原创 2020-02-24 22:10:20 · 388 阅读 · 0 评论 -
Python 中的生成器和迭代器
写在前面:迭代:类似对可迭代对象执行 for…in… 这样操作的过程叫做迭代可迭代对象像 Python 的基础类型 list、dict、str 都属性可迭代对象,可以这样来判断一个对象是不是可迭代对象:from collections.abc import Iterableif __name__ == "__main__": print(isinstance("dolphi...原创 2020-02-24 22:08:39 · 88 阅读 · 0 评论 -
关于 Python GIL锁的讨论
写在前面:先讲两个概念:并发:多个任务交替执行,当任务一遇到阻塞或者时间片用完将其挂起,切换到任务二区执行。从宏观上来看也是多核任务“同时”执行。并行:多任务同时执行,在多核心 CPU 时间,多个任务在多核 CPU 核心上同时执行。Global Interpreter Lock 的前世今生谈到多进程/多线程,数据安全是不可忽略的。而在 Python 的设计之初,计算机大多是单核的,多...原创 2020-02-24 21:55:51 · 97 阅读 · 0 评论 -
从零开始配置 python 开发环境
最近公司有一个古老项目需要维护,写这个的时候我还没有来公司,结果呢,整开发环境就整了多半天,关键是还没!有!整!好!恰逢周五,为了不耽误下周一正常进行开发,下班果断把电脑带回家了。结果到家的一顿操作猛如虎,项目是跑起来了,可是我的系统强迫症犯了,于是在它的威逼下我决定重装一下它的系统,然后也写下了这篇文章。给自己做个记录,如果也可以为一些朋友排忧解难,那就更好了。好了,废话絮叨完了。开始进入正...原创 2020-02-24 21:54:14 · 403 阅读 · 0 评论 -
Scrapy 爬虫框架结构及示例-爬取豆瓣电影Top250
1.0创建爬虫1.1 创建 projectscrapy startproject mySpider1.2 创建爬虫# 创建一个基于 scrapy.Spider 类的爬虫scrapy genspider SpiderName "domain.com"# 创建以及基于 scrapy.spiders.CrawlSpider 的爬虫scrapy genspider -t cr...原创 2018-07-09 21:55:55 · 768 阅读 · 0 评论 -
五分钟学会使用XPath
XPath 是什么? XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。先介绍工具Chrome插件:XPath HelperFirefox插件:XPath Checker开源的XPath表达式编辑工具:XMLQuire这些工具可以方便再浏览器中测试我们写的 XPath ,看看所...原创 2018-06-23 15:10:38 · 461 阅读 · 0 评论 -
使用 Python 操作文件(对文件读取与写入)
1.0 打开与关闭open(“文件名”,”打开方式”) .close() 打开文件时的文件名包括地址和后缀;打开方式如下表 举个栗子: f = open("text.txt",r) # 只读方式打开同目录下的text.txt f.close() # 关闭这个文件2.0 写入.write(“要写入的内容”) ...原创 2018-06-22 17:46:58 · 5777 阅读 · 0 评论 -
Ubuntu 下配置 python 开发环境
Ubuntu 下配置 python 开发环境 环境:Ubuntu 16.041.0 更改系统 apt 源Ubuntu 的软件源配置文件是 /etc/apt/sources.list 文件中。 可以将其更改为国内的软件源,例如: 清华大学开源软件镜像站(中科大开源软件镜像站)[]1.1 备份 sources.list 并更改:# 备份原来的源cp /etc/...原创 2018-06-22 16:13:31 · 297 阅读 · 0 评论