如何使用 python 的键盘模块键入任何包含特殊字符的给定字符串?

How to type any given string, which contains special characters, using python's keyboard module?

我想通过键盘模块输入一个非常简单的“(你好)”

import keyboard
s="(hello)"
keyboard.write(s)

这给了我各种各样的错误,我认为这是因为“(”和“)”是未映射的特殊字符,需要一些用户定义的映射?

注: 以下命令可以正常运行:

import keyboard
s="hello"
keyboard.write(s)

我检查了键盘包源。截至(2020 年 5 月 28 日)的 keyboard.write() 无法执行此操作。它只能模拟键的非修改版本。需要使用keyboard包中的其他函数来实现组合按键

解决方法/解决方案,(使用键盘包中的其他功能手动模拟按键):

import keyboard

# This line will simulate the "shift+9" combination which is "(" character.
keyboard.press("shift"); keyboard.press("9"); keyboard.release("9"); keyboard.release("shift")

Keyboard.write() 逐个字符地处理输入字符串,如按下键然后松开键,然后移动到下一个字符。所以你只能得到密钥的基本版本。 keyboard.write() 用于组合字符的查找未正确实现或不适用于组合字符。对于“(”或“)”,它将抛出 StopIteration 异常。