py-markdown-table
Package that generates markdown tables from a list of dicts
Decision gist · record as of 2026-08-14
Yes. Zero dependencies, active maintenance, permissive license, and broad Python version support (3.8–3.13) make it a low-risk choice. Install if you need to programmatically generate markdown tables from structured data; the formatting options are substantial enough for most use cases.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction: pure Python wheel with zero runtime dependencies and active maintenance (last commit 2026-07-25).
- Supports Python 3.8 through 3.13.
License · maintenance · safety
MIT (permissive) — MIT license (permissive) places no restrictions on use, modification, or distribution.
last release 2025-02-06 (554 days) · last repo commit 2026-07-25 · 51 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 814,131 downloads/mo, #4,993 on PyPI
Alternatives
Verify before relying
pip install py-markdown-table
from py_markdown_table.markdown_table import markdown_table
data = [{"Product": "Smartphone", "Brand": "Apple", "Price": 999.99}]
markdown = markdown_table(data).get_markdown()
print(markdown)- Whether the package handles edge cases like empty data, None values, or non-uniform dict keys gracefully
- Performance characteristics with very large tables or deeply nested multiline content
What it is and what it does
py-markdown-table is a lightweight Python library that converts lists of dictionaries into formatted markdown tables. It takes uniform dictionaries (where all dicts have the same keys) and renders them as markdown-formatted tables with the dict keys becoming column headers and the values becoming rows.
The library offers granular control over table formatting through a chainable `set_params()` method, allowing you to configure row separators (always, topbottom, markdown, or none), per-column or global padding width and alignment (left, right, centerleft, centerright), custom padding and newline characters, float rounding precision, emoji spacing, and multiline column widths. It integrates easily with pandas by converting dataframes to dict records first.
Use it for
- Generate markdown documentation tables from structured data programmatically
- Format API response data or database query results as readable markdown for reports
- Convert pandas DataFrames to markdown tables for embedding in markdown files or READMEs
- Create aligned, padded tables in CLI tools that output markdown-formatted text
- Build markdown tables with custom column widths and text wrapping for long content
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Zero dependencies, active maintenance, permissive license, and broad Python version support (3.8–3.13) make it a low-risk choice. Install if you need to programmatically generate markdown tables from structured data; the formatting options are substantial enough for most use cases.
Install
py-markdown-table on PyPI
Before you install
Low friction: pure Python wheel with zero runtime dependencies and active maintenance (last commit 2026-07-25). Supports Python 3.8 through 3.13.
License in practice
MIT license (permissive) places no restrictions on use, modification, or distribution.
Quickstart
pip install py-markdown-table
from py_markdown_table.markdown_table import markdown_table
data = [{"Product": "Smartphone", "Brand": "Apple", "Price": 999.99}]
markdown = markdown_table(data).get_markdown()
print(markdown)
Verify before relying
- Whether the package handles edge cases like empty data, None values, or non-uniform dict keys gracefully
- Performance characteristics with very large tables or deeply nested multiline content
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 554 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 814,131 / month, #4,993 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: py_markdown_table-1.3.0-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 › “convert dict to markdown table”
- py-markdown-tableGenerates formatted markdown tables from lists of dictionaries, with…
- markdown-tableGenerates Markdown-formatted tables from Python data structures.
- tabulateFormats and prints tabular data in plain text with multiple output…
Give your agent the search over MCP, or paste the wish link into any chat.
More Markup packages
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.
A Python markdown parser that converts markdown to HTML following the CommonMark specification, with support for plugins and custom syntax rules.
Install it if you need reliable markdown-to-HTML conversion.
Beautiful Soup parses HTML and XML documents into a navigable tree, providing Pythonic methods to search, iterate, and modify the parsed content.
Install it if you need to parse or extract data from markup documents.
et_xmlfile writes large XML files with minimal memory overhead by serializing elements to disk as they are created, rather than holding the entire tree in memory.
Install it if incremental XML writing fits your use case; skip it if your XML documents are small or you already use lxml.
Parses and edits TOML files while preserving formatting, comments, and structure, then serializes them back with layout intact.
Install it if you're building tools that touch TOML files and user readability of the source matters.
Parses Python docstrings in ReST, Google, Numpydoc, and Epydoc formats, extracting structured information like descriptions, parameters, return types, and exceptions.
Install it if you need to programmatically read and extract structured data from Python docstrings.
See also texttable · FixedWidth · columnar · markdown-table · tabulate · table-logger · PTable · beautifultable · pretty-html-table · mdformat_tables