Personal Library
Project description
Iridis
This is my personal library that provides a way for me to share and reuse code that i commonly use. That is for colorful printing to console, user input validation and benchmarking for example.
Color Enum
The Color enum defines various color codes that can be used with the functions below.
from enum import Enum
class Color(Enum):
RED = "\033[91m"
GREEN = "\033[92m"
YELLOW = "\033[93m"
BLUE = "\033[94m"
PURPLE = "\033[95m"
# Additional colors available (e.g., BRIGHT, BG colors)
Functions
print_with_color(*values: object, color: Color)
Prints the given values in the specified color.
- values: Objects to print.
- color:
Colorenum specifying the text color.
Example
print_with_color("Hello, World!", color=Color.BLUE)
print_error(*values: object)
Prints the values in red to indicate an error.
- values: Objects representing the error message.
Example
print_error("This is an error message.")
print_title(*values: object)
Prints the values in green to indicate a title or header.
- values: Objects representing the title text.
Example
print_title("Welcome to the Application")
print_rainbow(*values: object)
Prints the values with a rainbow color effect.
- values: Objects to print with each character in a different color.
Example
print_rainbow("This text is in rainbow colors!")
get_number_from_user(input_text: str, error_message: str, conditions: list) -> float
Prompts the user for a number and validates it against optional conditions.
- input_text: Prompt text (default: "Vložte číslo:").
- error_message: Error message shown if input is invalid (default: "Špatný vstup, zkuste znova!").
- conditions: List of boolean lambda conditions to validate the input.
Example
get_number_from_user("Enter a number: ", "Invalid input!", conditions=[lambda x: x > 0])
get_string_from_user(input_text: str, error_message: str, conditions: list) -> str
Prompts the user to input a string and validates it against specified conditions.
- input_text: Prompt text for the user.
- error_message: Error message shown if input is invalid (default: "Špatný vstup, zkuste znova!").
- conditions: A list of callable conditions that take a string and return a boolean.
Example
get_string_from_user(
"Enter your name: ",
"Invalid name!",
conditions=[is_not_empty, is_alpha_only]
)
String Validation Functions
These utility functions validate string inputs:
is_not_empty(string: str) -> bool: Checks if the string is not empty.is_alpha_only(string: str) -> bool: Ensures the string contains only alphabetic characters.has_digits(string: str) -> bool: ReturnsTrueif the string contains any digits.has_no_digits(string: str) -> bool: Ensures the string has no digits.has_special_characters(string: str) -> bool: Checks if the string contains any special characters.has_no_special_characters(string: str) -> bool: Ensures the string has no special characters.is_valid_utf8(string: str) -> bool: Checks if the string contains only valid UTF-8 characters.
Other
@benchmark
Is a decorator that will upon calling the decorated function return an additional value of how long the decorated function took time to execute.
Example
@benchmark
def add(a, b):
return a + b
result, execution_time = add(5, 3)
print(f"Result: {result}, Execution time: {execution_time:.6f} seconds")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file iridis-0.3.1.tar.gz.
File metadata
- Download URL: iridis-0.3.1.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48781a233ca6166aff584600ac727ebeeba99c1375875540b4899898978df2f0
|
|
| MD5 |
f2c8d1e40b9abf277b3a082fe50f40ea
|
|
| BLAKE2b-256 |
075b7ae03e3dcb06a1ac3834f70bb58ae9411e89b78bd10b06a8f092f92f2e7d
|