How to find function information in python?

I know that in R you can just type? "function_name". How do you do this in python? In particular, I am trying to find information about set_positionin the library pyplot.

+5
source share
3 answers
help(function)

gotta do the trick.

Demo:

def func():
    """
    I am a function who doesn't do anything,
    I just sit in your namespace and crowd it up.
    If you call me expecting anything
    I'll just return to you the singleton None
    """
    pass

help(func)
+8
source

Try to run ipython, in which case you can enter:

In [1]: from matplotlib import pyplot as pl

In [2]: pl.set_position?
Object `pl.set_position` not found.

Here you should use google to find out what set_positionis the class method Axes:

In [3]: pl.Axes.set_position?
Type:       instancemethod
String Form:<unbound method Axes.set_position>
File:       /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axes.py
Definition: pl.Axes.set_position(self, pos, which='both')
Docstring:
Set the axes position with::

  pos = [left, bottom, width, height]

in relative 0,1 coords, or *pos* can be a
:class:`~matplotlib.transforms.Bbox`

There are two position variables: one which is ultimately
used, but which may be modified by :meth:`apply_aspect`, and a
second which is the starting point for :meth:`apply_aspect`.


Optional keyword arguments:
  *which*

    ==========   ====================
    value        description
    ==========   ====================
    'active'     to change the first
    'original'   to change the second
    'both'       to change both
    ==========   ====================
+3
source

ipython - ? ( ?? ) .

matplotlib:

In [2]: from matplotlib.axes import Axes

In [3]: Axes.set_position??
Type:       instancemethod
String Form:<unbound method Axes.set_position>
File:       /home/tzelleke/.local/modules/active_python_2.7/lib/python2.7/site-packages/matplotlib/axes.py
Definition: Axes.set_position(self, pos, which='both')
Source:
    def set_position(self, pos, which='both'):
        """
        Set the axes position with::

          pos = [left, bottom, width, height]

        in relative 0,1 coords, or *pos* can be a
        :class:`~matplotlib.transforms.Bbox`

        There are two position variables: one which is ultimately
        used, but which may be modified by :meth:`apply_aspect`, and a
        second which is the starting point for :meth:`apply_aspect`.


        Optional keyword arguments:
          *which*

            ==========   ====================
            value        description
            ==========   ====================
            'active'     to change the first
            'original'   to change the second
            'both'       to change both
            ==========   ====================

        """
        if not isinstance(pos, mtransforms.BboxBase):
            pos = mtransforms.Bbox.from_bounds(*pos)
        if which in ('both', 'active'):
            self._position.set(pos)
        if which in ('both', 'original'):
            self._originalPosition.set(pos)

In [4]: 
+2

All Articles