A collection of utility functions
Project description
utils-anviks
Useful decorators and functions for everyday Python programming.
Features:
Decorators:
@stopwatch
measures execution time of a function@read_file
reads file content and passes it to the decorated function@catch
catches exceptions from a function@memoize
caches function results (only works with one positional hashable argument)@enforce_types
checks types of function arguments and return value (raises TypeError if types don't match)
Functions:
b64encode
encodes a string to a base64 string a specified number of timesb64decode
decodes a base64 string a specified number of timestm_snapshot_to_string
builds a readable string from the giventracemalloc
snapshot
Installation
pip install utils-anviks
Usage
import tracemalloc
from utils_anviks import stopwatch, read_file, catch, memoize, enforce_types, b64encode, b64decode, \
tm_snapshot_to_string
@stopwatch
def some_function():
pass
@read_file('file.txt')
def some_function(file_content):
pass
@catch
def some_function():
pass
@memoize
def some_function(n):
pass
@enforce_types
def some_function(n: int) -> int:
pass
b64encode('string', 3) # 'WXpOU2VXRlhOVzQ9'
b64decode('WXpOU2VXRlhOVzQ9', 3) # 'string'
tracemalloc.start()
arr = [i for i in range(1000000)] # random memory allocation
snapshot = tracemalloc.take_snapshot()
tracemalloc.stop()
print(tm_snapshot_to_string(snapshot))
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
utils_anviks-1.0.1.tar.gz
(6.1 kB
view hashes)
Built Distribution
Close
Hashes for utils_anviks-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27fe770d0eb0534749f5dedac93622c8fabe3d18b338df55e88b1ec8030316e7 |
|
MD5 | 6c8868e6489619d9f8b04b5f5e541f6c |
|
BLAKE2b-256 | 905ef32f2c05e5e776461ad22e3d9925b35908cd55da6d6bf805c46f5c82e712 |