Skip to content

clarketm/pprintast

Repository files navigation

PyPi release PyPi versions Downloads Documentation Status

An AST (abstract syntax tree) pretty printer for Python 🐍.

Check out the pprintast docs

Installation

$ pip install pprintast

Usage


usage: pprintast.py [-h] [-a] [-c cmd] [-m mode] [-t] [-v] [file]

A pretty-printing dump function for the ast module. The code was copied from the ast.dump function
and modified slightly to pretty-print.

positional arguments:
  file                   program passed in as file

optional arguments:
  -h, --help             show this help message and exit
  -a, --attributes       include attributes such as line numbers and column offsets
  -c cmd, --command cmd  program passed in as string
  -m mode, --mode mode   compilation mode (choices: exec, eval, single) (default: exec)
  -t, --terse            terse output by disabling field annotations
  -v, --version          show program's version number and exit

Script

Pretty print AST from a file using the pprintast CLI.

$ pprintast "./path/to/script.py"

Pretty print AST from a string using the pprintast CLI.

$ pprintast -c "lambda a: a**2"

Module

Pretty print AST from a string using the pprintast module.

# 1. import the "pprintast" function.
from pprintast import pprintast as ppast # OR: from pprintast import ppast

# 2. pretty print AST from a "string".
exp = "lambda a: a**2"

ppast(exp)

stdout

License

MIT © Travis Clarke