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

Panda Home

Python 的魔术方法

发布于# 聊聊技术
标签: # Dict# Python# Magic methods
Python 的魔术方法
Photo by Sarah Ehlers on Unsplash

在上一篇文章中实现了一个非常简陋的 MyDict 类,仅仅可以 get 、set ,其他的各种功能都没有,甚至连在 Python shell 中正常的表示都做不到。这篇文章将会继续完善这个字典类,并同时简单介绍用到的 Python 魔术方法。 目前的 MyDict 已经有了基本的功能,但如果试图输出,就会出现如下所示的样子。 >>> from my_dict import MyDict >>> d = MyDict() >>> d["a"] = 1 >>> d["b"] = 2 >>> d["c"] = 3 >>> d <my_dict.MyDict object at 0x1028fde48> >>> print(d) <my_dict.MyDi

不用 Python 自带的 Dict 实现自己的 HashTable

发布于# 聊聊技术
标签: # Dict# HashTable# Python# Uber# 哈希表# 面经
不用 Python 自带的 Dict 实现自己的 HashTable
Photo by Chris Ried on Unsplash

这个题目其实源于很久之前的一次 Uber 面试,码工换工作无非就是刷 leetcode ,研究如何翻转二叉树之类的算法问题,所以头一次在电话里听到这道题的时候还是挺耳目一新的。当时顺利写出来了,也通过了电面,但觉得还是有不完善的地方,比如说代码不够 “Python” 等,所以趁着周天晚上闲着无事,又拿出来写了写。 HashTable 本身大家应该都很熟悉了,中文叫”哈希表“或者”散列表“,具体翻译看教材编写者的个人喜好。众所周知这个数据结构用来存储”键-值“结构的数据,可以做到常数级时间复杂度的查找,在日常搬砖中算是主力工具。实现一个 HashTable 其实就是实现两个部分 Hash 函数。这个函数能够读入一个可被 hash 的变量,输出一个整数。在本次实现中暂不考虑这一块,用 Python 自带的 hash 函数偷个懒 Hash 冲突的解决机制。成熟的方法有很多种,在这里只考虑

Airflow 初探

发布于# 聊聊技术
标签: # Python# Apache Airflow
Airflow 初探
Photo by Lauren Mancke on Unsplash

2021-07-01 更新 时至今日, Airflow 已经进化到了 2.0 版本,并且在官方文档中提供详尽的如何以 Docker 运行的方式。以今天的眼光看来,这应该是更容易上手,对服务器环境需求及改动最小的一种运行方式。并且云厂商像 AWS 和 GCP 也推出了自己的 Airflow 集群托管服务,如果自己的生产环境搭建在这些平台上,建议直接使用他们的托管服务,既能免除自己的运维负担,也不用担心跟某个云厂商绑定,毕竟上面的 DAG 都是自己的,迁移不需要太大代价。 正文 距离上回写小作文过了多半年,这几个月来发生了一些事情,最大的就是这个月初我换了工作,从 Palo Alto 换到了 Mountain View ,附近吃的喝的玩的较之以前有了很大的提升。但总归主业是过来干活的,上班大概三周了,很开心刚入职就让我研究开发一个新项目,其核心就是 Airflow ,一个有向无环图任务( Di

“豆瓣电影评级”插件开发始末

发布于# 随便聊聊
标签: # Chrome# Firefox# MPAA# 插件# 豆瓣# IMDb
“豆瓣电影评级”插件开发始末
Photo by Jeremy Yap on Unsplash

2023年 8 月 7 日更新 由于最近没有时间维护此插件,因此下架了浏览器商店。 2018 年 4 月 17 日更新 趁着今天风水好,对插件进行了一些更新,使之支持知乎电影页面的评级。看客可能诧异,知乎不是装逼的地方吗?什么时候有电影信息了?其实这个更新也是临时起意,在浏览电影《湮灭》时,发现页面上居然有 IMDb 网站的评分,该标签还是一个 IMDb 页面的链接,这就说明能从网页上找到电影的 IMDb id ,那我自然就不客气了,加了一段有点类似于豆瓣电影页面的解析,同时为了不破坏原有页面的观感,只是提供一个评级的小标签,该标签指向百度百科的 MPAA 介绍页面,这样用户也能轻松了解每个符号代表什么意思。实际效果如图所示 同时因为插件也开始支持豆瓣之外的网站,继续叫“豆瓣电影评级”不合适,就更名为“MPAA 电影评级”。 正文 二月份在国内过了个年,捎带和同学去看了场非常精彩的电影《

我的 2017

发布于# 随便聊聊
标签: # 2017# 年终总结# 谈笑风生
我的 2017
Photo by freestocks.org on Unsplash

谈笑风生又一年 过去一年也没有什么别的,大概下面几件事 抽中了美帝的工作签证,纯粹历史的进程,和自我奋斗没什么关系 在公司搞了两个稍大的项目,忽悠公司涨了工资,公司自己多给了我一堆股票,没上市,没价值 小公司穷得很,从没有年终奖,自己买买基金股票给自己发了一个月的税前工资当奖金了 在 Coursera 上拿了两个证书,一个关于算法的,一个关于数据科学入门的,现在在上一门前端的课,还有一周结课,看来在今年是拿不到了 通过康奈尔的课程入门了 OCaml 这门语言,通过它学习了从一些新的角度来看待问题,还没写过什么实战类的代码。它的静态强类型我很喜欢,希望在新的一年里能用一个项目来练习 应经理建议开坑 Clojure ,语言很强大,现成的函数很多,唯一的缺点大概就是括号太多( Lisp 系的通病)。不过也算是在公司的代码库里写了几行,同样需要多练习,功能强大了意味着要熟练掌握的难度就更大(