Python
【Design Patterns】创建型模式
· ☕ 9 min read
工厂模式(Factory Method) 意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。

【Design Patterns】设计模式
· ☕ 3 min read
总的来说就是,越来越觉得自己开发有问题。写东西,我能写,能实现,但是代码越看越丑,尤其是代码量高的一些大项目,写到后面就会觉得语法和结构上各

Cython混合编程(2)
· ☕ 5 min read
0x00 Cython静态类型再提速 在上一节中,已经介绍了将Python代码通过Cython编译为低级的机器码作为库来提速的方法,但实际上,上一节的

Cython混合编程(1)
· ☕ 3 min read
0x00 为什么需要Cython 如果已经阅读过我之前写的 多线程、协程与高并发 博文,或者对CPython解释器、GIL锁有一定了解,那肯定知道Pyth

多线程、协程与高并发(3)
· ☕ 10 min read
0x20 协程 之前我们讲了,Python中存在GIL(全局解释锁),正因为这个设定(bug),导致多线程一直不是很好用,相形之下,对于高并发的实现,

多线程、协程与高并发(2)
· ☕ 5 min read
0x10 线程池与并发未来 不论是进程还是线程,均不能无限的开启,因此当我们用多线程解决并发问题时,我们常常使用构建线程池的方式来解决。在Python

多线程、协程与高并发(1)
· ☕ 13 min read
0x01 多线程 多线程是程序在同样的上下文中同时运行多条线程的能力。这些线程共享同一个进程的资源,可以在并发模式(单核处理器)或并行模式(多核处理器

Scrapy从入门到弃坑(番外):数据可视化与Item监控
· ☕ 2 min read
通过之前的学习,我们已经可以通过各种姿势获取到数据了,但是我们并不能很直观的观察这些数据,这就需要我们通过一些方法实现数据可视化,以达到清晰

Scrapy从入门到弃坑(5):分布式爬虫实现
· ☕ 6 min read
0x00 需求分析 虽然基于Scrapy框架,我们可以轻易实现异步的、高并发的爬虫,但是,无论如何高并发,计算机的带宽永远是恒定的,协程设计的再巧妙也

ubuntu升级Python及pip
· ☕ 4 min read
近日,笔者因为需要用到aiohttp异步处理库,而需要对服务器的Python版本做一个升级。本以为是很简单的一个事情,没想到这个升级还真不是