【问题标题】:How to Change Keyboard in Python PyAutoGUI如何在 Python PyAutoGUI 中更改键盘
【发布时间】:2019-08-31 02:22:18
【问题描述】:

我正在尝试使用 PyAutoGUI 打印文本,并且我将键盘设置为 Dvorak,所以每当我打印文本时,它都会出现不正确的字符。例如,“你好世界!”输出为“Jdpps

当我将字符串放入变量时也会发生同样的事情。

有没有办法让它在我输入的时候按字面意思打印出来?

【问题讨论】:

  • 设置键盘布局通常是操作系统的一项功能。
  • 有没有办法可以根据程序的范围更改它?

标签: python pyautogui


【解决方案1】:

所以我最终做的是在我的主目录中创建一个文件 .xkbmap-qwerty,然后运行 ​​os.system("xmodmap ~/.xkbmap-qwerty") 加载密钥,然后在程序退出时,甚至在程序运行时,它都不会影响我的 shell。

这是我的文件:

keysym q = q Q keysym w = w W keysym e = e E keysym r = r R keysym t = t T keysym y = y Y keysym u = u U keysym i = i I keysym o = o O keysym p = p P keysym bracketleft = bracketleft braceleft keysym bracketright = bracketright braceright keysym a = a A keysym s = s S keysym d = d D keysym f = f F keysym g = g G keysym h = h H keysym j = j J keysym k = k K keysym l = l L keysym semicolon = semicolon colon keysym quoteright = quoteright quotedbl keysym z = z Z keysym x = x X keysym c = c C keysym v = v V keysym b = b B keysym n = n N keysym m = m M keysym comma = comma less keysym period = period greater keysym slash = slash question keysym 1 = 1 exclam keysym 2 = 2 at keysym 3 = 3 numbersign keysym 4 = 4 dollar keysym 5 = 5 percent keysym 6 = 6 asciicircum keysym 7 = 7 ampersand keysym 8 = 8 asterisk keysym 9 = 9 parenleft keysym 0 = 0 parenright keysym minus = minus underscore keysym equal = equal plus

【讨论】:

  • 稍微简单一些(也许更现代):os.system("setxkbmap -layout us") 或者在我的情况下我不得不使用德国布局。
猜你喜欢
  • 2010-10-25
  • 2021-03-27
  • 2022-09-27
  • 2019-05-26
  • 1970-01-01
  • 1970-01-01
  • 2013-01-08
  • 2020-07-23
  • 2023-04-10
相关资源
最近更新 更多