Set type for datetime intervals
Martin A. Brown
martin at linux-ip.net
Mon Apr 4 11:46:52 EDT 2016
Greetings László,
>I need to compare sets of datetime intervals, and make set
>operations on them: intersect, union, difference etc. One element
>of a set would be an interval like this:
>
>element ::= (start_point_in_time, end_point_in_time)
>intervalset ::= { element1, element2, .... }
>
>Operations on elements:
>
>element1.intersect(element2)
>element1.union(element2)
>element1.minus(element2)
>
>Operations on sets:
>
>intervalset1.intersect(intervalset2)
>intervalset1.union(intervalset2)
>intervalset1.minus(intervalset2)
>
>Does anyone know a library that already implements these functions?
Sorry to be late to the party--I applaud that you have already
crafted something to attack your problem. When you first posted,
there was a library that was tickling my memory, but I could not
remember its (simple) name. It occurred to me this morning, after
you posted your new library:
https://pypi.python.org/pypi/intervaltree
This handles overlapping ranges nicely and provides some tools for
managing them. Before posting this, I checked that it works with
datetime types, and, unsurprisingly, it does.
Happy trails!
-Martin
--
Martin A. Brown
http://linux-ip.net/
More information about the Python-list
mailing list