苟利国家生死以,岂因祸福避趋之

Panda Home

OrderedDict 是如何保证 Key 的插入顺序的

发布于 # 聊聊技术
标签: # OrderedDict # Python # 源码阅读
OrderedDict 是如何保证 Key 的插入顺序的
Photo by Diomari Madulara on Unsplash

现象 根据哈希表的定义,以及之前简单实现过的一个字典数据结构,当 Key 被插入哈希表后,哈希表根据散列函数求出的值来安排这个 Key 所在的位置,所以当我们遍历哈希表的时候, Key 的顺序是不确定的,因此码农在使用哈希表这个数据结构的时候,是不应该依赖于 Key 的插入顺序来达到某些目的的。 但有的时候我们可能会对哈希表中 Key 的插入顺序感兴趣,这时有经验的 Python 工程师就会用 collections 中的 OrderedDict 来保持插入 Key 的顺序。 >>> d1 = {} >>> d1['a'] = 1 >>> d1['b'] = 2 >>> d1['c'] = 3 >>> d1['d'] = 4 >>> d1['e'] = 5 >>>

把博客从 DigitalOcean 搬到了 AWS

我一个 DigitalOcean 的用户,怎么就转移到了 AWS 呢? 起因 一开始我没有考虑过这个事情,用了 DigitalOcean 好几年,对它的服务一直非常满意,尤其是上面各种详尽的文档教程,让我这个非专业运维也成功运行了这个小网站好几年,也逐步的上了 HTTPS 、 ipv6 、 HTTP2 ,至少看起来像那么回事了。 后来偶然一次在 AWS 界面闲逛,发现了 Lightsail 这个服务,有点儿类似于 DigitalOcean 的 Marketplace ,也提供了一些常用的软件预装在云服务器上,关键是比 DigitalOcean 便宜了许多。当年 DigitalOcean 给我开的价是一个月十块钱,后来我给博客加了个备份,文件放在他们自家的 Space 上,起步价五块一个月,这样下来维护这个网站一个月的开销就是十五块。然而同样的服务如果用 AWS 的话,就少了十块钱还多(

湾区初级码农理财经验谈

发布于 # 随便聊聊
标签: # 湾区 # 理财 # 生活 # 码农 # 闷声大发财
湾区初级码农理财经验谈
Photo by Michael Longmire on Unsplash

个人背景:在旧金山湾区从业四年有余,非一线大厂,非上市公司,到手工资只有 base ,看一亩三分地上的网友晒包裹的时候看不懂除 base 之外的概念。 认识不少朋友,所谓的理财就是每年存满 401k ,一方面抵了高到不知哪里去的税务,一方面拿到公司给 match 的那一部分,每年存下的也挺多,加上这几年美股起飞,可以说是小赚了一笔,并且公司每年发自家股票,几乎不用怎么费力折腾理财,手里的钱就能蹭蹭蹭往上涨。我作为金融业零知识,脑子懒不愿多算数的普通码农,如果不是公司不给 match 401k ,我也不会费劲去研究这些东西。想到不 match 的情况下,虽说存的是税前工资,但也只是起到一个延迟交税的作用,而且如果 60 岁之前取出的话,还要交 10% 的罚款,对我不是太划算。虽然我工资低,但攒攒还是有一些的,躺在 Chase 银行吃着万分之一的利息(没错, banker 说 0.01% 的时

Python+Selenium 下载微博视频

都2020年了,还写爬虫类型的代码,颇有种49年入国军的感觉,但代码都已经写了,同时这个博客的定位是个人知识库,简单记录下来,万一以后有用呢。 之前说过,为了在 Reddit 上混几个积分,写了个自动发帖辅助工具,每天发一则熊猫视频,是为“一天一熊猫,忧愁远离我”,比如说这个帖子,成功吸引了大量熊猫粉的观看和点赞。每个帖子我都会注明视频来源,也就是微博。为了练习用 Selenium 扒视频,我写了这样一个简单的函数来找出视频的真正链接 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_c

我的 2019

发布于 # 随便聊聊
标签: # 2019 # 年终总结 # 谈笑风生
我的 2019
Photo by NordWood Themes on Unsplash

谈笑风生又一年 居安 去年说的啥来着,用一门新的编程语言做个项目,其实这个 flag 算是完成了,但我绝对想不到这门新语言居然是 Java ,我一个 Python 程序员怎么就去写 Java 了呢?公司老板说,我们已经决定了,你来写 Java ,于是到我写下此文的这一刻,我有了多半年的 Java 经验。为了证明我做了一些微小的工作,还胡乱写了篇笔记,讲如何在苹果电脑上安装 Java ,算是在这个项目里不虚此行。 不吐槽编程语言本身,项目还是非常有意思的,基于 Kafka 搭建我们的数据管道,但主要工作还是升级,公司里用的那一套是三四年前的,版本太老,zookeeper 的管理乱的很,于是决定升级到最新版。在此期间从零开始学习了 Java ,了解了 Kafka 的生产者——消费者机制和为了性能采取了一系列措施,还试着写了写 Kafka Streams 相关的应用,得承认这一块端到端的 e