本文介绍了如何从c++调用python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是Python新来者。我尝试这样从c++调用python脚本(在Raspberry PI中)。
std::string pythonCommand = "python Callee.py ""+a+"" "+b;
int res = system(pythonCommand.c_str());
运行后收到此消息。
python: can't open file 'Callee.py': [Errno 2] No such file or directory
但我可以使用命令行成功运行Callee.py,并且这两个文件存储在同一目录中。
我错过了什么?
推荐答案
您可能正在某个陌生的目录(即,与您预期的目录不同的其他目录中)运行Python解释器(和您的python Callee.py
命令)。
您可以在调用system(3)之前使用getcwd(3)查找当前工作目录。
您可以使用chdir(2)系统调用(在调用system
之前)将目录更改为适当的目录。或许请参阅this。
我建议您同时阅读Advanced Linux Programming
另请阅读关于Extending and Embedding the Python Interpreter;但如果您需要嵌入某些解释器,请同时考虑Guile&;Lua。
这篇关于如何从c++调用python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!