mac下监听全局键盘输入
因为这段时间终于狠下心来买了把键盘。然后这两天脑子里面全是如何统计键盘敲击次数,在我踩了几个坑之后,终于搞定了,这里总结一下。
首先就是mac下不支持pyhook,貌似,所以只能用pynput来瞎搞。安装各种依赖就不说了。
首先一个坑点就是,mac为了安全考虑,拒绝一般的程序监听键盘和鼠标等外设的输入。
然后我就想办法给python权限,“系统偏好设置->安全性与隐私->完全磁盘访问权限”,给权限整上了,但是我发现一个比较尴尬的事是:依然是跑不起来。然后就各种寻求帮助。
后来发现是要在sudo下运行,我试了一下,还是不行。
最后才发现,需要的权限名字不叫“完全磁盘访问权限”,而是“辅助功能”,服了。我的理解是:你丫都有完全的磁盘访问权限了,还没有辅助功能?开玩笑呢?
啊,我死了。
这里贴上我抄的代码
1 | from pynput import keyboard |
Problems in Set Theory
$\text{1.Prove Theorem 1 (show that $x$ is in the left-hand set iff it is in the right-hand set).For example,for (d),}$
\begin{eqnarray}
x \in(A \cup B) \cap C &\Longleftrightarrow& [x \in(A \cup B) \text { and } x \in C] \\
&\Longleftrightarrow& [(x \in A \text { or } x \in B), \text { and } x \in C] \\
&\Longleftrightarrow& [(x \in A, x \in C) \text { or }(x \in B, x \in C)]
\end{eqnarray}
- $ A \cup A = A ; A \cap A = A$
\begin{eqnarray}
A \cup A &=& \{ x|x \in A \} \cup \{ x|x \in A \}\\
&=& \{ x|x \in A \}\\
&=&A\\
A \cap A &=& \{ x| x \in A \} \cup \{ x|x \in A \}\\
&=& \{ x|x \in A \}\\
&=&A\\
\end{eqnarray}
- $ A \cup B = B \cup A , A \cap B = B \cap A $
\begin{eqnarray}
A \cup B &=& \{ x| x \in A \} \cup \{ x|x \in B \} \\
&=& \{ x|x \in A\ or\ x \in B \}\\
&=& \{ x|x \in B \} \cup \{ x|x \in A \}\\
&=& B \cup A
\end{eqnarray}
The Curse of Knowledge
知识的诅咒
今天看到这个很有意思的词,记录一下。
先扔链接。
用自己的一句话理解来说这件事就是:双方知识的不对等,导致告知者理解不了被告知者因为不清楚某些信息而造成的错误。
因为告知者很难理解在他看来很“常识”的东西,被告知者却不知道。
很多时候,我们描述一个东西,通常会省略我们都认为大家默认如此的东西,但是往往这些我们漏掉的关键信息反而是对方不清楚的。
一个很常见的例子是:我上周要做一个merge数据的操作,老大让我搞一下,当时他的原话是“有时间把这个merge做一下,这个拖了好久了”,然后我就吭哧吭哧开始做了,当我写完设计文档之后,他看完说了句“我说的不是这个merge”。
事实是这样:我们有两部分数据需要做merge。第一部分是上周没做,留下来的,第二部分是一天前没时间做的,我的理解是“拖了很久”,意思应该是第一个,而老大的意思是第二个,因为他觉得第二个是比较紧急的。
这种信息的不对等,导致了我们理解的不一致,如果我继续做的话,必然是有问题的。但是显然大家的理解都没问题,只是知识不对等而已。
知识的诅咒,描述的就是这种现象:当一个人知道一件事后,他就无法想象自己是不知道这件事的。
或许我们可以通过这看懂另一句话:门当户对。
我其实一直不理解为什么要门当户对,后来我渐渐明白一件事:两个环境相似的家庭诞生的两个孩子,可能思维观点一致的可能性更高,稳定的婚姻就越容易。成长环境其实很能限制一个人的发展,每个人的想法很大程度基于自己的成长过程。
同理,我们也很好解释,为啥会产生“知识的诅咒”这种现象。