Skip to main content

A Range is an object resembling a set but optimised for contiguous ranges of int members.

Latest release 20230619:

  • Span: sanity check .start and .end.
  • Range.issubset: efficient comparison with another Range, also .issuperset.

Function overlap(span1, span2)

Return a list [start,end] denoting the overlap of two spans.

Example:

>>> overlap([1,9], [5,13])
[5, 9]

Class Range

A collection of ints that collates adjacent ints.

The interface is as for a set with additional methods:

  • spans(): return an iterable of Spans, with .start included in each Span and .end just beyond

Additionally, the update/remove/etc methods have a secondary calling signature: (start,end), which is the same as passing in Range(start,end) but much more efficient.

Method Range.__init__(self, start=None, end=None, debug=None): Initialise the Range.

Called with start and end, these specify the initial Span of the Range. If called with just one argument that argument instead be an iterable of integer values comprising the values in the Range.

Class Span(Span, builtins.tuple)

A namedtuple with .start and .end attributes.

Function spans(items)

Return an iterable of Spans for all contiguous sequences in items.

Example:

>>> list(spans([1,2,3,7,8,11,5]))
[1:4, 7:9, 11:12, 5:6]

Release Log

Release 20230619:

  • Span: sanity check .start and .end.
  • Range.issubset: efficient comparison with another Range, also .issuperset.

Release 20230518: Span,Range: new as_list() methods.

Release 20190102: Span: provide len.

Release 20171231:

  • Add Range.span0, returning the first Span.
  • Implement bool and__nonzero__.
  • Accept a Span in contains.
  • Some small bugfixes.

Release 20160828:

  • Add Range.start like existing Range.end.
  • Use "install_requires" instead of "requires" in DISTINFO.
  • Small bugfix.

Release 20150116: First PyPI release.

Metadata

Release files for cs.range 20230619

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cs.range 20230619
File Size Uploaded Provenance Actions
cs.range-20230619.tar.gz 8.3 kB Without provenance Details for cs.range-20230619.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for cs.range 20230619
File Interpreter ABI Platform Actions
cs.range-20230619-py3-none-any.whl Python 3 none any Details for cs.range-20230619-py3-none-any.whl

Total release size: 15.7 kB

Release files / cs.range-20230619.tar.gz

Download URL cs.range-20230619.tar.gz
Size 8.3 kB
Tags Source
SHA-256 checksum
How to use checksums
baabdca34638a14dd3b31fe4cee6c0f48994bb01e3d1136385dee3ad3d8ab7e6
BLAKE2b-256 checksum
How to use checksums
2c2f699f536de8e135addf8b1e68e7b3beaf9c0584e2e8f49a693544216bc014
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Release files / cs.range-20230619-py3-none-any.whl

Download URL cs.range-20230619-py3-none-any.whl
Size 7.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d5c0bc24a3f514b889f920dd1ebbe473e2826ca557180a6d10e5255fefcc91dd
BLAKE2b-256 checksum
How to use checksums
6275194cb58f6277b2694845da9f47172f478857b3d71420ecd5d677808a1ac8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Security for cs.range 20230619

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page