Skip to main content

timestamp with a list (created by auxilium)

Project description

logo.png

Python Project tslist

GitHubWorkflow Read the Docs GitHub GitHub release PyPI Version PyPI - Python Version PyPI Downloads

Introduction

To import the project simply type

>>> import tslist

after installation.

The TS filtered list enhances the standard list by filtering the list by slices of types T differing from int in which (before comparision) any item x is converted to type T by calling T(x)

>>> from tslist import TSList
>>> l = 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9
>>> tsl = TSList(l)
>>> tsl
TSList([1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9])
>>> tsl[1.0:1.3]  # filter all items between 1.0 (included) and 1.3 (excluded)
TSList([1.0, 1.1, 1.2])
>>> tsl[1.0:1.31]
TSList([1.0, 1.1, 1.2, 1.3])
>>> tsl[1.1]  # filter all items at 1.1
TSList([1.1])
>>> tsl.append(1.1)
>>> tsl[1.1]
TSList([1.1, 1.1])

This becomes even more handy if list items admit conversions.

>>> from datetime import timedelta, datetime
>>> from tslist import TS
>>> class Timedelta(timedelta):
...     def __float__(self):
...         return self.total_seconds()
...
...     def __ts__(self):
...         # used for conversion using tslist.TS
...         return datetime(2000, 1, 1) + self
>>> l = [Timedelta(d) for d in range(10, 15)]
>>> tsl = TSList(l)
>>> tsl
TSList(
[ Timedelta(days=10),
  Timedelta(days=11),
  Timedelta(days=12),
  Timedelta(days=13),
  Timedelta(days=14)]
)
>>> list(map(float, tsl))
[864000.0, 950400.0, 1036800.0, 1123200.0, 1209600.0]
>>> tsl[950400.:1209600.:2]
TSList([Timedelta(days=11), Timedelta(days=13)])
>>> list(map(TS, tsl))
[TS(20000111), TS(20000112), TS(20000113), TS(20000114), TS(20000115)]
>>> tsl[TS(20000112):TS(20000114)]
TSList([Timedelta(days=11), Timedelta(days=12)])

See TS() for more detail on timestamp and datetime conversion.

Documentation

More docs can be found on https://tslist.readthedocs.io

Install

The latest stable version can always be installed or updated via pip:

$ pip install tslist

License

Code and documentation are available according to the license (see LICENSE file in repository).

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

tslist-0.3.3.zip (28.0 kB view details)

Uploaded Source

File details

Details for the file tslist-0.3.3.zip.

File metadata

  • Download URL: tslist-0.3.3.zip
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for tslist-0.3.3.zip
Algorithm Hash digest
SHA256 8ef106972bb04f4563974854867caa2fec39610fcc409b16b93c5e15a39155bf
MD5 9a73bf3f2fdc1af85b7f7e36319d1f43
BLAKE2b-256 55306fe597afeffeb5f14972c8e06bf548bcb171f6968ba8fd271408fd4e08d6

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