mmguero / python-mmguero

Useful helpers by me, for me.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mmguero

mmguero is my personal collection of miscellaneous helper functions for Python.

Contents

  • AggressiveUrlEncode - urlencode each character of a string
  • AskForPassword - get interactive password (without echoing)
  • AskForString - get interactive user response
  • AtomicInt - atomic integer class and context manager
  • Base64DecodeIfPrefixed- decode a string as base64 only if it starts with base64:, otherwise just return
  • CaselessDictionary - dictionary that enables case insensitive searching while preserving case sensitivity when keys are listed
  • CheckOutputInput - run command with arguments and return its exit code, stdout, and stderr
  • ChooseMultiple - select multiple options from a list of options
  • ChooseOne - select a single option from a list of options
  • ClearScreen - attempt to clear the screen with clear (*NIX) or cls (Windows)
  • ContainsWhitespace - check if any character in a string is whitespace
  • CustomMakeTranslation
  • DeepGet - safe deep get for a dictionary
  • DeepSet - convenience routine for setting-getting a value into a dictionary
  • DictSearch - recursive dictionary key search
  • DisplayMessage - display a message to the user
  • DisplayProgramBox - "stream" the contents of a file descriptor into a program box
  • DoDynamicImport - attempt dynamic imports, prompting for install via pip if possible
  • DownloadToFile - download a URL to a local file
  • eprint - print to stderr
  • EscapeAnsi - remove ANSI escape sequences
  • EVP_BytesToKey - create key compatible with openssl enc
  • FileContents - read the contents of a file, optionally falling back to binary
  • Flatten - flatten a collection, but don't split strings
  • GetIterable - return an iterable for an iterable (as-is) or a scalar (as a single element in a tuple)
  • GetPrimaryIP - return the primary IP (the one with a default route) on the local box
  • GitClone - create a local git clone
  • LoadFileIfJson - does this file contain valid json? if so, load and return it
  • LoadStrIfJson - is this string valid json? if so, load and return it
  • pushd - chdir to directory as context manager, returning automatically
  • RemoveEmptyFolders - recursively remove empty subfolders
  • RemovePrefix - remove a prefix from a string
  • RemoveSuffix - remove a suffix from a string
  • RunProcess - run command with arguments and return its exit code, stdout, and stderr
  • SameFileOrDir - return true if os.path.samefile, also False on exception
  • sha256sum - calculate a sha256 hash of a file
  • SizeHumanFormat - nice human-readable file sizes
  • str2bool - convenient boolean argument parsing
  • Tablify - print a list of lists into a nice table
  • TemporaryFilename - a context manager returning a temporary filename which is deleted upon leaving the context
  • TestSocket - test if a remote port is open
  • Touch - open a file and close it, updating its access time
  • val2bool - convenient boolean argument parsing
  • Which - determine if a program/script exists and is executable in the system path
  • YesOrNo - get interactive user response to Y/N question

Installation

Using pip, to install the latest release from PyPI:

python3 -m pip install -U mmguero

Or to install directly from GitHub:

python3 -m pip install -U 'git+https://github.com/mmguero/python-mmguero'

Authors

  • Seth Grover - Initial work - mmguero

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Useful helpers by me, for me.

License:MIT License


Languages

Language:Python 100.0%