Skip to main content

Unix whereis-like python script and package to find the source file of python object (package, module, function, class ...).

Project description

Summary
=======
Locate a python object (package, module, function, class ...) source file.

Usage
=====

``pywhereis [-v] [-s] dotted_name...``

CMD line Examples
=================

- The ``pywhereis`` script accept a package, module, function or a class ::

$ pywhereis shlex
shlex: /usr/lib/python2.6/shlex.py
$ pywhereis os.path.abspath
os.path.abspath: /usr/lib/python2.6/posixpath.py 337

- You can pass more than one dotted-name to it ::

$ pywhereis shlex inspect.ismodule
shlex: /usr/lib/python2.6/shlex.py
inspect.ismodule: /usr/lib/python2.6/inspect.py 51

- If the name is a function, class or method the result will contain the line
number where the object is defined ::

$ pywhereis unittest.TestCase.assertEqual
unittest.TestCase.assertEqual: /usr/lib/python2.6/unittest.py 344

- It will **fail** localizing object that are not pure python ::

$ pywhereis.py sys
sys:

- For more info about why the localization fail you can use the verbose
mode ::

$ pywhereis -v sys
sys: Error: <module 'sys' (built-in)> is built-in.

- If it's run with -s, --site-packages option the script will check first in
site-packages instead of the default which is to check in the current dir
first ::

$ cd ~ ; touch os.py
$ pywhereis os
os: /home/mouad/os.py
$ pywhereis -s os
os: /usr/lib/python2.6/os.py

- Of course you can search in a different python version by running this
script using that version ::

$ python3.2 /path/to/pywhereis html
html: /usr/local/lib/python3.2/html/__init__.py

- For python2.7 and above you can also do ::

$ python2.7 -mwhereis subprocess.Popen
subprocess.Popen: /usr/local/lib/python2.7/subprocess.py 33


Code Examples
=============

This package come also with a python package ``whereis`` that can be used like
so ::

>>> import whereis
>>> whereis.resolve('sys')
<module 'sys' (built-in)>
>>> whereis.locate('os')
'/usr/lib/python2.6/os.py'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pywhereis-0.0.2.tar.gz (7.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page