Create, update, and remove values from a configuration file made by ConfigHandler.
Project description
ConfigHandler
Description
Create, update, and remove values from a configuration file made by ConfigHandler.
- Simple Mode: Store simple data (e.g., version, program statistics, etc.) in a single file.
- Advanced Mode: Store configuration data using JSON data format. Supports metadata, encryption, and compression.
Installation
- via pip:
pip install py-config-handler
- as a Git submodule:
git submodule add https://github.com/Chris1320/ConfigHandler-python.git
Usage
Simple Mode
[QuickStart] Creating a New Configuration File
from config_handler.simple import Simple
config = Simple("config.ini")
# Create a new configuration file by assigning key-value pair.
config.set("foo", "bar") # "foo" is the key, "bar" is the value.
config.set("nums", 123)
config.set("dec", 3.14)
config.set("Aboolean", True)
config.set("unintentional variable!", "unintentional value.")
# Remove values
config.remove("unintentional variable!")
config.save() # Save the data to the file.
[QuickStart] Loading an Existing Configuration File
from config_handler.simple import Simple
config = Simple("config.ini")
# Load the data from the file.
config.load()
# Get values from the loaded data.
config.get("foo") # "foo" is the key.
# Change value of a key.
config.set("foo", "barred")
# Add a new key-value pair.
config.set("new_key", "new_value")
# Encode configuration file to Base64.
config.isbase64 = True
# Save changes
config.save()
A key can be any string, but must not start with a #
, include a =
, or include a \n
.
A value can by any string, integer, or float.
Advanced Mode
[QuickStart] Creating a New Configuration File
from config_handler.advanced import Advanced
config = Advanced("config.ini", "p4ssw0rd") # Password is required when encryption is not None.
config.new(
name="Advanced Mode Test",
author="Chris1320",
compression="zlib",
encryption="aes256"
)
# Create a new configuration file by assigning key-value pair.
config.set("foo", "bar") # "foo" is the key, "bar" is the value.
config.set("nums", 123)
config.set("dec", 3.14)
config.set("Aboolean", True)
config.set("unintentional variable!", "unintentional value.")
# Remove values
config.remove("unintentional variable!")
config.save() # Save the data to the file.
[QuickStart] Loading an Existing Configuration File
from config_handler.advanced import Advanced
config = Advanced("config.ini", "p4ssw0rd") # Password is required when encryption is not None.
# Load the data from the file.
config.load()
# Get values from the loaded data.
config.get("foo") # "foo" is the key.
# Change value of a key.
config.set("foo", "barred")
# Add a new key-value pair.
config.set("new_key", "new_value")
# Encode configuration file to Base64.
config.metadata() # Get metadata of the configuration file.
# Save changes
config.save()
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
py-config-handler-1.0.1.tar.gz
(11.8 kB
view hashes)
Built Distribution
Close
Hashes for py_config_handler-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 89f8cc93a7696980a9c55df5b7e20493857d3725ea0d36d6844e90044bceb910 |
|
MD5 | 38f06cdc7af9dcc21667a72f372601a4 |
|
BLAKE2b-256 | 34c8100a76693a113ee98f9f90a58fb9af9cd0cfeb47ffd54342028ff1c90c61 |