Useful helpers by me, for me.
Project description
mmguero
mmguero is my personal collection of miscellaneous helper functions for Python.
Contents
AggressiveUrlEncode
- urlencode each character of a stringAskForPassword
- get interactive password (without echoing)AskForString
- get interactive user responseAtomicInt
- atomic integer class and context managerBase64DecodeIfPrefixed
- decode a string as base64 only if it starts withbase64:
, otherwise just returnCaselessDictionary
- dictionary that enables case insensitive searching while preserving case sensitivity when keys are listedCheckOutputInput
- run command with arguments and return its exit code, stdout, and stderrChooseMultiple
- select multiple options from a list of optionsChooseOne
- select a single option from a list of optionsClearScreen
- attempt to clear the screen withclear
(*NIX) orcls
(Windows)ContainsWhitespace
- check if any character in a string is whitespaceCustomMakeTranslation
DeepGet
- safe deep get for a dictionaryDeepSet
- convenience routine for setting-getting a value into a dictionaryDictSearch
- recursive dictionary key searchDisplayMessage
- display a message to the userDisplayProgramBox
- "stream" the contents of a file descriptor into a program boxDoDynamicImport
- attempt dynamic imports, prompting for install via pip if possibleDownloadToFile
- download a URL to a local fileeprint
- print to stderrEscapeAnsi
- remove ANSI escape sequencesEVP_BytesToKey
- create key compatible with openssl encFileContents
- read the contents of a file, optionally falling back to binaryFlatten
- flatten a collection, but don't split stringsGetIterable
- 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 boxGitClone
- create a local git cloneLoadFileIfJson
- does this file contain valid json? if so, load and return itLoadStrIfJson
- is this string valid json? if so, load and return itpushd
- chdir to directory as context manager, returning automaticallyRemoveEmptyFolders
- recursively remove empty subfoldersRemovePrefix
- remove a prefix from a stringRemoveSuffix
- remove a suffix from a stringRunProcess
- run command with arguments and return its exit code, stdout, and stderrSameFileOrDir
- return true if os.path.samefile, also False on exceptionsha256sum
- calculate a sha256 hash of a fileSizeHumanFormat
- nice human-readable file sizesstr2bool
- convenient boolean argument parsingTablify
- print a list of lists into a nice tableTemporaryFilename
- a context manager returning a temporary filename which is deleted upon leaving the contextTestSocket
- test if a remote port is openTouch
- open a file and close it, updating its access timeval2bool
- convenient boolean argument parsingWhich
- determine if a program/script exists and is executable in the system pathYesOrNo
- 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.
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
mmguero-1.1.1.tar.gz
(14.0 kB
view hashes)
Built Distribution
mmguero-1.1.1-py3-none-any.whl
(13.3 kB
view hashes)