我有两个矩阵A和B:
>>>A
[[1,1,1]
[1,1,1]]
>>>B
[2, 3]
Run Code Online (Sandbox Code Playgroud)
我想有效地将它们相乘得到这样的结果:
>>> A*B
[[2,2,2]
[3,3,3]]
Run Code Online (Sandbox Code Playgroud)
我正在寻找比循环迭代更有效的解决方案.有人可以帮忙吗?
我想在 Python 中使用 C++ 函数。因此,我决定为此目的尝试使用 SWIG。首先,我运行命令:
swig -python test.i
Run Code Online (Sandbox Code Playgroud)
然后用g++-6.2编译如下:
g++-6.2 -c test.cpp test_wrap.c -fPIC -I /usr/include/python3.6m
Run Code Online (Sandbox Code Playgroud)
目前一切正常,但问题出现在必须创建链接的最后一步。我运行命令:
ld -shared test.o test_wrap.o -o _test.so
Run Code Online (Sandbox Code Playgroud)
正如Swig 教程中所建议的,但我收到以下错误:
test.o: In function `__static_initialization_and_destruction_0(int, int)':
test.cpp:(.text+0x66): undefined reference to `__dso_handle'
ld: test.o: relocation R_X86_64_PC32 against undefined hidden symbol `__dso_handle' can not be used when making a shared object
ld: final link failed: Bad value
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这一问题?