Personal collection of common utilities
Project description
shinyutils
Various utilities for common tasks. :sparkles: :sparkles: :sparkles:
Setup
Install with pip
.
pip install shinyutils
matwrap
Wrapper around matplotlib
and seaborn
.
Usage
from shinyutils import MatWrap as mw # do not import `matplotlib`, `seaborn`
fig = mw.plt().figure()
ax = fig.add_subplot(111) # `ax` can be used normally now
# Use class methods in `MatWrap` to access `matplotlib`/`seaborn` functions.
mw.mpl() # returns `matplotlib` module
mw.plt() # returns `matplotlib.pyplot` module
mw.sns() # returns `seaborn` module
subcls
Utility functions for dealing with subclasses.
Functions
get_subclasses(cls)
: returns a list of all the subclasses ofcls
.get_subclass_names(cls)
: returns a list of names of all subclasses ofcls
.get_subclass_from_name(base_cls, cls_name)
: return the subclass ofbase_cls
namedcls_name
.build_subclass_object(base_cls, cls_name, kwargs)
: return an instance ofget_subclass_from_name
initialized usingkwargs
.
argp
Utilities for argument parsing.
LazyHelpFormatter
HelpFormatter
with sane defaults, and colors (courtesy of crayons
)! To use, simply pass formatter_class=LazyHelpFormatter
when creating ArgumentParser
instances.
arg_parser = ArgumentParser(formatter_class=LazyHelpFormatter)
sub_parsers = arg_parser.add_subparsers(dest="cmd")
sub_parsers.required = True
# `formatter_class` needs to be set for sub parsers as well.
cmd1_parser = sub_parsers.add_parser("cmd1", formatter_class=LazyHelpFormatter)
comma_separated_ints
ArgumentParser
type representing a comma separated list of ints (example 1,2,3,4
).
arg_parser.add_argument("--csi", type=comma_separated_ints)
OutputFileType
ArgumentParser
type representing an output file. The returned value is a file object.
shiny_arg_parser
ArgumentParser
object with LazyHelpFormatter, and logging argument.
logng
Utilities for logging.
build_log_argp
Creates an argument group with logging arguments.
>>> arg_parser = ArgumentParser()
>>> build_log_argp(arg_parser)
>>> arg_parser.print_help()
usage: python [-h] [--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
optional arguments:
-h, --help show this help message and exit
logging:
--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
conf_logging
Configures global logging (and adds colors!) using arguments returned by ArgumentParser.parse_args
. log_level
can be over-ridden with the keyword argument. Colors are not enabled if output isn't a tty.
args = arg_parser.parse_args()
conf_logging(args)
conf_logging(args, log_level="INFO") # override `log_level`
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 shinyutils-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14a70a955b6b7ba2eb8b701119ac818ca7ed3c0d47736a97b76714aac955a2a4 |
|
MD5 | 268a6b28f90246ff48a31245d40cbe35 |
|
BLAKE2b-256 | 567aa341c3a3edd0c5a0fa64a1b1ba2804fe967480ffb5bcd6876cd27ec21e43 |