Augmented python configparser
Project description
jconfigparser
jconfigparser is an extension of the python configparser standard module which adds the following features inspired by TOML:
- Section name depth with dot notation:
[a.b] - Values on right hand side can be everything that is understood by JSON.
- Values that appear twice or more often are stored as a
list, see exampleoutputbelow (this behavior is configurable).
Example
Say we have the following configuration file in test.jconf:
[atoms]
file: geometry.in
format: aims
[calculator.aims]
xc: pbesol
charge_mix_param: 0.3
sc_accuracy_rho: 1e-6
output: band 0 0 0 0.00 0.25 0.25 50 Gamma Delta
output: band 0.00 0.25 0.25 0 0.5 0.5 50 Delta X
[calculator.socketio]
port: null
[basissets.aims]
default: light
This file can be parsed with
import jconfigparser as jc
config = jc.Config('test.jconf')
config will be a modified dict that hold the information like
{
"atoms": {"file": "geometry.in", "format": "aims"},
"calculator": {
"aims": {
"xc": "pbesol",
"charge_mix_param": 0.3,
"sc_accuracy_rho": 1e-06,
"output": [
"band 0 0 0 0.00 0.25 0.25 50 Gamma Delta",
"band 0.00 0.25 0.25 0 0.5 0.5 50 Delta X",
],
},
"socketio": {"port": None},
},
"basissets": {"aims": {"default": "light"}},
}
Furthermore, config supports
- Attribute access, e.g.,
config.atoms.file - Write itself:
config.write("new.jconf")
Changelog
- v0.1.3: per default, use case-sensitive keys
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jconfigparser-0.1.3.tar.gz.
File metadata
- Download URL: jconfigparser-0.1.3.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.9 CPython/3.8.1 Linux/4.15.0-122-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
87639f3fa31d95829e4925c2001209cf5d7e84817970a461e552bf43d9d23883
|
|
| MD5 |
fbe2073629b8ac43d96b454fe7213aff
|
|
| BLAKE2b-256 |
b8051579e43f234048bb40bffb978ef1f3e525a85181c0f2947e896b390b6144
|
File details
Details for the file jconfigparser-0.1.3-py3-none-any.whl.
File metadata
- Download URL: jconfigparser-0.1.3-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.9 CPython/3.8.1 Linux/4.15.0-122-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
910b1b7b97708bc7f2996fb29c4d26ea8147cbdc4f31aaaa1d552f536d97139d
|
|
| MD5 |
4eec00f38fe6ad5953d8705775083a2a
|
|
| BLAKE2b-256 |
03087bdf6208516ca96edaf65edf11f936687677ecbf5fb36a11941b71310b49
|