亚洲精品免播放器在线观看-久久啊-久久观看视频-日韩精品亚洲专区在线电影不卡-在线观看免费a∨网站-在线观看毛片网站

推廣 熱搜: 廣場  Java  app  Word  營業  微信公眾號  北京代理記賬  商城  代理記賬  商標交易 

python怎么在文件中添加內容 怎樣在python程序中嵌入C程序片段?

   2023-04-27 企業服務招財貓50
核心提示:怎樣在python程序中嵌入C程序片段?在c中嵌入python有一些步驟。安裝python程序,以便可以使用python頭文件和庫。添加"Python.h"頭文件鏈接到我們編寫的源文件,并將其鏈接到"

怎樣在python程序中嵌入C程序片段?

在c中嵌入python有一些步驟。

安裝python程序,以便可以使用python頭文件和庫。

添加"Python.h"頭文件鏈接到我們編寫的源文件,并將其鏈接到"python**。lib"庫(需要明確這個庫是靜態庫還是導出庫)。

掌握并理解一些pythonC語言API,用于我們的C程序。

一些常用的CAPI函數

在理解以下函數之前,有必要知道**PyObject***指針。python中幾乎所有的對象都由這個指針指示。

py_Initialize()ampampPy_Finalize()

在調用任何pythonc函數之前需要調用的函數初始化"用于初始化python模塊,大概是加載初始化加載dll。相應地,使用"最終確定"在使用python模塊后釋放它。

Pyimport_importModule()

用于加載python模塊,這是一個通用的python文件。這里需要注意的是,當模塊被加載時,模塊中所有的可執行語句都會被執行。包括import語句和函數體外部的所有語句。

PyObject_GetAttrString()

返回模塊中的函數。

Py_BuildValue()

創建參數元組,通常用這個函數創建一個元組,然后這個元組作為參數傳遞給python中的函數。

Pyeval_CallObject()

調用函數并傳遞由"Py_BuildValue"作為被調用函數的參數。

源代碼示例

下面的例子是調用PythonC代碼中的s函數,傳遞參數并獲取返回值。

Test.cpp代碼

#包含ltiostreamgt

#包含ltPython.hgt

使用命名空間標準

intmain(intargc,char*argv[])

{

Py_Initialize()//初始化

PyObject*pModule為空

PyObject*pFuncNULL

PyObject*pParam空

PyObject*預設為空

constchar*pBufferNULL

intiBufferSize0

p模塊Pyimport_importModule(";test_python";)

如果(!p模塊)

{

coutltlt獲取模塊失敗!ltltendl

退出(0)

}

pfuncpyobject_GetAttrString(pmodule,main)

如果(!pFunc)

{

coutltltgetfunc失敗!ltltendl

coutltltint(pFunc)ltlt

python如何打包成exe文件?

在之前的文章《《讓你的代碼更好的交付,使用Python實現模塊打包發布》》中,分享了測試開發工程師在交付時,使用車輪庫將交付模塊封裝成.whl文件,達到了提高交付部署效率的目的。同時,采用統一的發布,也有助于提高測試開發的標準化程度。

除了發布模塊可以打包成。whl。

格式化文件,對于一些小型的測試工具發布場景,分享一種更適合的發布——打包成可執行文件。exe程序,讓用戶即使在沒有Python的環境下也依然可以直接運行,進一步降低使用成本,提高使用效率。

接下來,讓我們分享如何使用PyInstaller庫將發布模塊打包成一個。exe格式文件。

建議通過pip安裝PyInstaller,否則可能會報錯其他依賴庫缺失,需要手動逐個安裝。

Pip安裝PyInstallerPyInstaller使用下面這個簡單的代碼示例,其中導入了Python內置的library-Time模塊和第三方library-csv模塊,這樣每次運行時都可以將固定數據寫入新生成的csv文件中。

在模塊目錄下執行以下命令,執行日志如下:

您可以在其中看到。uildwritefiles.exe文件已經在當前目錄下生成。

當我們執行WriteFiles.exe時,我們可以發現WriteFile_1550935956.csv文件已經被添加到當前目錄中。

PyInstaller-F常用參數說明:打包單個文件,生成的結果是一個。exe格式文件。-D:打包多個文件,生成的結果是一個目錄,包括第三方依賴,資源,。exe文件等。適合用框架的形式寫工具模塊,帶默認參數。-c:使用Windows控制臺子系統來執行、顯示命令行窗口和默認參數。-w:由Windows子系統執行,程序啟動時不會打開命令行。這個參數在編寫GUI程序時很有用。-p:指定一個額外的導入路徑,類似于PYTHONPATH,多個目錄可以使用路徑分隔符(Windows用分號,Linux用冒號)。–-add-data:打包附加資源,多個資源可以使用路徑分隔符(Windows用分號,Linux用冒號)。––add-binary:打包多余的代碼,多個代碼可以使用路徑分隔符(Windows用分號,Linux用冒號)。同時,將添加–-add-binary添加文件的引用文件。-i:添加圖標的圖標。exe文件。-n:編輯的文件名。exe和。規格。我們嘗試使用-F,-n參數只生成一個。exe文件,文件名為Toutiao。我們執行以下命令并運行日志,如下所示:

pyinstaller-f-nToutiao.exe其中distToutiao.exe文件生成在當前目錄下,目錄結構如下。

除了PyInstaller模塊,還可以將模塊打包成。exe格式,還可以了解pyexe模塊,也可以達到同樣的打包效果,所以我贏了這里不單獨介紹了。

如果對你有幫助,歡迎評論留言。

 
反對 0舉報 0 收藏 0 打賞 0評論 0
 
更多>同類資訊
推薦圖文
推薦資訊
點擊排行
合作伙伴
網站首頁  |  關于我們  |  聯系方式  |  使用協議  |  版權隱私  |  網站地圖  |  排名推廣  |  廣告服務  |  積分換禮  |  網站留言  |  RSS訂閱  |  違規舉報  |  冀ICP備2023006999號-8
 
主站蜘蛛池模板: 日韩影片在线观看 | 中文 字幕 高清 在线 | 欧美国产高清欧美 | 久久综合伊人77777麻豆 | 日韩高清在线观看 | 广州一级毛片 | 91精品国产亚一区二区三区 | 亚洲国产精品综合久久网络 | 99国产精品高清一区二区二区 | 亚洲欧美综合另类 | 中文字幕美日韩在线高清 | 国产麻豆91 | 久久久网久久久久合久久久久 | 国产成人精品久久二区二区 | 亚洲欧美日韩在线观看 | 免费视频二区 | 久久久久女人精品毛片九一 | 亚洲素人在线 | 欧美亚洲一二三区 | 高清国产美女一级a毛片 | 最新国产精品亚洲二区 | 亚洲欧美日韩高清一区二区三区 | 亚洲色图第四页 | 国产亚洲欧美一区二区 | 国产一区亚洲二区 | 久久久久久亚洲精品影院| 日韩欧美色 | 亚洲va欧美va | 亚洲永久精品一区二区三区 | 么公又大又硬又粗又爽的视频 | 欧美v日韩v亚洲v最新 | 国产精品成人一区二区不卡 | 国产高清在线看 | 日韩视频在线观看免费 | 99精品欧美一区二区三区综合在线 | 一区二区视频在线播放 | 国产在线观看不卡 | 国产精品va在线观看无 | 欧美日韩国产精品va | 欧美日本中文字幕 | 欧美另类网 |