0%

在学习redis源码时,发现BITCOUNT命令实现用到了variable-precision SWAR 算法。

BITCOUNT命令要解决的问题:统计一个位数组中非0二进制位的数量。在数学上被称为“计算汉明重量(Hamming Weight)”

目前已知效率最好的通用算法为variable-precision SWAR 算法。
该算法通过一系列位移和位运算操作,可以在常数时间内计算多个字节的汉明重量,并且不需要使用任何额外的内存。

阅读全文 »

从高中接触庄子开始,就觉得太难懂了,无论原著还是翻译。直到大学发现南老师讲的这本,才算是勉强能看下去。

从14年开始,晚上时不时看一点,到现在看完,正好六年。

人生又有多少个六年呢

阅读全文 »

IPython简介

IPython项目起初是Fernando Pérez在2001年的一个用以加强和Python交互的子项目。在随后的16年中,它成为了Python数据栈最重要的工具之一。

简单来说,我们可以把IPython当成一个学习Python语言、数据分析、机器学习的平台。

阅读全文 »

缘起

循环import是很多Python初学者都会遇到问题,网上有也有很多文章讲解决方法,比如这篇,不清楚的可以自行查阅,这里就不赘述了。

那么,为啥老司机也会遇到这个问题呢?这段时间一直在搞把redis复刻一个python版本,在复刻代码时就遇到了这个问题。而且我也使用了延迟import,却没能解决。

下面我们来详细分析下

阅读全文 »

最近一段时期有很多事情发生,也颠覆了我们的认知(如I cannot breathe),同时也发现了很多双标事件。

下面就简单地总结下,如何双标。

双标的核心是,定性的看问题,不要就事论事具体分析。

双标的要点之一,选取部分真相进行概括定性。
这里的选取非常关键,我们应该选择性地看见我们想看见的东西。假如B捡了地上的一块钱并据为己有,贪小便宜不是君子所为,这人肯定是品行不端。假如A也这么干了,对不起我没有看见。假如A捡了垃圾放垃圾桶了,这时我们就可以说,从一件微不足道的事情上就可以看出A真是道德高尚。

双标的要点之二,定性之后的上纲上线。
由于第一步我们已经定性了A和B,以后再发生事情就很好处理了。假如都做了好事,A就是好人性质的体现,B因为他是坏人肯定是另有目的的,是伪装的。假如都做了坏事,反过来处理就好了。比如,你认定A是好人,B是坏人,假设他们都随地吐痰了。这时就可以说A肯定是不小心的,大善人怎么可能做这种事;可以说B真是狗改不了吃屎,连基本的公德心都没有。假设都做了好事,扶老奶奶过马路,A就是一以贯之的道德楷模,值得学习;B肯定是装的,为了方便自己做坏事。

asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持。

asyncio的编程模型就是一个消息循环。我们从asyncio模块中直接获取一个EventLoop的引用,然后把需要执行的协程扔到EventLoop中执行,就实现了异步IO。

阅读全文 »

自己常年都在自学,在自学的路上走了很多弯路,到最后发现很多时候走的都是最艰难的或者是错误的道路,抑或是一直在尝试各种道路,从未选择一条坚持走下去。

阅读全文 »

前置要求

  • 了解Python3和Python2的区别,参考Python2和Python3区别Python3新特性
  • 完备的测试用例
  • 必要的工具:future,用于自动修改不兼容的语法。six,用于Python版本判断。pylint,语法检查
  • 做好备份
  • 测试(至关重要),下面的每一步改动都得确保代码行为没有发生变化。

future安装

pip install future -U

阅读全文 »

本文为整理以前的读书笔记, 也是所有旧读书笔记的最后一篇

概述

本书主要讲述的是,我们必须去理解我们的情绪,情绪只是外显的东西,我们需要了解为何在这个时刻会产生这种情绪,它表明了什么。

借用书中的一句话:
情绪或多或少地行使着相同的目的,那就是从一个艰难的世界中逃离。

阅读全文 »

本文为整理以前的读书笔记

对抑郁的忧虑会使我们的抑郁更加严重

忧虑是一项认知任务,个体如果把心理资源用于忧虑,就分散了用于处理其他信息的心理资源。

阅读全文 »

本文为整理以前的读书笔记

概述

记得当时在学校图书馆借了这本书,对幼稚的三观产生了巨大冲击。

书中所记内容,像是渣男语录集结,而纯情少女们也正吃这套。为何呢?漂亮话总是容易说的,成本也小,当你说骚话撩妹的时候,肯定不会想着如何兑现,先撩到手再说。

然而承诺就截然不同了,每一个承诺都得考虑其可行性及付出的成本,自然是得审慎,也就没那么吸引人了。

最终,还是还是白给了渣男的的甜言蜜语。

阅读全文 »

本文为整理以前的读书笔记
老拖延症企图又又从这本书中获得救赎之道,然而这笔记也拖延了许久。

概述

Getting Things Done(GTD),是一种时间管理的方法,确切地说是事项管理的方法,通过GTD可以将所有事项管理起来,提高效率的同事,降低心智损耗,减少个人焦虑

阅读全文 »