Metadata-Version: 2.5
Name: iiconf
Version: 0.0.4
Summary: 把 INI 与 .env 文本解析成普通字典。
Project-URL: Homepage, https://pypi.org/project/iiconf/
Author-email: lqxnjk <lqxnjk@qq.com>
License: MIT
License-File: LICENSE
Keywords: config,dotenv,env,ini,settings
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# iiconf

[English](#english) | 中文

把 INI 与 .env 文本解析成普通字典。

## 安装

```console
pip install iiconf
```

## 用法

```python
from iiconf import load_config, parse_env, parse_ini

parse_env('''
# 本地设置
export HOST=localhost
PORT=5432
MOTTO="hello # 不是注释"
''')
# {'HOST': 'localhost', 'PORT': '5432', 'MOTTO': 'hello # 不是注释'}

parse_ini('''
key = v0
[db]
host = localhost
port: 5432
''')
# {'': {'key': 'v0'}, 'db': {'host': 'localhost', 'port': '5432'}}

load_config("settings.ini")
```

## 说明

没有类、没有全局状态、不改环境变量。值一律保持字符串——猜测 `"0123"` 是数字还是编号，正是前导零丢失的起点。`${X}` **不做替换**，保持字面量；无法解析的行抛 `ValueError`。

## 许可证

MIT

---

<a id="english"></a>
## English

Parse INI and .env text into plain dictionaries.

## Install

```console
pip install iiconf
```

## Usage

```python
from iiconf import load_config, parse_env, parse_ini

parse_env('''
# 本地设置
export HOST=localhost
PORT=5432
MOTTO="hello # 不是注释"
''')
# {'HOST': 'localhost', 'PORT': '5432', 'MOTTO': 'hello # 不是注释'}

parse_ini('''
key = v0
[db]
host = localhost
port: 5432
''')
# {'': {'key': 'v0'}, 'db': {'host': 'localhost', 'port': '5432'}}

load_config("settings.ini")
```

## Notes

No classes, no global state, no environment mutation. Values stay strings on purpose: guessing whether `"0123"` is a number or an ID is how leading zeros get lost. `${X}` is not substituted. An unparseable line raises `ValueError`.

## License

MIT
