【问题标题】:selectors equivalent for Python 2?与 Python 2 等效的选择器?
【发布时间】:2016-11-03 00:49:19
【问题描述】:

Python 3 有selectors 模块,它允许我们在文件描述符事件上register,然后只在代码的不同部分select 上。

在 Python 2 中,我们只有 select 模块,它要求我们在同一行上“注册”和“选择”,这是有限的。

如果我想在一个函数中注册一个事件并在另一个函数中等待它('select'),如何在 Python 2 中完成?

【问题讨论】:

    标签: python networking standard-library


    【解决方案1】:

    所以有两个库可以担任这个角色:selectors2selectors34。 它们非常相似,支持 Python 2.6+ 并且是选择器模块的直接替代品。但是,选择器2 集成了PEP 475,它在系统调用被中断时重试系统调用,并具有more robust battery of tests 以及在所有主要操作系统(Windows、Mac OS 和 Linux)上的 100% 测试覆盖率和自动化测试。

    安装模块:

    python -m pip install selectors2

    以下代码将在 Python 2.6+ 中运行

    try:
        import selectors
    except ImportError:
        import selectors2 as selectors
    

    免责声明:我是 selectors2 的作者。

    【讨论】:

    • 谢谢,我会去看看! :)
    • @AvivCohn 如果您有任何问题,请随时在 Github 上提出:)我会很快回复提及。
    猜你喜欢
    • 1970-01-01
    • 2019-12-03
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 1970-01-01
    • 1970-01-01
    • 2013-07-21
    • 1970-01-01
    相关资源
    最近更新 更多