1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
|
# termcolor
[](https://pypi.org/project/termcolor)
[](https://pypi.org/project/termcolor)
[](https://pypistats.org/packages/termcolor)
[](https://github.com/termcolor/termcolor/actions)
[](https://codecov.io/gh/termcolor/termcolor)
[](COPYING.txt)
[](https://github.com/psf/black)
[](https://tidelift.com/subscription/pkg/pypi-termcolor?utm_source=pypi-termcolor&utm_medium=referral&utm_campaign=readme)
## Installation
### From PyPI
```bash
python3 -m pip install --upgrade termcolor
```
### From source
```bash
git clone https://github.com/termcolor/termcolor
cd termcolor
python3 -m pip install .
```
### Demo
To see demo output, run:
```bash
python3 -m termcolor
```
## Example
```python
import sys
from termcolor import colored, cprint
text = colored("Hello, World!", "red", attrs=["reverse", "blink"])
print(text)
cprint("Hello, World!", "green", "on_red")
print_red_on_cyan = lambda x: cprint(x, "red", "on_cyan")
print_red_on_cyan("Hello, World!")
print_red_on_cyan("Hello, Universe!")
for i in range(10):
cprint(i, "magenta", end=" ")
cprint("Attention!", "red", attrs=["bold"], file=sys.stderr)
```
## Text properties
| Text colors | Text highlights | Attributes |
| --------------- | ------------------ | ----------- |
| `black` | `on_black` | `bold` |
| `red` | `on_red` | `dark` |
| `green` | `on_green` | `underline` |
| `yellow` | `on_yellow` | `blink` |
| `blue` | `on_blue` | `reverse` |
| `magenta` | `on_magenta` | `concealed` |
| `cyan` | `on_cyan` | |
| `white` | `on_white` | |
| `light_grey` | `on_light_grey` | |
| `dark_grey` | `on_dark_grey` | |
| `light_red` | `on_light_red` | |
| `light_green` | `on_light_green` | |
| `light_yellow` | `on_light_yellow` | |
| `light_blue` | `on_light_blue` | |
| `light_magenta` | `on_light_magenta` | |
| `light_cyan` | `on_light_cyan` | |
## Terminal properties
| Terminal | bold | dark | underline | blink | reverse | concealed |
| ------------ | ------- | ---- | --------- | ---------- | ------- | --------- |
| xterm | yes | no | yes | bold | yes | yes |
| linux | yes | yes | bold | yes | yes | no |
| rxvt | yes | no | yes | bold/black | yes | no |
| dtterm | yes | yes | yes | reverse | yes | yes |
| teraterm | reverse | no | yes | rev/red | yes | no |
| aixterm | normal | no | yes | no | yes | yes |
| PuTTY | color | no | yes | no | yes | no |
| Windows | no | no | no | no | yes | no |
| Cygwin SSH | yes | no | color | color | color | yes |
| Mac Terminal | yes | no | yes | yes | yes | yes |
## Overrides
Terminal colour detection can be disabled or enabled in several ways.
In order of precedence:
1. Calling `colored` or `cprint` with a truthy `no_color` disables colour.
2. Calling `colored` or `cprint` with a truthy `force_color` forces colour.
3. Setting the `ANSI_COLORS_DISABLED` environment variable to any value disables colour.
4. Setting the [`NO_COLOR`](https://no-color.org/) environment variable to any value
disables colour.
5. Setting the [`FORCE_COLOR`](https://force-color.org/) environment variable to any
value forces colour.
6. Setting the `TERM` environment variable to `dumb`, or using such a
[dumb terminal](https://en.wikipedia.org/wiki/Computer_terminal#Character-oriented_terminal),
disables colour.
7. Finally, termcolor will attempt to detect whether the terminal supports colour.
|