gpt4 book ai didi

python - "AttributeError: ' 模块 ' object has no attribute ' argv '"使用 Python.h 时

转载 作者:太空狗 更新时间:2023-10-29 18:00:26 26 4
gpt4 key购买 nike

当弄乱 Python.h 时,我得到了这个错误:

AttributeError: 'module' object has no attribute 'argv'

C++代码:

#include "stdafx.h"  
#include "C:/Python27/include/Python.h"
#include <iostream>

using namespace std;


int main()
{
Py_Initialize();
PyRun_SimpleString("import sys\nprint sys.argv[0]");
}

在 Python 中是:

import sys
print sys.argv[0]

我错过了什么?

最佳答案

从概念上讲,sys.argv 应该包含调用 Python 时使用的参数(以及调用它的条件)。不过,如果这样调用它应该有什么?

如果需要,您可以将调用程序的 argv 加载到 sys 中:

int main(int argc, char **argv)
{
Py_Initialize();
PySys_SetArgv(argc, argv);
PyRun_SimpleString("import sys\nprint sys.argv");
}

给予

localhost-2:argv $ ./a.out
['./a.out']
localhost-2:argv $ ./a.out arg0 17
['./a.out', 'arg0', '17']

另请参阅 Py_SetProgramName

关于python - "AttributeError: ' 模块 ' object has no attribute ' argv '"使用 Python.h 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12230210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com