1.大写转小写 

判断Caps Lock键码状态1是大写,0是小写, Caps Lock的键码是20

import win32con
import win32api
if win32api.GetKeyState(20) == 1:
    print("Caps Lock键盘大写,转成小写")
    win32api.keybd_event(20, 0, 0, 0)  # 按下Caps Lock键
    win32api.keybd_event(20, 0, win32con.KEYEVENTF_KEYUP, 0)  # 释放Caps Lock键

 2.中文转英文

测试win10 可以, win11要在【时间和语言】设置安装美式键盘输入法否者没有效果,win11去掉了这个输入法

import win32api
import win32gui
from win32con import WM_INPUTLANGCHANGEREQUEST


def change_language(lang="EN"):
    """
    切换语言
    :param lang: EN––English; ZH––Chinese
    :return: bool
    """
    LANG = {
        "ZH": 0x0804,
        "EN": 0x0409
    }
    hwnd = win32gui.GetForegroundWindow()
    print(hwnd)
    language = LANG[lang]
    print(language)
    result = win32api.SendMessage(
        hwnd,
        WM_INPUTLANGCHANGEREQUEST,
        0,
        language
    )
    if not result:
        return True

change_language(lang="EN")