Skip to main content

Sharing global variables between modules in a Python application

Project description

app_global

From docs.python.org:

"The canonical way to share information across modules within a single program is to create a special module (often called config or cfg). Just import the config module in all modules of your application; the module then becomes available as a global name. Because there is only one instance of each module, any changes made to the module object get reflected everywhere. For example:"


See /Example/app_global_test for an illustration that can be run in VSCode


Although not illustrated, it is recommended to categorize data within the app globals to keep organized and thus reduce possiblity obscure failure:

  • config.C - For global constants
  • config.G - For global application state like DB connections, caches etc.
  • config.opts - Application options
  • config.log - Application logger
  • config.printCli - Common print cli handler for clean exit during initialization

As with any global data, care should be taken when using from within any multi threading applications. Use appropriate locking mechanisms as required.


Besides improving documentation, the main source config.py will be left as an empty source file so that is infinitely flexible

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

app_global-1.0.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

app_global-1.0.0-py3-none-any.whl (3.0 kB view details)

Uploaded Python 3

File details

Details for the file app_global-1.0.0.tar.gz.

File metadata

  • Download URL: app_global-1.0.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.7.9 Linux/5.15.0-1035-oracle

File hashes

Hashes for app_global-1.0.0.tar.gz
Algorithm Hash digest
SHA256 605461af1ce1ebb92f61fc6d44fd01ec9ccabf52ee734111f8435be05b8cced4
MD5 2033afc3e5849bd318a2e8157a0bac83
BLAKE2b-256 46e33ca1095c4e0c2b503eb13942dd44ab91cc68f2e0507a87817e9e3777e889

See more details on using hashes here.

File details

Details for the file app_global-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: app_global-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 3.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.7.9 Linux/5.15.0-1035-oracle

File hashes

Hashes for app_global-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a043e89a8a198ffeee1e3f76514e27444566f52a49307c60079c06e8b660f31d
MD5 1c9c251914f7254f9adc68345de243cf
BLAKE2b-256 dd766f060e89982f57d83b3dcb80071b4a19e5091f916806ebaff5a4a91319fb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page