跳转到主要内容

逆向枚举。

项目描述

renumerate

逆向枚举。

概述

renumerate(sequence, start=len(sequence)-1, end=0)

返回一个 enumerate 对象。
sequence 必须是具有 __reversed__() 方法或支持序列协议的对象(具有 __len__() 方法和从0开始的整数参数的 __getitem__() 方法)。
renumerate() 返回的迭代器的 __next__() 方法返回一个包含计数(从 start,默认为 len(sequence) - 1 或结束于 end,默认为0 - 但两者不同)和从 sequence 反向迭代获得值的元组。

PyPI 记录.

文档.

使用方法

>>> from renumerate import renumerate
>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(renumerate(seasons))
[(3, 'Winter'), (2, 'Fall'), (1, 'Summer'), (0, 'Spring')]
>>> list(renumerate(seasons, start=4))
[(4, 'Winter'), (3, 'Fall'), (2, 'Summer'), (1, 'Spring')]
>>> list(renumerate(seasons, end=2))
[(5, 'Winter'), (4, 'Fall'), (3, 'Summer'), (2, 'Spring')]

等同于

def renumerate(sequence, start=None, end=None):
    if start is not None and end is not None:
        raise TypeError("renumerate() only accepts start argument or end argument"
                        " - not both.")
    if start is None: start = len(sequence) - 1
    if end   is None: end   = 0
    n = start + end
    for elem in reversed(sequence):
        yield n, elem
        n -= 1

安装

先决条件

要安装,请运行

python -m pip install --upgrade renumerate

开发

先决条件

  • 开发严格基于 tox。要安装它,请运行

    python -m pip install --upgrade tox

访问 开发页面

从源代码安装

克隆源代码

git clone https://github.com/karpierz/renumerate.git renumerate

然后运行

python -m pip install ./renumerate

或在开发模式下

python -m pip install --editable ./renumerate

许可协议

版权所有 (c) 2016-2024 Adam Karpierz
根据 zlib/libpng 许可证授权
请参阅附带的 LICENSE 文件。

作者

变更日志

1.2.0 (2024-09-30)

  • 放弃对 Python 3.8 的支持

  • 设置(依赖项)更新。

1.1.14 (2024-08-13)

  • 添加对 Python 3.13 的支持

  • 设置(依赖项)更新。

1.1.13 (2024-07-15)

  • 设置(依赖项)更新。

1.1.12 (2024-01-26)

  • 设置更新(现在基于 tox >= 4.0)。

  • 清理。

1.1.10 (2022-10-18)

  • tox 配置已移动到 pyproject.toml

1.1.9 (2022-08-22)

  • 设置更新。

1.1.8 (2022-07-24)

  • 添加对 Python 3.10 和 3.11 的支持

  • 设置更新(目前主要基于 pyproject.toml)。

1.1.7 (2022-01-10)

  • 放弃对 Python 3.6 的支持。

  • 更新版权年份。

  • 设置更新。

1.1.6 (2021-12-11)

  • 设置更新。

1.1.5 (2021-07-20)

  • 设置一般更新和改进。

1.1.4 (2020-10-18)

  • 放弃对 Python 3.5 的支持。

  • 添加单元测试。

  • 修复文档设置。

1.0.13 (2020-09-22)

  • 添加对 Python 3.8 和 3.9 的支持。

  • 放弃对 Python 3.4 的支持。

  • 设置:修复不正确的依赖项版本。

  • 设置一般更新和清理。

1.0.9 (2019-05-22)

  • 放弃对 Python 2 的支持。

1.0.8 (2019-05-21)

  • 更新所需的 setuptools 版本。

  • 设置更新和改进。

  • 这是支持 Python 2 的最新版本。

1.0.7 (2018-11-08)

  • 放弃对 Python 2.6 和 3.0-3.3 的支持。

  • 更新所需的 setuptools 版本。

1.0.6 (2018-05-08)

  • 修复描述中的错误。

  • 更新所需的 setuptools 版本。

  • 改进和简化设置和打包。

1.0.5 (2018-02-26)

  • 改进和简化设置和打包。

1.0.4 (2018-01-28)

  • 修复 tox.ini 中的错误和不一致。

  • 更新 README.rst。

1.0.1 (2018-01-24)

  • 更新所需的 Sphinx 版本。

  • 更新文档 Sphinx 配置文件。

1.0.0 (2017-11-18)

  • 设置改进。

  • 其他小改进。

1.0.0b1 (2017-11-18)

  • 小改进。

0.3.4 (2017-01-05)

  • 小的设置改进。

0.3.3 (2016-09-25)

  • 修复 setup.py 中的错误。

0.3.1 (2016-09-25)

  • 更符合 PEP8。

0.2.2 (2016-09-24)

  • 描述补充

  • 小修复。

0.1.1 (2016-09-24)

  • 第一个有用的版本。

0.0.2 (2016-09-23)

  • 初始版本。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分布

renumerate-1.2.0.zip (19.7 kB 查看哈希值)

上传时间 源代码

构建分布

renumerate-1.2.0-py3-none-any.whl (5.6 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面