如何找到所有键盘字符和符号的移位值?

How to find shift value for all keyboard characters and symbols?

使用 Python 获取键盘上所有键和符号的 "uppercase" 值的最简单方法是什么?

我知道这适用于标准字母

mystr = "a"
print(mystr.upper()) # "A"

但是如果我想把“1”转换成“!”呢?做这个的最好方式是什么? mystr.upper() 在这种情况下仍然输出“1”。

伦敦的键盘可能看起来与巴黎的不同。 对于你的键盘,你想写下一个映射:

shifted = {
    '1': '!',
    '2': '@',
    ...
}

mystr = '1'
assert shifted[mystr] == '!'

你不能从纯粹的 Python 做到这一点。键盘的物理特性嵌入在键盘的电路中,而不是您可以通过编程方式查询该映射的任何地方。您需要为每个客户端实现一种方法来指定连接的设备,或者允许您探测系统以查找模型规格。 那么您是否需要从制造商规格中查找并下载映射。

另外,什么要求您的输入字符来自键盘?有很多可能的输入流。