Posts Tagged ‘package’

call a function by knowing its name as a string

June 24, 2014 Leave a comment

I want to call a function but its name is stored in a string. How to do that?

I wanted to create a menu where the user can select which entry to call. It looks like this:

(1)[r] radio
(2)[ctd] create temp. directory
[m] menu
[q] <

In Python I stored it like this:

menu = OrderedDict()
menu[(1, 'r')] = ('radio', '')
menu[(2, 'ctd')] = ('create temp. directory', 'apps.temp_folder.create_temp_folder')

That is, if the user selects “1“, then must be called.

Here is the method that can call the appropriate function:

import importlib

def start_app(val):
    Call a function by name (string).
    Tip from here: .
    _, to_call = val
    function_string = to_call # ex.: ''
    mod_name, func_name = function_string.rsplit('.', 1)
    mod = importlib.import_module(mod_name)
    func = getattr(mod, func_name)

The tip is from here.

Extra packages in PyPI

March 16, 2011 Leave a comment

The Python Package Index (PyPI) is a repository of software for the Python programming language. There are currently 13,756 packages here…
…to use a package from this index either “pip install package” or download, unpack and “python install” it.
” (source)

The easiest way is to use the pip installer:

sudo pip install <package_name>
Categories: python Tags: , , ,