如何在 C++ 程序将使用的 Python 脚本中导入 cpython 模块?
Posted
技术标签:
【中文标题】如何在 C++ 程序将使用的 Python 脚本中导入 cpython 模块?【英文标题】:How do I import a cpython module inside a Python script which will be used by a C++ program? 【发布时间】:2017-02-27 05:38:14 【问题描述】:我有一个 script1.py,我在其中导入 binascii。
import binascii
当我尝试在使用 PyImport_ImportModule() 的 C++ 程序中使用它时,我收到以下错误。
import binascii
ImportError: No module named 'binascii'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 12, in <module>
import subprocess, tempfile, os.path, re, pwd, grp, os, time
File "/usr/lib/python3.5/subprocess.py", line 437, in <module>
import _posixsubprocess
ImportError: No module named '_posixsubprocess'
当我从终端执行以下操作时,它可以工作。
python3.5 -c "import binascii"
那么我如何在 C++ 程序中使用这些 cpython 模块呢? 提前致谢。
【问题讨论】:
【参考方案1】:您在安装 Python 时可能做错了什么。试试这个:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python3-serial
【讨论】:
谢谢。我尝试了您的步骤,但没有成功。我在另一台可以运行的机器上尝试了我的程序。所以看来你对 Python 安装有问题是正确的。以上是关于如何在 C++ 程序将使用的 Python 脚本中导入 cpython 模块?的主要内容,如果未能解决你的问题,请参考以下文章