Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

Easy settings for Python projects

Project Description

This module provides a spy object that resolves an attribute by searching sequentially in following places:

  1. manually set settings
  2. settings catalog
  3. user-provided settings module
  4. manually set fallbacks


  1. Manally set settings:

from settingspy import spy spy[‘this_is_int’] = 123 spy[‘this_is_str’] = ‘string’ print(spy.this_is_int, spy.this_is_str)

  1. Settings catalog

Inside the directory specified by the SETTINGSPY_CATALOG environment variable, a file named something may exist with the desired value. File contents are restricted to booleans, integers, floats, strings. They are parsed as if eval()ed, so strings should be wrapped in parentheses.

$ echo 123 > “$SETTINGSPY_CATALOG/this_is_int” $ echo “‘string’” > “$SETTINGSPY_CATALOG/this_is_str”

  1. User provided settings module

in file this_is_int = 123 this_is_str = ‘string’

import os; os.environ[‘SETTINGSPY_MODULE’] = ‘mysettings’ from settingspy import spy; print(spy.this_is_int, spy.this_is_str)

  1. Manually set fallbacks

In case a setting attribute isn’t defined anywhere else.

from settingspy import spy spy.setfallback(‘this_is_int’, 123) spy.setfallback(‘this_is_str’, ‘string’)

For more details see the source code at

Release history Release notifications

This version
History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
settingspy-1.1.2.tar.gz (2.7 kB) Copy SHA256 hash SHA256 Source None Oct 23, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page