- This is a drop-in library for print colorized output in terminal.
- It has no pypi package, which means you can't install it through pip.
- It is recommended to be used as a submodule of your own project, so that no dependency will be involved.
color.py
is Python 3 only and recommended to choose;color_compat.py
is Python 2/3 compatible, only use it if you still struggle in the Python 2 morass.
Copy the color.py
file to your project, then:
from yourproject import color
# 8 bit color
print(color.red('red') + color.green('green') + color.blue('blue'))
print(color.bold(color.yellow('bold yellow')) + color.underline(color.cyan('underline cyan')))
print(color.magenta_hl('magenta highlight'))
# xterm 256 color
print(color.bg256('A9D5DE', color.fg256('276F86', 'Info!')))
print(color.bg256('E0B4B4', color.fg256('912D2B', 'Warning!')))
print(color.hl256('10a3a3', 'Teal'))
Note:
- Every color function receives and returns string, so that the result could be used with any other strings, in any string formatting situation.
- If you pass a str type string, the color function will return a str. If you pass a bytes type string, the color function will return a bytes.
- Color functions could be composed together, like put
red
intobold
, or putbg256
intofg256
.xxx_hl
andhl256
are mostly used independently.
Decorate string with specified color.
color_function
is one of below function names:
Colors | Background | Highlight |
---|---|---|
black | black_bg | black_hl |
red | red_bg | red_hl |
green | green_bg | green_hl |
yellow | yellow_bg | yellow_hl |
blue | blue_bg | blue_hl |
magenta | magenta_bg | magenta_hl |
cyan | cyan_bg | cyan_hl |
white | white_bg | white_hl |
A color function with _bg
suffix means it will set color as background.
A color function with _hl
suffix means it will set color as background,
and change the foreground as well to make the word standout.
Parameters:
param str s: | The input string |
---|---|
return: | The decorated string |
rtype: | string |
raises ValueError: | if the message_body exceeds 160 characters |
Decorate string with specified style.
style_function
is one of below function names:
- bold
- italic
- underline
- strike
- blink
Arguments and return are the same as color_function
.
Decorate string with specified hex rgb color
256_color_function
is one of below function names:
- fg256: will set color as foreground.
- bg256: will set color as background.
- hl256: will highlight input with the color.
Parameters:
param str hexrgb: | The hex rgb color string, accept length 3 and 6. eg: 555 , 912D2B |
---|---|
param str s: | The input string |
return: | The decorated string |
rtype: | string |
raises ValueError: | If the input string's length not equal to 3 or 6. |