Python library of useful but lonely functions and classes
Project description
Slytherin
Slytherin is a collection of useful but lonely functions and classes that don't belong to other libraries.
Installation
pip install slytherin
Usage
collections
cross_lists()
from slytherin.collections import cross_lists
list1 = [1, 2, 3]
list2 = [4, 5]
list3 = [[6, 7], [8, 9]]
cross_lists(list1, list2, list3)
outputs:
[(1, 4, [6, 7]),
(1, 4, [8, 9]),
(1, 5, [6, 7]),
(1, 5, [8, 9]),
(2, 4, [6, 7]),
(2, 4, [8, 9]),
(2, 5, [6, 7]),
(2, 5, [8, 9]),
(3, 4, [6, 7]),
(3, 4, [8, 9]),
(3, 5, [6, 7]),
(3, 5, [8, 9])]
cross_lists([list1, list2, list3])
also outputs:
[(1, 4, [6, 7]),
(1, 4, [8, 9]),
(1, 5, [6, 7]),
(1, 5, [8, 9]),
(2, 4, [6, 7]),
(2, 4, [8, 9]),
(2, 5, [6, 7]),
(2, 5, [8, 9]),
(3, 4, [6, 7]),
(3, 4, [8, 9]),
(3, 5, [6, 7]),
(3, 5, [8, 9])]
get_size(obj)
The get_size() method calculates the memory footprint of a Python object recursively.
The exclude_objects argument is a list of objects and is optional with the default value of None. Any object in the exclude_objects list will be excluded from the recursive search. It can be used to avoid double counting the size when objects point to each other.
from slytherin import get_size
get_size(obj=[1,2,3], exclude_objects=None)
import pandas as pd
get_size(obj=pd.DataFrame({'id': range(1000), 'name':['Godric', 'Helga', 'Rowena', 'Salazar']*250}))
colour(text, text_colour, style, background_colour)
The colour() method can be used to add colour to printing text.
The colour are integers from 0 to 7:
- black: 0
- red: 1
- green: 2
- yellow: 3
- blue: 4
- purple: 5
- cyan: 6
- white: 7
The style argument is an integer between 0 and 5:
- normal: 0
- bold: 1
- underline: 2
- negative1: 3
- negative2: 5
from slytherin import colour
print(colour(text='Hello world!', text_colour=4))
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
Built Distribution
Hashes for slytherin-2020.11.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11b04414b01491e1485a0d2e9f479fe76806f41a53f495d1b7ee01f67464f6f1 |
|
MD5 | 24dde4ebfecb1adbbd50e2893e59ed10 |
|
BLAKE2b-256 | 809489a1bd42da38459652a1d4148288dc73e25ee6f9a2cbfb2e9fe1c89241e5 |