首页 > 代码库 > 使用shell调用python中的函数

使用shell调用python中的函数

最近遇到一个需求,需要通过shell调用python中的一个函数,发现其实也挺简单的:

python脚本如下:

test.py:

 

import ConfigParserconfig = ConfigParser.ConfigParser()config.read("test.conf")def get_foo():    return config.get("locations", "foo")def get_bar():    return config.get("locations", "bar")

 

我想通过shell调用里面的get_foo,只需要在shell中执行一个调用的命令行即可:

python -c import test; print test.get_foo()

-c选项只是告诉python来执行一些python命令。

为了将结果存储在变量中,你可以因此这样做: 

RESULT_FOO=`python -c import test; print test.get_foo()`

或者,等效于:

RESULT=$(python -c import test; print test.get_foo())

我们也可以一次调用所有方法,放入一个集合中,再调用切割方法获取相应的值:

ALL_RESULTS=$(python -c import test; print test.get_foo(), test.get_bar())

如果需要第二个结果,并将其放入RESULT_BAR:

RESULT_BAR=$(echo $ALL_RESULTS | cut -d  -f2)