代码改变世界

使用shell调用python中的函数

  雪夜&流星  阅读(8562)  评论(0编辑  收藏  举报

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

python脚本如下:

test.py:

 

复制代码
import ConfigParser

config = 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)

 

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示