
一个使计算机新手感到困惑的问题是:
为什么键盘排列奇怪的是QWERT ...而不是普通的ABCDE ...?
这可以回溯到打字机的发明,因为计算机键盘是基于打字机键盘的. 这种“奇怪”的键盘有一个名字,叫做QWERTY键盘,发音为/ ˈkwɜːrti/.
打字机的主要发明者是美国发明家克里斯托弗·拉瑟姆·肖尔斯(Christopher Latham Sholes),他于1867年申请了打字机专利.
Shores不仅发明了打字机的机械结构,而且非常重要的是,他进一步改善了打字机的键盘布置.

实际上,第一个版本的Schols键盘确实以ABCDE ...的顺序排列,有两排键,如钢琴,如下图所示:

但是,随着时间的推移,最早的打字机很容易卡塞. Shores研究了此问题,并认为,如果调整键盘顺序以不连接高频字母,则可以解决干扰问题并提高打字速度.
因此,经过多次修改,在将专利卖给了的机械师之后,他终于在1873年将键盘修改为如下形式:


从这里我们已经可以看到现代键盘的阴影. 这种设计不仅大大减少了卡塞现象,而且使手指的刚度降低了,大大提高了打字速度.
但是,由于某种未知的原因,公司对后来正式推出的商用打字机上的Shoals设计进行了很多更改,最后将键盘更改为:

从那时起,键盘基本上已经成形. 到目前为止,计算机键盘的核心部分也是按此顺序排列的,最多只有一些功能键被添加到设备中.
那么问题是,Shoals的键盘还是Remington的键盘哪个更好?

我们使用Python编程,计算了一些经典中字母/符号的出现频率,并将它们与图形显示进行了比较.
以下是Jane Austen撰写的《傲慢与偏见》一书的统计结果,首先看一下Schols键盘:

间隔清楚且有序. 再次查看键盘:


显然,出于高频字母间距的设计目的,Shoals键盘的效果更加明显. 键盘不仅削弱了这种效果,而且使左右手分配不平衡.
由于这些问题是由于Remington的修订而引起的,所以有声音质疑Shoals,甚至认为Shoals的设计是骗局. 浅滩真是冤屈.
那为什么要改变这种方式?不知道. 也许是为了使整洁和美观,毕竟,在进行了这种更改之后,标点符号不再与字母混合在一起.
有关本文中各图生成的源代码和说明,请参阅附录. 这是“简单有趣的Python”,欢迎关注.
附录: 源代码和思考问题
import matplotlib.pyplot as plt
plt.rcParams[font.family] = Heiti TC # 允许显示中文字体
# QWERTY键盘
row = ((q, w, e, r, t, y, u, i, o, p),
(a, s, d, f, g, h, j, k, l, ;),
(z, x, c, v, b, n, m, ,, ., ?))
# 肖尔斯键盘
row = ((q, w, e, ., t, y, i, u, o, p),
(z, s, d, f, g, h, j, k, l, m),
(a, x, &, c, v, b, n, ?, ;, r))
stats = [{ch: 0 for ch in row[i]} for i in range(3)] # 初始化每个字母的计数为0
f = open("data/Pride-and-Prejudice-by-Jane-Austen.txt")
while True:
chars = f.read(4096) # 每次读取的字符数,可以调整优化
if chars == : # 读到空字符表明文件已经读取完毕
break
chars = chars.lower()
for i in range(3):
for ch in row[i]:
stats[i][ch] += chars.count(ch)
f.close()
for i in range(3):
plt.bar(stats[i].keys(), stats[i].values())
plt.xlabel(字母/符号, fontdict = {fontsize: 12})
plt.ylabel(字母/符号出现次数, fontdict = {fontsize: 12})
plt.show()
动手练习:
可以在本文结尾的代码库URL的数据目录下找到其他书籍. 请将该书籍文件下载到本地程序目录,保持相同的目录结构,然后修改以上代码以尝试其他书籍的统计结果. (温馨提示: 在网站上下载文件的操作更容易)请调整每次读取的字符数的大小(最初为4096),并感受不同读取块大小的程序效率. 问题: 如果要计算单词而不是字母的出现频率怎么办? (提示: 使用文件的readline和字符串的split方法. )
Python自然学习方法的完整源代码URL:
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-307948-1.html
台湾人