前段时间我在做一个Python web应用,在产品线上跟内存占用太大的问题纠结,最后终于找到一个解决这个问题的技术:就是在应用运行时增加一个简单的能够暴露内存统计的API. 采用Pympler 在...
Python的concurrent.futures理解
读了 concurrent.futures 源码,记录一下实现原理。 主要包括三个文件:_base.py、thread.py 和 process.py,_base.py 主要是 Future 本身的内容,thread.py 和 process.py 是 Future 的执行器。 _base.py 主要定...
用Python理解Web并发模型
Java程序员进阶三条必经之路:数据库、虚拟机、异步通信。 前言 虽然异步是我们急需掌握的高阶技术,但是不积跬步无以至千里,同步技术的学习是不能省略的。今天这篇文章主要用...
Python“黑魔法”之 Generator Coroutines
学过 Python 的都知道,Python 里有一个很厉害的概念叫做 生成器(Generators)。一个生成器就像是一个微小的线程,可以随处暂停,也可以随时恢复执行,还可以和代码块外部进行数据交...
Python Decorator的来龙
本文主要梳理了Python decorator的实现思路,解释了为什么Python decorator是现在这个样子。 关于代理模式、装饰模式 设计模式中经常提到的代理模式、装饰模式,这两种叫法实际上是说的同...
Python爬虫:Xpath语法笔记
一、选取节点 常用的路劲表达式: 表达式 描述 实例 nodename 选取nodename节点的所有子节点 xpath(//div) 选取了div节点的所有子节点 / 从根节点选取 xpath(/div) 从根节点上选取div节点 // 选取...
用python的装饰器定义一个像C++一样的强类型函数
Python作为一个动态的脚本语言,其函数在定义时是不需要指出参数的类型,也不需要指出函数是否有返回值。本文将介绍如何使用python的装饰器来定义一个像C++那样的强类型函数。接下...
Python的模块引用和查找路径
模块间相互独立相互引用是任何一种编程语言的基础能力。对于模块这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的...
Python实现Linux命令xxd -i功能
一. Linux xxd -i功能 Linux系统xxd命令使用二进制或十六进制格式显示文件内容。若未指定outfile参数,则将结果显示在终端屏幕上;否则输出到outfile中。详细的用法可参考linux命令xxd。 本文...
Python图像处理库PIL的ImageSequence模块介绍
Python图像处理库PIL的ImageSequence模块包含了一个wrapper类,它可以让用户迭代访问图形序列中每一帧图像。 一、ImageSequence模块的函数 1、Iterator 定义:ImageSequence.Iterator(image)Iterator instanc...