Pyhton is notoriously not secure by default. However, it is still possible to generate a level of security through name mangling and other means. This article explains how to use name mangling, the singleton pattern, and class methods to create more secure access to configuration in Python3.
Singleton and Class Methods
Setting up a singleton in Python is simple:
class ChatConfig(): __config = None class __Config: def __init__(self, config): self.config = config @classmethod def set_config(cls, config): if cls.__config is None: cls.__config = config @classmethod def get_config(cls): return cls.__config
The internal class and variable are mangled so as to make the variable itself private. This allows a single configuration to exist across the different packages while keeping the internal variable private and allowing for the variable to be set only once.
Python is not entirely insecure. It only takes code. This article offers an example of a way to set a variable once and share the setup among multiple packages.