Skip to main content

控制台设置/集。可更改控制台设置,或获取控制台输入流

Project description

Console Set (conset)

一个控制台交互库,用于实时获取终端输入和配置控制台设置。

系统要求

支持的平台

  • 操作系统:Windows 10/11(64位)
  • 终端:Windows 终端、命令提示符(cmd)、PowerShell
  • 架构:x64/AMD64
  • Python:3.14 或更高版本

不支持的平台

  • 32位 Windows 系统
  • Linux 或 macOS
  • ARM 架构 Windows
  • Python 2.x

安装

PyPI安装(推荐)

pip install conset

验证安装

PowerShell

python -c "try:`n import conset`n print('安装成功')`nexcept:`n print('安装失败,请运行 pip install conset')"

命令提示符(cmd)或其它

python -c "import conset; print('安装成功')"

如果报错提示ModuleNotFoundError: No module named 'conset'则代表安装失败,请运行pip install conset

快速开始

基础示例

import conset

# 获取控制台输入事件
events = conset.conin()

if events: # 如果读取到了事件
    latest_event = events[-1] # 列表的最后一个元素是读取到的最近的一个事件

    # 处理事件
    mouse = latest_event.get("mouse")
    keyboard = latest_event.get("keyboard")
    buffer = latest_event.get("buffer")
    if mouse: # 如果是鼠标事件
        print("鼠标位置:y = ", mouse["pos"]["y"], ", x = ", mouse["pos"]["x"])
    elif keyboard: # 如果是键盘事件
        if keyboard["keydown"]:
            print("按键:", keyboard["keyname"])
            print("键值:", keyboard["keycode"])
    elif buffer: # 如果是缓冲区大小事件
        print("缓冲区大小:y = ", buffer["y"], ", x = ", buffer["x"])
    else: # 事件读取失败
        print("事件读取失败")

API 参考

is_admin函数

判断当前程序是否为管理员权限。

参数

  • 不支持传入参数。

返回值

  • True:当前程序拥有管理员权限。
  • False:当前程序没有管理员权限。

reboot_to_admin函数

当程序不是管理员权限时,将会以管理员权限打开新程序。此时旧程序应当直接结束运行。

参数

  • 不支持传入参数。

返回值

  • True:当前程序并非管理员权限,已以管理员身份重新启动原程序。推荐结束当前程序。
  • False:当前程序已拥有管理员权限,无需重新启动程序。
  • None:当前程序并非源于可用于执行的文件,无法处理。

conset函数

会更改运行程序的控制台的一些设置。

参数

  • 可选参数title:仅支持以关键字方式传入字符串值,会将控制台标题更改为传入的字符串。不传入值则默认不更改标题。

返回值

  • None

备注

  • 当此函数传入了任意参数时,仅会更改参数对应的配置。而未传入参数时,其将对控制台进行默认配置。
  • 此函数更改的设置会在部分情况下被覆盖或失效。
  • 此函数在import时会自动运行。

conin函数

获取在控制台下鼠标与键盘的状态和缓冲区大小。

参数

  • 不支持传入参数。

返回值

  • 控制台输入事件列表。

备注

  • 以下列举连续发生了三种不同事件时的返回值结构。
[ # 返回的列表(读取到了 3 个事件)
    { # 鼠标事件(最早发生的事件)
        "mouse": {
            "pos": {
                "y": int, # 鼠标 y 轴坐标。从上到下
                "x": int # 鼠标 x 轴坐标。从左到右
            },
            "button": {
                "left": bool,
                "right": bool,
                "middle": bool
            }
            "flag": str # "default", "move", "double", "wheel", "hwheel"
        }
    },
    { # 键盘事件(第二个事件)
        "keyboard": {
            "keydown": bool,
            "keyname": str, # [按键名] 或 None
            "keycode": int, # 按键键值
            "repeat": int # 刚按下时为 1,按住时逐渐增长
            "control": {
                "ralt": bool, "lalt": bool,
                "rctrl": bool, "lctrl": bool,
                "shift": bool, "numlock": bool,
                "scrolllock": bool, "capslock": bool,
                "enhancedkey": bool
            }
        }
    },
    { # 缓冲区大小事件(最近一次发生的事件)
        "buffer": {
            "y": int, # 缓冲区 y 轴长度。从上到下
            "x": int # 缓冲区 x 轴长度。从左到右
        }
    }
]

更新日志

最近版本

  • v0.1.3 (2025-12-30):
    • 更改了函数conin返回值中keyboard事件中的键的顺序。
  • v0.1.2 (2025-12-29):
    • 新增了函数conin返回值中keyboard事件的keycode键。
  • v0.1.1 (2025-12-29):
    • 将函数conin面对keyboard事件的未知按键时的返回值由"unknown"更改为""

许可证

这是专有软件。请查看 LICENSE 文件了解详细条款。
重要: 使用本软件即表示您同意遵守许可证条款。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

conset-0.1.3.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

conset-0.1.3-py3-none-win_amd64.whl (25.9 kB view details)

Uploaded Python 3Windows x86-64

File details

Details for the file conset-0.1.3.tar.gz.

File metadata

  • Download URL: conset-0.1.3.tar.gz
  • Upload date:
  • Size: 27.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for conset-0.1.3.tar.gz
Algorithm Hash digest
SHA256 6d402eb60c2c510bcc7bf0658232f0b5a29d29408a8769fed2a580a7512b5e09
MD5 a8f816f2b1a1c5072c2785d1e7b7d7bc
BLAKE2b-256 4bb061ccf5d6850e9f331d147e8da5ed25cceceed68d9564ce0c89094b32bf56

See more details on using hashes here.

File details

Details for the file conset-0.1.3-py3-none-win_amd64.whl.

File metadata

  • Download URL: conset-0.1.3-py3-none-win_amd64.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for conset-0.1.3-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 124873ccf020948c6918d11dac8c4bae50fa023008987ebd7bb14df622f9113c
MD5 99cd490d9aac723c4fd89cf04009598f
BLAKE2b-256 7c324375c7b1ceebbf165ee521207fbe51cc27f154fc326e69a38e83fb214c52

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page