为Python提供快速且内存高效的DAWG(DAFSA)
项目描述
DAWG
本包为Python(2.x和3.x)提供基于DAWG(DAFSA)的字典样式的只读对象。
DAWG中的字符串数据可能比标准Python字典少占用200倍内存,并且原始查找速度相当;它还提供了快速的高级方法,如前缀搜索。
许可
变更
0.8.0 (2020-02-19)
添加了对Python 3.8的支持
删除了对Python 3.2、3.3和3.4的支持
使用Cython 0.29.15重新构建了扩展
0.7.8 (2015-04-18)
添加了额外的类型注解,使代码运行更快;
删除了bitbucket上的mercurial镜像;
使用Cython 0.22重新构建了包装器。
0.7.7 (2014-11-19)
DAWG.b_prefixes 方法用于避免utf8编码/解码(感谢Ikuya Yamada);
使用Cython 0.21.1重新构建了包装器。
0.7.6 (2014-08-10)
使用Cython 0.20.2重新构建了包装器以修复一些问题。
0.7.5 (2014-06-05)
切换到setuptools;
上传了一些轮子到PyPI。
0.7.4 (2014-05-29)
修复了DAWG构建中的错误:输入应按其二进制表示进行排序。
0.7.3 (2014-05-29)
包装程序使用Cython 0.21dev重建;
验证了Python 3.4兼容性。
0.7.2 (2013-10-03)
has_keys_with_prefix(prefix) 方法(感谢 Matt Hickford)
0.7.1 (2013-05-25)
扩展程序使用Cython 0.19.1重建;
修复了从错误加载的DAWG中查找时发生的段错误(感谢Alex Moiseenko)。
0.7 (2013-04-05)
IntCompletionDAWG
0.6.1 (2013-03-23)
修复了LC_ALL=C环境中的安装问题;
PyPy不再官方支持(使用DAWG-Python与PyPy)。
0.6 (2013-03-22)
修复了许多线程安全错误(但牺牲了库的运行速度)。
0.5.5 (2013-02-19)
修复了PyPy下的安装(注意:在PyPy下DAWG运行较慢,可能存在错误)。
0.5.4 (2013-02-14)
对文档字符串进行了一些小调整;
使用Cython 0.18重新构建了扩展程序。
0.5.3 (2013-01-03)
对.compile_replaces方法进行了小的改进;
对.similar_items方法进行了基准测试;
使用Cython pre-0.18重新构建了扩展程序;这使得.prefixes和.iterprefixes方法运行更快(在某些情况下可达6倍)。
0.5.2 (2013-01-02)
测试被包含在源分发中;
由于我损坏的(慢速的)Python 3.2安装,README中的基准测试结果不具有代表性;
在Python 3.x和LC_ALL=C下修复了安装(感谢Jakub Wilk)。
0.5.1 (2012-10-11)
在构建DAWG时提供了更好的错误报告;
对于零字节的键,修复了__contains__;
创建了dawg.Error异常类;
如果某些键包含不支持的字符,则构建BytesDAWG和RecordDAWG失败,而不是产生错误的结果。
0.5 (2012-10-08)
本版本中,为了提供项目的字母顺序,改变了BytesDAWG和RecordDAWG的存储方案。
这是一个不兼容的版本。为了读取使用DAWG先前版本创建的BytesDAWG或RecordDAWG,请使用构造函数参数payload_separator。
>>> BytesDAWG(payload_separator=b'\xff').load('old.dawg')
0.4.1 (2012-10-01)
通过更新dawgdic到最新的svn,修复了空DAWG的段错误。
0.4 (2012-09-26)
iterkeys、iteritems和iterprefixes方法(感谢Dan Blanchard)。
0.3.2 (2012-09-24)
用于查找给定键所有前缀的prefixes方法。
0.3.1 (2012-09-20)
捆绑的dawgdic C++库更新到最新版本。
0.3 (2012-09-13)
提供了更宽松的查找方法的similar_keys、similar_items和similar_item_values方法(例如,它们可能用于处理元音符号);
load方法返回self;
支持Python 3.3。
0.2 (2012-09-08)
使用load方法加载的DAWG的内存使用量得到显著提高。
由于包装器中存在某个地方的错误,使用read()方法或反序列化的DAWG使用的内存比使用load()方法加载的DAWG多3-4倍。本版本中已修复load(),但其他方法尚未修复。
0.1 (2012-09-08)
首次发布。
项目详情
DAWG-0.8.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 34881e06278d4a54cf0b402c0c8b587bef0caa78f0eee595adc7a2aa530e48ce |
|
MD5 | 3495eaa28c5ff7d148f0303139d547bf |
|
BLAKE2b-256 | b8ef91b619a399685f7a0a95a03628006ba814d96293bbbbed234ee66fbdefd9 |
DAWG-0.8.0-cp38-cp38-macosx_10_14_x86_64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 73760ad1272b1b47997f1a768b8f3bf547c92475bcd62185f4ab7e1bc691964e |
|
MD5 | 2d788d3814d32eb3d848247d1b7e896a |
|
BLAKE2b-256 | 79a9dc7fc26e02b31f04c9840fd36dd6e7ac83975e7e42a10c5d299fd82a8c99 |
DAWG-0.8.0-cp37-cp37m-macosx_10_14_x86_64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fb90b799fb7d6d728531840529c812a9ee17736da71e8a596ede8bfd6c62bf36 |
|
MD5 | f10d44ba7d96c9b2ba4f80545e29ad41 |
|
BLAKE2b-256 | 9a2a64784affd4e3ebcc0456a420ad6ea625ac46bbeb47fa60c38ed2299a8fcc |
DAWG-0.8.0-cp36-cp36m-macosx_10_14_x86_64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 83ce4a73f7632b0ed31af16c2750533ecbed347bad1148a52f6436e348b5b7ac |
|
MD5 | 5d2ec4bf38f7ce4379dee928585f0a54 |
|
BLAKE2b-256 | 4aa09adce6a97048c8e6f91789c3e553a22e1244cfabddf5867a8129435db97b |
DAWG-0.8.0-cp35-cp35m-macosx_10_14_x86_64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7aecc4c89243edaf1efe7a4d769d993a7cd9307a8a04f48e07c4fc7c44bdd38f |
|
MD5 | fb1772c59dfcc4c5274cb255f59ea12f |
|
BLAKE2b-256 | 658676d5466d50107fa66cc2cf287dcd25297f15b649186d4b6d08fde37d69f8 |