see below for details.
functions
- rgbprint
- gradient_print
- gradient_scroll
- gradient_change
classes
- Color
from rgbprint import rgbprint rgbprint("[+] successfully connected to database", color="green")from rgbprint import Color print(f"[{Color.red}CRITICAL{Color.reset}] encountered error in the program")from rgbprint import gradient_print, Color gradient_print( "[CRITICAL] system failure, program can't open file in location C:/foo/bar/baz.tgz", start_color=Color.yellow_green, end_color=Color.dark_magenta )from rgbprint import gradient_scroll, Color gradient_scroll( "[CRITICAL] system failure, program can't open file in location C:/foo/bar/baz.tgz", start_color=0x4BBEE3, end_color=Color.medium_violet_red )from rgbprint import gradient_change, Color gradient_change( "[CRITICAL] system failure, program can't open file in location C:/foo/bar/baz.tgz", start_color=0x4BBEE3, end_color=Color.medium_violet_red )
print but with color keyword argument support.
Prints the values to sys.stdout.
the color argument gets converted to a
Color
object before getting printed, thus it must be an instance ofColorType
rgbprint( *values, sep: str = " ", end: str = "\n", color: Optional[ColorType] = None, ) -> None
- *values (
Any
): values to print.- color (
ColorType
):optional
color. see examples down below for supported formats.- sep (
str
):optional
, string inserted between values, default a space.- end (
str
):optional
, string appended after the last value, default a newline.
import the package
from rgbprint import rgbprint from rgbprint import Colorbasic colored print
user = "john smith" rgbprint("welcome", user, "you are", 25, "years old", color=Color.forest_green)similar functionality to the built-in
rgbprint(*["orange", "apple", "banana"], sep="_", color="yellow")all supported color formats
rgbprint("hello", color="red") rgbprint("hello", color=0xff00ff) rgbprint("hello", color="#ff00ff") rgbprint("hello", color="ff00ff") rgbprint("hello", color=[255, 0, 255]) rgbprint("hello", color=(255, 0, 255)) rgbprint("hello", color=(255, 0, 0xFF)) rgbprint("hello", color=Color.red) rgbprint("hello", color=Color.random) rgbprint("hello", color=Color(255, 0, 127))
- ValueError: if the color is in an unsupported format, or is out of range of 0-16777215 (0x000000-0xFFFFFF).
- TypeError: if the color is of unsupported type. or some other error.
print gradients on your terminal
gradient_print( *values, start_color: Optional[ColorType] = None, end_color: Optional[ColorType] = None, sep: str = " ", end: str = "\n" ) -> None
- *values (
Any
): values to print.- start_color (
ColorType
): start_color. see examples down below for supported formats.- end_color (
ColorType
): end_color. see examples down below for supported formats.- sep (
str
):optional
, string inserted between values, default a space.- end (
str
):optional
, string appended after the last value, default a newline.
import the package
from rgbprint import gradient_print from rgbprint import Colorbasic gradient scroll
user = "john smith" gradient_print("welcome", user, "you are", 25, "years old", start_color="red, end_color="yellow")more examples
username = "john doe" gradient_print("hello", start_color="red", end_color="yellow") gradient_print("hello", username, "welcome to the app", start_color=Color.forest_green, end_color=0xFF00FF) gradient_print("[+] loading data, please wait...", start_color=Color.aqua_marine, end_color=Color.peach_puff)similar functionality to the built-in
gradient_print(*["orange", "apple", "banana"], sep="_", start_color="yellow", end_color="red")all supported color formats
gradient_print("hello", start_color="red", end_color="red") gradient_print("hello", start_color=0xff00ff, end_color=0xff00ff) gradient_print("hello", start_color="#ff00ff", end_color="#ff00ff") gradient_print("hello", start_color="ff00ff", end_color="ff00ff") gradient_print("hello", start_color=[255, 0, 255], end_color=[255, 0, 255]) gradient_print("hello", start_color=(255, 0, 255), end_color=(255, 0, 255)) gradient_print("hello", start_color=(255, 0, 0xFF), end_color=(255, 0, 0xFF)) gradient_print("hello", start_color=Color.red, end_color=Color.red) gradient_print("hello", start_color=Color.random, end_color=Color.random) gradient_print("hello", start_color=Color(255, 0, 127), end_color=Color(255, 0, 127))
- ValueError: if the color is in an unsupported format, or is out of range of 0-16777215 (0x000000-0xFFFFFF).
- TypeError: if the color is of unsupported type, or the function is missing arguments.
scroll gradients on your terminal
gradient_scroll( *values, start_color: Optional[ColorType] = None, end_color: Optional[ColorType] = None, delay: float = 0.03, times: int = 4, reverse: bool = False, sep: str = " ", end: str = "\n", ) -> None
- *values (
Any
): values to print.- start_color (
ColorType
): start_color. see examples down below for supported formats.- end_color (
ColorType
): end_color. see examples down below for supported formats.- delay (
float
):optional
, the delay between the change of the gradient, recommended range: .05 - .1- times (
int
):optional
, the amount of times to change the gradient in place.- reverse (
bool
):optional
whether to start with the end color or not.- sep (
str
):optional
, string inserted between values, default a space.- end (
str
):optional
, string appended after the last value, default a newline.
import the package
from rgbprint import gradient_scroll from rgbprint import Colorbasic gradient print
user = "john smith" gradient_scroll("welcome", user, "you are", 25, "years old", start_color="red", end_color="yellow")more examples
username = "john doe" gradient_scroll("hello", start_color="red", end_color="yellow") gradient_scroll("hello", start_color="red", end_color="yellow", delay=0.1) gradient_scroll("hello", start_color="red", end_color="yellow", delay=0.1, times=10) gradient_scroll("hello", start_color="red", end_color="yellow", delay=0.1, times=10, reverse=True) gradient_scroll("hello", username, "welcome to the app", start_color=Color.forest_green, end_color=0xFF00FF) gradient_scroll("[+] loading data, please wait...", start_color=Color.aqua_marine, end_color=Color.peach_puff)similar functionality to the built-in
gradient_scroll(*["orange", "apple", "banana"], sep="_", start_color="yellow", end_color="red")all supported color formats
gradient_scroll("hello", start_color="red", end_color="red") gradient_scroll("hello", start_color=0xff00ff, end_color=0xff00ff) gradient_scroll("hello", start_color="#ff00ff", end_color="#ff00ff") gradient_scroll("hello", start_color="ff00ff", end_color="ff00ff") gradient_scroll("hello", start_color=[255, 0, 255], end_color=[255, 0, 255]) gradient_scroll("hello", start_color=(255, 0, 255), end_color=(255, 0, 255)) gradient_scroll("hello", start_color=(255, 0, 0xFF), end_color=(255, 0, 0xFF)) gradient_scroll("hello", start_color=Color.red, end_color=Color.red) gradient_scroll("hello", start_color=Color.random, end_color=Color.random) gradient_scroll("hello", start_color=Color(255, 0, 127), end_color=Color(255, 0, 127))
- ValueError: if the color is in an unsupported format, or is out of range of 0-16777215 (0x000000-0xFFFFFF).
- TypeError: if the color is of unsupported type, or the function is missing arguments.
change gradients in place on your terminal this function is very similar to
gradient_scroll
almost identical.gradient_change( *values, start_color: Optional[ColorType] = None, end_color: Optional[ColorType] = None, delay: float = 0.03, times: int = 4, reverse: bool = False, sep: str = " ", end: str = "\n", ) -> None
- *values (
Any
): values to print.- start_color (
ColorType
): start_color. see examples down below for supported formats.- end_color (
ColorType
): end_color. see examples down below for supported formats.- delay (
float
):optional
, the delay between the change of the gradient, recommended range: .05 - .1- times (
int
):optional
, the amount of times to change the gradient in place.- reverse (
bool
):optional
whether to start with the end color or not.- sep (
str
):optional
, string inserted between values, default a space.- end (
str
):optional
, string appended after the last value, default a newline.
import the package
from rgbprint import gradient_change from rgbprint import Colorbasic gradient print
user = "john smith" gradient_change("welcome", user, "you are", 25, "years old", start_color="red, end_color="yellow")more examples
username = "john doe" gradient_change("hello", start_color="red", end_color="yellow") gradient_change("hello", start_color="red", end_color="yellow", delay=0.1) gradient_change("hello", start_color="red", end_color="yellow", delay=0.1, times=10) gradient_change("hello", start_color="red", end_color="yellow", delay=0.1, times=10, reverse=True) gradient_change("hello", username, "welcome to the app", start_color=Color.forest_green, end_color=0xFF00FF) gradient_change("[+] loading data, please wait...", start_color=Color.aqua_marine, end_color=Color.peach_puff)similar functionality to the built-in
gradient_change(*["orange", "apple", "banana"], sep="_", start_color="yellow", end_color="red")all supported color formats
gradient_change("hello", start_color="red", end_color="red") gradient_change("hello", start_color=0xff00ff, end_color=0xff00ff) gradient_change("hello", start_color="#ff00ff", end_color="#ff00ff") gradient_change("hello", start_color="ff00ff", end_color="ff00ff") gradient_change("hello", start_color=[255, 0, 255], end_color=[255, 0, 255]) gradient_change("hello", start_color=(255, 0, 255), end_color=(255, 0, 255)) gradient_change("hello", start_color=(255, 0, 0xFF), end_color=(255, 0, 0xFF)) gradient_change("hello", start_color=Color.red, end_color=Color.red) gradient_change("hello", start_color=Color.random, end_color=Color.random) gradient_change("hello", start_color=Color(255, 0, 127), end_color=Color(255, 0, 127))
- ValueError: if the color is in an unsupported format, or is out of range of 0-16777215 (0x000000-0xFFFFFF).
- TypeError: if the color is of unsupported type, or the function is missing arguments.
Color class, to represent a 8bit ANSI colors
instances of this class are printable, when you print them, they change the color of your terminal.
Color(r, g, b)
- r: (
int
in0..256
): red value of the color- g: (
int
in0..256
): green value of the color- b: (
int
in0..256
): blue value of the color
all the ways below are valid to initialize a color:
Color(0xff00ff) Color("#ff00ff") Color("ff00ff") Color([255, 0, 255]) Color(255, 0, 255) Color(255, 0, 0xFF) Color(Color.red) Color(Color.random)
colors can be initialized in many ways:
Color(int, int, int)
Color(255, 0, 255)
Color(0x4B, 0xBB, 0xE3)
Color(*(127, 127, 127))
Color(str)
Color("#FF00FF")
Color("FF00FF")
Color("red)
Color("green")
Color(int)
Color(0x4BBEE3)
Color(16777215)
Color(Color)
red = Color.red; Color(red)
Color(Tuple[int, int, int] | List[int, int, int])
Color((100, 255, 16))
Color([100, 255, 16])
you can destruct colors into its red, green, blue components like so:
r, g, b = Color.red assert r == 255 assert g == 0 assert b == 0 rgb = tuple(Color("FF00FF")) assert isinstance(rgb, tuple) assert rgb == (255, 0, 255)
the color class has some dunder magic methods implemented.
__iter__
to destruct the colors.__str__
to print the colors.__repr__
to represent colors for debugging purposes.__eq__
to compare 2 colors, and see if they are the same color.