Skip to main content

Get non-string values from environment variables.

Project description

Typed environment variables

This module implements the mundane task of getting typed values from environment variables.

Copyright ® 2020-2025, Luís Gomes luismsgomes@gmail.com. All rights reserved.

Links: https://github.com/luismsgomes/envil | https://pypi.org/project/envil/

Usage

Assuming your environment has two variables set as follows (bash syntax):

export FOO=123
export BAR=y

Then, you may access them in Python code as follows:

import envil as env

foo = env.get_int("FOO", 0)
bar = env.get_bool("BAR", False)

The set of strings considered to be falsy values for boolean variables are specified in envil.FALSY_VALUES:

>>> print(repr(envil.FALSY_VALUES))
{"0", "false", "f", "no", "n"}

If needed you may override this list with your own, as in this example:

bar = env.get_bool("BAR", falsy_strings={"nope", "zilch", "zero", "nada"})

The second argument is the default value to be returned if the variable is not defined. If not specified, this argument will default to envil.RAISE, which will cause an EnvironmentVariableNotSet exception to be raised if the variable is not defined.

Note that, unlike in Python's getenv(), you may specify None as a valid default value.

License

This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more details.

You should have received a copy of the GNU General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

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

envil-0.4.1.tar.gz (14.8 kB view details)

Uploaded Source

File details

Details for the file envil-0.4.1.tar.gz.

File metadata

  • Download URL: envil-0.4.1.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for envil-0.4.1.tar.gz
Algorithm Hash digest
SHA256 ba42b3b7dc0f8c4db7a5faf878ea58674a1eefbf49046e7d5f392fa8ab4250cd
MD5 1fb867397209c570943902554221459d
BLAKE2b-256 10b72d45b20d06240a46603caa93249d912cb85da5ce84370d905a17536664d9

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