System Introspection


In [5]:
import sys

print sys.version_info
print sys.byteorder
print sys.path
print sys.executable
print sys.exec_prefix
print sys.real_prefix
thisModule = sys.modules[__name__]
print dir(thisModule)


sys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)
little
['', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7/plat-x86_64-linux-gnu', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7/lib-tk', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7/lib-old', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7/lib-dynload', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/lib/python2.7/site-packages', '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/lib/python2.7/site-packages/IPython/extensions', '/home/obestwalter/.ipython']
/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/bin/python
/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6
/usr
['In', 'Out', '_', '__', '___', '__builtin__', '__builtins__', '__doc__', '__name__', '__package__', '_dh', '_i', '_i1', '_i2', '_i3', '_i4', '_i5', '_ih', '_ii', '_iii', '_oh', '_sh', 'exit', 'get_ipython', 'inspect', 'myfunc', 'quit', 'sys', 'thisModule']

In [1]:
import inspect


def myfunc():
    """some docstring"""
    pass

print inspect.isfunction(myfunc)
print inspect.isclass(myfunc)


True
False

In [5]:
import sysconfig

print sysconfig.get_platform()
print sysconfig.get_paths()
print sysconfig.get_python_version()


linux-x86_64
{'platinclude': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/include/python2.7', 'platstdlib': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7', 'platlib': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/lib/python2.7/dist-packages', 'purelib': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/lib/python2.7/dist-packages', 'stdlib': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/lib/python2.7', 'scripts': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/bin', 'include': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local/include/python2.7', 'data': '/home/obestwalter/work/presentation_stack/python-course/.direnv/python-2.7.6/local'}
2.7