对Python函数传参的一些思考

今天看到这样一个问题: Python 的函数是怎么传递参数的,有了一些兴趣,因为以前都是直接信的一个流传度较广的说法 对于不可变对象作为函数参数,相当于C系语言的值传递; 对于可变对象作为函数参数,相当于C系语言的引用传递。 那么事实上真是如此吗?我们来看几个例子。 首先我们来看看第一个说法,这里我实验环境是Python3.6。...

more


grafana使用中遇到的一些坑

prometheus+grafana的系统监控方式用起来很不错,最近开始使用它来监控haipproxy和weibospider。由于网上相关的中文资料比较少,所以在使用它们的时候还是遇到很多坑。这篇文章主要提一下自己遇到的几个小坑。 1.如何显示对人类友好的时间?...

more


如何将自己的Python包发布到PyPI

以前写过一篇类似的文章: 如何打包自己的项目并且发布到pypi上,不过由于PyPI进行了一些更新,因此旧方法不大适用了。趁端午有时间,想把haipproxy的客户端发布到PyPI,以改进用户体验,因此这次又尝试了如何将Python包发布到新版本的PyPI上。 编写setup.py 以haipproxy为例,它的setup.py如下 from os import path as...

more


谈谈__eq__和__hash__

今天刷一道算法题的时候用到了list_a == list_b的判断,==和is大家都已经是耳熟能详了,前者是判断值是否相等,后者是判断引用是否相等,在用==操作符进行判断的时候,其实内部调用的是__eq__方法。比如 class Item: def init(self, val): self.val = val def eq(self, other): return self.val ==...

more


Sentry初体验

最近由于工作需要,接触了两类监控类产品,一类是对于系统资源,系统状态、应用状态等信息的监控,主要是使用prometheus+grafana,这个打算以后更熟悉了写几篇科普的文章,用起来感觉还是很酷也很实用的;另外一类是error...

more