-
Notifications
You must be signed in to change notification settings - Fork 685
Open
Description
Singleton pattern
config.py
from pathlib import Path
class Config:
def __init__(self, path, value):
self.path = path
self.value = value
config = Config(Path('/mnt'), 42)general.py
from config import config
def use_config():
content = (config.path / 'file').read_text()
...main.py
from config import config
from general import use_config
def main():
use_config()
print(f'config: {config.path}, {config.value}')
if name == '__main__':
main()Dependency injection
config.py
class Config:
def __init__(self, path, value):
self.path = path
self.value = valuegeneral.py
def use_config(config):
content = (config.path / 'file').read_text()
...main.py
from pathlib import Path
from config import Config
from general import use_config
def main():
config = Config(Path('/mnt'), 42)
use_config(config)
print(f'config: {config.path}, {config.value}')
if name == '__main__':
main()Metadata
Metadata
Assignees
Labels
No labels