日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python模块如何导入解释器_无法从嵌入式解释器导入内置模块(仅限Windows)

發布時間:2025/3/12 python 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python模块如何导入解释器_无法从嵌入式解释器导入内置模块(仅限Windows) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個問題看起來可能是一個重復的問題

但我認為我的問題是不同的。我正在從一個MSVC編譯的C++應用程序運行Python 3.4解釋器,并且我嘗試使用PTVSD模塊來調試更容易。到目前為止,我已經能夠連接到Python Ipter,我從命令行開始,沒有問題,但我想附加到一個嵌入在我的C++應用程序的Python解釋器。為此,我一直聽從

ptvsd模塊導入了\u套接字模塊,我可以在C:/Python34/dll中清楚地看到這一點。如果我從命令行調用python34.exe并運行import ptvsd

ptvsd.enable_attach(None)

我可以通過查看tcp://localhost:5678。在

但是,如果我打電話

^{pr2}$

<>從C++中,我發現一個錯誤,不能找到“子套接字”模塊。對于將任何內置的Python模塊導入到C++應用程序中,這是同樣的情況,盡管我能夠正確地從命令行調用的Python解釋器導入它們。在

我能執行PyRun_SimpleString("import sys \n print(sys.path)");< >我的C++應用程序,結果顯示了c:/Python 34 /dll,其中插座.pyd文件已找到。但由于某些原因,當我嘗試導入它或導入ptvsd時,我無法獲取它PyObject* pGlobals = PyDict_New();

PyRun_String("import ptvsd", Py_file_input, pGlobals, pGlobals);

PyRun_String("ptvsd.enable_attach(None)", Py_file_input, pGlobals, pGlobals);

我真的不明白這個命令。它實際上使“找不到插座”的錯誤消失了,但我認為它只是抑制了它。呼叫dir(ptvsd)

python確實顯示了它的功能,但是調用PyRun_SimpleString("print(dir(ptvsd))");

沒有。我發布的第一個SO鏈接處理的是一個手工構建的模塊,它不能被interpeter接收,但這里不是這樣。該模塊位于PYTHONPATH可以找到的地方,并且可以通過命令行找到它(它也可以由Python工具for visualstudioide獲取,但這不是重點。)

我無法在windows上檢查python2.7,但在linux上,python(2和3)從c++解釋器導入socket模塊沒有問題,所以我希望這只是一個環境問題。在

另外,輸出print(sys.version)

是3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)]

從命令行,以及3.4.3 (default, Aug 29 2015, 22:43:06) [MSC v.1800 32 bit (Intel)]<>從我的C++解釋器。在

很抱歉,但是有人知道怎么回事嗎?我確定我還需要經歷一些其他的困難才能讓事情順利進行,但我不知道它們是什么。。。在

不管怎樣,我可以很好地導入sys和math。我還可以通過一個自定義模塊來編譯PyImport_appendInittab(ModuleName.c_str(), _Mod_Init);

我試過我所有的測試,有沒有上面的電話。在

謝謝你抽出時間。在約翰

總結

以上是生活随笔為你收集整理的python模块如何导入解释器_无法从嵌入式解释器导入内置模块(仅限Windows)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。