C#調(diào)用python的四種方法
發(fā)布日期:2022/8/30 7:31:45 瀏覽量:
一、使用c#,nuget管理包上下載的ironPython安裝包
嘗試后發(fā)現(xiàn),對(duì)引用了numpy等第三方庫(kù)的python代碼,會(huì)報(bào)找不到模塊xxx的錯(cuò)誤,上網(wǎng)查證后發(fā)現(xiàn)此問題基本難以解決
二、使用c++程序調(diào)用python文件,然后將其做成動(dòng)態(tài)鏈接庫(kù)(dll),在c#中調(diào)用此dll文件
限制:實(shí)現(xiàn)方式很復(fù)雜,并且受python版本、(python/vs)32/64位影響,而且要求用戶必須安裝python運(yùn)行環(huán)境
三、使用安裝好的python環(huán)境,利用c#命令行,調(diào)用.py文件執(zhí)行
優(yōu)點(diǎn):執(zhí)行速度只比在python本身環(huán)境中慢一點(diǎn),步驟也相對(duì)簡(jiǎn)單
缺點(diǎn):需要用戶安裝配置python環(huán)境
實(shí)用步驟:
1、下載安裝python,并配置好環(huán)境變量等(本人用的Anaconda,鏈接此處不再提供)
2、編寫python文件(這里為了便于理解,只傳比較簡(jiǎn)單的兩個(gè)參數(shù))
注:這兩個(gè)python文件,我引用了numpy第三方庫(kù),也要安裝后才能在python中使用
四、c#調(diào)用python可執(zhí)行exe文件,使用命令行進(jìn)行傳參取返回值
優(yōu)點(diǎn):無需安裝python運(yùn)行環(huán)境
缺點(diǎn):
1、可能是因?yàn)橐归_exe中包含的python環(huán)境,執(zhí)行速度相當(dāng)慢,慎用!
2、因?yàn)槭敲钚袀鲄⑿问?,故傳參需要自行處理。ps:由于命令行傳參形式為:xxx.exe 參數(shù)1 參數(shù)2 參數(shù)3....
我要傳一個(gè)很大的數(shù)組,曲線救國(guó),用c#將數(shù)組寫入txt文件中,將存放路徑傳給python函數(shù),python讀取此txt文件得到數(shù)據(jù)
第三種實(shí)現(xiàn)方式整理了下源代碼,下載鏈接放在下面,需要的話請(qǐng)自行下載:
百度網(wǎng)盤免費(fèi)鏈接和提取碼:
鏈接:https://pan.baidu.com/s/1YBcjdr-0fo0HVP1sq1U7nw
提取碼:zana
馬上咨詢: 如果您有業(yè)務(wù)方面的問題或者需求,歡迎您咨詢!我們帶來的不僅僅是技術(shù),還有行業(yè)經(jīng)驗(yàn)積累。
QQ: 39764417/308460098 Phone: 13 9800 1 9844 / 135 6887 9550 聯(lián)系人:石先生/雷先生