簡體   English   中英

集成Python時,必須匹配多少版本?

[英]When integrating Python how much of the version has to match?

這個問題是關於將Python集成到另一個程序中。 如果我對Python的鏈接,我有一個導入庫命名python27.lib或相似(如python26.lib較早x版本)。 顯然,Python 3.x在那里的規則略有更改,因為我在libs文件夾中同時找到了python3.libpython33.lib

查看import libs的成員,很明顯,例如2.6和2.7之間不會存在兼容性。 但是,我是否可以假定從Python 2.7.3導入的lib可以與較舊的Python 2.7 DLL(例如2.7.2或2.7.1)一起使用? 我不會與應用程序一起部署Python,而是希望基於已設置的Python提供Python集成作為選項。

額外的問題:考慮到Python 3的名稱更改以及python3.dll似乎包含函數導出轉發器的事實,我是否可以假設針對python3.lib鏈接將適用於任何以3.0開頭的Python 3.x版本?

Python的補丁程序級別是二進制兼容的,也就是說,當您與2.7.3鏈接時,該二進制文件還將與其他2.7.x版本一起使用。 這在發行版之間不起作用(也就是說,您的二進制文件不適用於Python 2.6或3.3)。

當你與python3.dll鏈接,您可以使用所有的Python 3.X版本,但你在C API的限制,您可以使用:您只能使用穩定的ABI(如描述在這里 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM