【发布时间】:2014-01-26 18:09:22
【问题描述】:
我想以以下方式在 C 中运行 python 脚本:(我已经分叉了)
err = execlp("python", "my_script.py", "test", (char*) NULL);
在bash中,我可以成功运行
python my_script.py test
(test是python脚本的参数)
但是,程序输出
my_script.py: can't open file 'test': [Errno 2] No such file or directory
我做错了什么? :3
【问题讨论】:
-
错误是你的答案。给出
"my_script.py"的完整路径 -
两种情况下当前目录是否相同?
-
是的。它正在尝试打开“测试”,但我从未告诉过它。它应该作为参数通过测试。
-
你能验证当前目录是否相同,即通过在 C 中设置它吗?
-
另外,尝试对 Python 路径进行硬编码,以验证 Python 在以这种方式运行时是否能够正确运行。