简单地将字典和对象API合并的类
项目描述
简单的Python类,用于合并字典和对象API
这些命名空间对象的工作方式类似于JavaScript对象。旨在帮助处理深层JSON对象,并在您的代码中节省大量的[‘’]
用法
from dictns import Namespace
n = Namespace(dict(a=1, b=3, c=dict(d=4)))
assert(n['a'] == n.a)
assert(n['c']['d'] == n.c.d)
您可以在命名空间内包装dict和list
n = Namespace([dict(a=1, b=3, c=[dict(d=4)])])
assert(n[0]['a'] == n[0].a)
assert(n[0]['c'][0]['d'] == n[0].c[0].d)
您还可以包装dict子类,如OrderedDict,但生成的命名空间不继承原始对象特征(即OrderedDict中的顺序)
请参阅单元测试以获取更多用法示例
变更日志
1.0:初始版本
1.1:添加命名空间比较工具
1.2:命名空间现在支持作为输入的dict和list子类
- 1.3:
修复与getattr()内置方法的兼容性问题。当请求无效键时,现在会引发AttributeError而不是KeyError。
允许无参数初始化:Namespace()等价于Namespace({})。
1.4:允许命名空间对象被弱引用
- 1.5:
修复3.5和pypy的测试
清理README
开发
启动单元测试
python test/test_namespace.py
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。
源分发
dictns-1.5.tar.gz (5.2 kB 查看哈希值)
构建分发版
dictns-1.5-py2.py3-none-any.whl (5.5 kB 查看哈希值)
关闭
dictns-1.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 87ca212898db93164fcaa2fcff968563ba8da599cc136c85a0d6aee8867d2ec5 |
|
MD5 | 4676ef3e35388529306920cebb59c090 |
|
BLAKE2b-256 | 902f2bb7f17294e33b5b3aad6f5a413894f70c020c44a539b50df23e87686ca6 |
关闭
dictns-1.5-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0af65dc05cc99a714ad1e26bfd6bf2fd869c7b95fdbc34d6a4eca38f9cf82707 |
|
MD5 | c4288e05fa15715e366f021e72a12e69 |
|
BLAKE2b-256 | e8e70b105a1814d80244e5d9b5ee1d54ccf59cb3f2d3df6b27815158e3771744 |