import configparser
import sys
def load_config(config_file):
"""Loads configuration from a file, suppressing errors."""
config = configparser.ConfigParser()
try:
config.read(config_file)
except Exception as e:
print(f"Error loading config file {config_file}: {e}", file=sys.stderr)
return None # Or raise, depending on desired behavior
return config
def get_config_value(config, section, key, default=None):
"""Retrieves a value from the config, returning a default if not found."""
try:
value = config[section][key]
return value
except KeyError:
return default
def main():
"""Main function to demonstrate configuration loading and usage."""
config_file = "config.ini" # Replace with your config file
config = load_config(config_file)
if config:
# Example usage:
db_host = get_config_value(config, "database", "host")
db_port = get_config_value(config, "database", "port", 5432) #default value
log_level = get_config_value(config, "logging", "level", "INFO")
print(f"Database Host: {db_host}")
print(f"Database Port: {db_port}")
print(f"Log Level: {log_level}")
if __name__ == "__main__":
main()
Add your comment