来自 arg 和环境的参数
项目描述
Arg 猫包
这是一个用于从 args 和 env 读取参数的包。
如何使用
argcat.add_key("env")
这将找到 args-e或--env,或找到 environment ENV。
- 只读取 arg:
argcat.from_arg() - 只读环境:
argcat.from_environ() - 读取 arg 和环境:
argcat.from_arg_and_environ() - 删除参数:
argcat.remove("env")
例子
from arg_cat import ArgCat
argcat = ArgCat()
argcat.add_key("env")
argcat.add_key("release", is_a_bool=True)
argcat.add_key("some_path", is_a_path=True)
argcat.from_arg_and_environ(environ_override_all=False)
print(f'env: {argcat.get_string("env")}')
print(f'release: {argcat.get_bool("release")}')
print(f'some_path: {argcat.get_string("some_path")}')
- 此示例将获得 3 个参数
env,release和some_path。 - ArgCat 将在 args 中找到 env 的
-e或。--env - ArgCat 会在 args 中找到
-r或--release释放。 - ArgCat 将在 args 中查找
-ssome_path--some_path。 - ArgCat 将
ENV在 env 环境中找到。 - ArgCat 将
RELEASE在环境中找到释放。 - ArgCat 将
SOME_PATH在 some_path 的环境中找到。 from_arg_and_environ将首先使用环境,然后使用 args 值覆盖这些值。有时,您可能希望使用环境值来覆盖 args 值,您应该environ_override_all让Ture.environ_override_all默认值为False.- 运行它会像:
python3 demo.py --env dev -r -s ./this/is/path
情况一
environ_override_all=False
环境:
ENV=this is from env
RELEASE=False
参数:
--env "from arg" -s ./hello
结果:
env: from arg
release: False
some_path: YOUR_WORK_PATH/./hello
情况2
environ_override_all=True
环境:
ENV=this is from env
RELEASE=False
参数:
--env "from arg" -s ./hello
结果:
env: this is from env
release: False
some_path: YOUR_WORK_PATH/./hello
同步文件
默认情况下,我们使用./params.jsonfile 作为 params 文件。
sync_from_file将删除所有存在的值,并加载这些 params json 文件的值。
argcat = ArgCat(params_file='YOUR_CUSTOM_PARAMS_FILE.json')
argcat.sync_to_file()
argcat.sync_from_file()
业主须知
建造
python -m build
发布测试
python3 -m twine upload --repository testpypi dist/*
发布到发布
python3 -m twine upload dist/*
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
arg_cat-1.0.4.tar.gz
(4.7 kB
查看哈希)
内置分布
arg_cat-1.0.4-py3-none-any.whl
(4.8 kB
查看哈希)