Skip to main content

ANSI escape code library for Python

Project description

Pansi is a clean and simple ANSI escape code library for Python.

General usage

Pansi provides an object called ansi through which all escape codes can be selected. This object exposes the codes as both attributes (e.g. and items (e.g. ansi["red"]).

This object can therefore be used in several different ways, but the simplest is through the string format method. Here, if the object is supplied as a simple named argument, all references need to be prefixed:

Alternatively, passing the object with the ** operator removes the need for prefixes and thus makes the template string shorter. However, this does introduce a greater chance of clashing with other parameters, and doesn’t signal which parameters are which.

Ultimately, it is a subjective choice between these two options.


For foreground text, the standard set of colours can be selected using the lower case name for normal brightness and the upper case name for high intensity. To select as the background colour instead, simply prefix with bg., e.g.

Colour Foreground Background
K0 Black black
R0 Red red
G0 Green green
Y0 Yellow yellow bg.yellow
B0 Blue blue bg.yellow
M0 Magenta magenta bg.magenta
C0 Cyan cyan bg.cyan
W0 White white bg.white
K1 Bright black BLACK bg.BLACK
R1 Bright red RED bg.RED
G1 Bright green GREEN bg.GREEN
Y1 Bright yellow YELLOW bg.YELLOW
B1 Bright blue BLUE bg.YELLOW
M1 Bright magenta MAGENTA bg.MAGENTA
C1 Bright cyan CYAN bg.CYAN
W1 Bright white WHITE bg.WHITE

Full 24-bit colour support is also available (on those terminals that support it) by using the rgb selector.

Foreground and background colours can be inverted and then set back to normal using the rev and _rev tags respectively.

To reset foreground and background back to their defaults, use fg.reset and bg.reset.

Text Weight

  • weight.normal
  • weight.bold
  • weight.light
  • b (alias for weight.bold)
  • _b (alias for weight.normal)

Text Style

  • style.normal
  • style.italic
  • style.fraktur
  • i (alias for style.italic)
  • _i (alias for style.normal)

Text decoration

  • u (underline)
  • uu (double underline)
  • _u (no underline)
  • o (overline)
  • _o (no overline)
  • s (strike through)
  • _s (no strike through)


  • blink (blink)
  • BLINK (blink fast)
  • _blink (no blink)

Hide & show

  • hide
  • show

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pansi, version 2020.7.3
Filename, size File type Python version Upload date Hashes
Filename, size pansi-2020.7.3.tar.gz (11.2 kB) File type Source Python version None Upload date Hashes View
Filename, size pansi-2020.7.3-py2.py3-none-any.whl (10.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page