DAWG-Python
Pure-python reader for DAWGs (DAFSAs) created by dawgdic C++ library or DAWG Python extension.
Decision gist · record as of 2026-08-14
Yes, if you have pre-built DAWG files and need pure-Python access without C extensions. No, if you need active maintenance or Python 3.5+ support—the package is dormant and classifiers only declare support through Python 3.4. Suitable for legacy systems or PyPy-based deployments where the DAWG format is already in use.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a pre-built DAWG file created by the dawgdic C++ library or DAWG Python package; this package cannot create DAWGs from scratch.
- No runtime dependencies and low install friction.
- The package is dormant (last release 2015-04-18, last commit 2023-09-11), so expect no active maintenance or updates for modern Python versions.
License · maintenance · safety
UNKNOWN (permissive) — Licensed under MIT, a permissive open-source license with no restrictions on commercial or private use.
last release 2015-04-18 (4136 days) · last repo commit 2023-09-11 · 50 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 219,943 downloads/mo, #9,318 on PyPI
Alternatives
Verify before relying
import dawg_python
d = dawg_python.DAWG().load('words.dawg')
if 'hello' in d:
print(d['hello'])- Whether the package works reliably with Python versions beyond 3.4 (classifiers list only up to 3.4)
- Current compatibility with modern PyPy versions (benchmarks reference PyPy 1.9 from ~2012)
- Whether DAWG files created by recent versions of the dawgdic library remain compatible
What it is and what it does
DAWG-Python is a pure-Python reader for DAWG (Directed Acyclic Word Graph) files, a space-efficient data structure for storing and querying large sets of strings with common prefixes. It cannot create DAWGs itself; instead, it reads files built by the dawgdic C++ library or the DAWG Python extension module. The main value proposition is providing DAWG access without requiring compiled extensions, making it portable and fast under PyPy.
The package implements several DAWG variants (DAWG, BytesDAWG, RecordDAWG, IntDAWG, IntCompletionDAWG) and supports operations like membership testing, prefix enumeration, and key/value iteration. It is API-compatible with the DAWG package where possible. Performance under CPython is significantly slower than native implementations, but PyPy execution is competitive for many workloads.
Use it for
- Load pre-built DAWG files for fast prefix-based lookups in spell-checking or autocomplete systems
- Query large word lists or dictionaries without the overhead of compiled C extensions
- Integrate DAWG-based data structures into pure-Python applications that must run on restricted or portable environments
- Enumerate all words matching a prefix in linguistic or NLP pipelines
- Use PyPy to accelerate DAWG queries in performance-sensitive code paths
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you have pre-built DAWG files and need pure-Python access without C extensions.
No, if you need active maintenance or Python 3.5+ support—the package is dormant and classifiers only declare support through Python 3.4. Suitable for legacy systems or PyPy-based deployments where the DAWG format is already in use.
Install
dawg-python on PyPI
Before you install
No runtime dependencies and low install friction. The package is dormant (last release 2015-04-18, last commit 2023-09-11), so expect no active maintenance or updates for modern Python versions.
Requires a pre-built DAWG file created by the dawgdic C++ library or DAWG Python package; this package cannot create DAWGs from scratch.
License in practice
Licensed under MIT, a permissive open-source license with no restrictions on commercial or private use.
Quickstart
import dawg_python
d = dawg_python.DAWG().load('words.dawg')
if 'hello' in d:
print(d['hello'])
Verify before relying
- Whether the package works reliably with Python versions beyond 3.4 (classifiers list only up to 3.4)
- Current compatibility with modern PyPy versions (benchmarks reference PyPy 1.9 from ~2012)
- Whether DAWG files created by recent versions of the dawgdic library remain compatible
Package facts
| License | UNKNOWN permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Dormant 4,136 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 219,943 / month, #9,318 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseProgramming Language :: CythonProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.2Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Scientific/Engineering :: Information AnalysisTopic :: Software Development :: Libraries :: Python ModulesTopic :: Text Processing :: Linguistic |
Evidence: DAWG_Python-0.7.2-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “directed acyclic word graph”
- DAWG-PythonReads DAWG (Directed Acyclic Word Graph) files created by the dawgdic…
- DAWG2-PythonRead-only access to DAWG (directed acyclic word graph) files created…
- adagioAdagio provides a directed acyclic graph (DAG) framework for defining…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also DAWG2-Python · asciidag · ipydagred3 · adagio · bigtree · graphtty · pure-pcapy3 · toposort · pytzdata