That code in my care That sly command-line stare That strips my operating system bare It's whichcraft
This package provides cross-platform cross-python
On Linux, Mac, Windows for Python 2.7 or any of the maintained 3s:
>>> from whichcraft import which >>> which('date') '/bin/date' >>> which('calendar') '/bin/calendar' >>> which('cookiecutter') '/Users/pydanny/.envs/fun/bin/cookiecutter' >>> which('a-made-up-name') is None True
This is a shim of the
shutil.which function that's designed to work across
multiple versions of Python and inside of windows. The code for Python 2.x is
based on Python 3 code that I extracted from source. I originally did this for
Cookiecutter but pulled it out in order to reduce line count for that project.
Edgecase: Date function works perfectly on mac os and linux system, hence returns string. But is an in-built function in windows hence returns none as value when called in windows.