不可不知的Python模块: collections
Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块。比如今天想给大家 介绍的 collections 就是一个非常好的例子。 基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, … … View more
Charming Python: 从Flask的request说起
piglei: 接触Python也有一段时间了,Python相关的框架和模块也接触了不少,希望把自己接触到的自己 觉得比较好的设计和实现分享给大家,于是取了一个“Charming Python”的小标,算是给自己开了一个头吧, 希望大家多多批评指正。 :) from fl … … View more
替换你的print(logging模块超简明指南)
替换print?print怎么了? print 可能是所有学习Python语言的人第一个接触的东西。它最主要的功能就是往控制台 打印一段信息,像这样: print 'Hello, logging!' print也是绝大多数人用来调试自己的程序用的最多的东西,就像写js … … View more
一个由Django的save方法引发的bug
bug的产生 我已经很久没碰到让人比较头疼的bug了,前两天的时候碰到了一个。写个文章记录下来。 希望看过文章的同学下次碰到类似bug就不用被烦恼到。 出现问题的这段代码简化过的逻辑大概是这个样子的: from app.models import User from c … … View more
Python中的__init__和__new__
__init__ 方法是什么? 使用Python写过面向对象的代码的同学,可能对 __init__ 方法已经非常熟悉了,__init__ 方法通常用在初始化一个类实例的时候。例如: # -*- coding: utf-8 -*- class Person(object … … View more
写了个豆瓣FM的Chrome插件
有那么一段时间,我是豆瓣FM的重度用户,因为豆瓣FM的推荐算法真的很不错,但是久而久之慢慢的受不了豆瓣FM刺耳的128k mp3的音质了,于是就慢慢的转向使用网易云音乐了。 前几天突然有了一个想法,觉得是不是能够依靠chrome插件来让豆瓣FM使用更高品质的音源,于是就写了 … … View more
如何无缝迁移redis server
最近需要把一个redis服务从一台服务器上迁移到另外一台上,所以找了一下迁移的方案,有说在第一台 把数据Dump完然后复制数据文件过去,之后在新机器上起来redis实例,但是这样redis将会有一段无法 使用的时间。 后来发现使用redis的 replication 可以极 … … View more
pycronic: 使crontab的报警更无痛
这两天为了解决服务器上的crontab邮件报警问题,写了一个小工具,叫做pycronic,希望大家可以下载试用,下面是一些简单的介绍。 pycronic 项目地址:https://github.com/piglei/pycronic 项目作者:piglei & … … View more