etils1.13.0
etils1.13.0
Published
Collection of common python utils
pip install etils
Package Downloads
Authors
Project URLs
Requires Python
>=3.10
Dependencies
- etils
[array-types]; extra == "all" - etils
[eapp]; extra == "all" - etils
[ecolab]; extra == "all" - etils
[edc]; extra == "all" - etils
[enp]; extra == "all" - etils
[epath]; extra == "all" - etils
[epath-gcs]; extra == "all" - etils
[epath-s3]; extra == "all" - etils
[epy]; extra == "all" - etils
[etqdm]; extra == "all" - etils
[etree]; extra == "all" - etils
[etree-dm]; extra == "all" - etils
[etree-jax]; extra == "all" - etils
[etree-tf]; extra == "all" - etils
[enp]; extra == "array-types" - pytest
; extra == "dev" - pytest-subtests
; extra == "dev" - pytest-xdist
; extra == "dev" - pyink
; extra == "dev" - pylint
>=2.6.0; extra == "dev" - chex
; extra == "dev" - fiddle
; extra == "dev" - torch
; extra == "dev" - optree
; extra == "dev" - tensorflow_datasets
; extra == "dev" - pydantic
; extra == "dev" - sphinx-apitree
[ext]; extra == "docs" - etils
[all,dev]; extra == "docs" - absl-py
; extra == "eapp" - simple_parsing
; extra == "eapp" - etils
[epy]; extra == "eapp" - jupyter
; extra == "ecolab" - numpy
; extra == "ecolab" - mediapy
; extra == "ecolab" - packaging
; extra == "ecolab" - protobuf
; extra == "ecolab" - etils
[enp]; extra == "ecolab" - etils
[epy]; extra == "ecolab" - etils
[etree]; extra == "ecolab" - etils
[epy]; extra == "edc" - numpy
; extra == "enp" - einops
; extra == "enp" - etils
[epy]; extra == "enp" - fsspec
; extra == "epath" - importlib_resources
; extra == "epath" - typing_extensions
; extra == "epath" - zipp
; extra == "epath" - etils
[epy]; extra == "epath" - gcsfs
; extra == "epath-gcs" - etils
[epath]; extra == "epath-gcs" - s3fs
; extra == "epath-s3" - etils
[epath]; extra == "epath-s3" - typing_extensions
; extra == "epy" - absl-py
; extra == "etqdm" - tqdm
; extra == "etqdm" - etils
[epy]; extra == "etqdm" - etils
[array-types]; extra == "etree" - etils
[epy]; extra == "etree" - etils
[enp]; extra == "etree" - etils
[etqdm]; extra == "etree" - dm-tree
; extra == "etree-dm" - etils
[etree]; extra == "etree-dm" - jax
[cpu]; extra == "etree-jax" - etils
[etree]; extra == "etree-jax" - tensorflow
; extra == "etree-tf" - etils
[etree]; extra == "etree-tf" - etils
[ecolab]; extra == "lazy-imports"
Etils
etils (eclectic utils) is an open-source collection of utils for python.
Each top-level submodule is a self-contained independent module (with its
own BUILD rule), meant to be imported individually. To avoid collisions with
other modules/variables, module names are prefixed by e (arbitrary
convention):
from etils import epath # Path utils
from etils import epy # Python utils
from etils import ejax # Jax utils
...
Becauses each module is independent, only the minimal required libraries are
imported (for example, importing epy won't suffer the cost of importing TF,
jax,...)
Documentation
etils.epath: pathlib-like API forgs://,s3://,...etils.etree: Tree utils fortf.nest,jax.tree_utils, DeepMindtree.etils.enp: Numpy utils.etils.ecolab: Colab utils.etils.array_types: Typing annotations for jax, numpy,... arraysetils.edc: Dataclasses utils.etils.epy: Collection of generic python utils.etils.eapp: Absl flags/app utils.- API design guide.
Installation
Because each module is independent and require different dependencies, you can select which modules deps to install:
pip install etils[array_types,epath,epy]
This is not an official Google product.