玻璃齿轮 - SlassGear
我为什么要写[CMDTREE]这个命令行库
CmdTree是一个命令行库,参见 这里https://github.com/winkidney/cmdtree轮子满地都是……然而我又再造了一个(自尽现有的库虽然有各自的设计哲学,却无法满足某些特定的需求:)。能不能享受click带来的便利的同时,也能获取到argparse的子命令支持呢?为了不再每次都要重复解决这个问题,复制粘贴代码,我写了CmdTree.
两个极限编程大赛题解
引子上周基友忽然问我,周六能不能帮他写写代码,说是参加什么比赛,可以多个人一起做题,赛程好像是24小时。当时我感觉应该是比较麻烦的事情,准备不做的,不过后面一想,万一很有趣呢,哈哈。到了周六,都差点忘了有这回事,被一个QQ消息提醒了,就开始做题了。后面才知道,这个活动叫“极限编程大赛”,会临场发布一些网上基本上搜不到的问题,给你解决,分数根据跑过的测试用例来计算。我帮他做了两个题,都还算比较...
理解 WERKZEUG 的 THREADLOCAL 实现
https://github.com/pallets/werkzeug文件在 werkzeug/local.py看这部分源码,主要想搞清楚以下几个问题:ThreadLocal解决什么问题ThreadLocal如何实现ThreadLocal的生命周期管理ThreadLocal解决什么问题ThreadLocal是需要拿来和全局变量对比的。当大家都需要用相同的逻辑,引用相同的变量名/资源来完成自己...
PYTHON CONDITION源码阅读
这两天读了一下Python的Condition实现源码,是实现Queue的工具之一,发现是非常朴素的sleep->loop->query模式。源码很少,直接贴出,就不做注释了:)def wait(self, timeout=None): """Wait until notified or until a timeout occurs....
【树莓派折腾记】-有了树莓派可以做的几件事
前段时间买了一个树莓派,最初的想法是可以用来挂一些下载,或者挂一些爬虫,做做简单的NAS之类的。最后到手之后,发现树莓派3 B+还是很快的,4个CPU核心+1G RAM,外接移动硬盘的情况下,IO上也可以接受。添加风扇控制我从淘宝上弄了一个风扇,直接接到树莓派的5v-0v接口上,这样风扇会一直运转,其实还挺烦的……因为声音比较大……所以希望风扇能在温度低于45度的时候,能够自动关闭就好了。首...