C#調(diào)用python文件執(zhí)行
我的電腦環(huán)境是使用.net framework4.5.1,如果在調(diào)試過程中調(diào)不通請(qǐng)注意
我用的是Visual studion 2017,python組件下載地址:http://ironpython.codeplex.com/releases/view/
下載的版本是2.7,下載安裝完之后記得引入安裝路徑下的以下三個(gè)dll

(1)首先先說一個(gè)簡(jiǎn)單的功能,在c#代碼中執(zhí)行python字符串,內(nèi)容如下:

(2)c#調(diào)用python文件:
在當(dāng)前目錄下新建一個(gè)后綴名為py的文件,文件名為AmoutDisc.py內(nèi)容如下
dicAmt = 0.05 retAmt = amt if amt>25: retAmt = amt-(amt*dicAmt)
該文件定義了一個(gè)python文件,然后在c#代碼中調(diào)用該python文件,給該文件傳參,具體應(yīng)該說給參數(shù)amt傳值,最后在代碼中獲取python文件中的retAmt的變量值,具體代碼如下:
ScriptRuntime scriptRuntime =Python.CreateRuntime();
ScriptEngine pythEng = scriptRuntime.GetEngine("Python");
ScriptSource scriptSource = pythEng.CreateScriptSourceFromFile("AmoutDisc.py");
ScriptScope scope = pythEng.CreateScope();
//scope.SetVariable("prodCount", Convert.ToInt32("34343"));
scope.SetVariable("amt", Convert.ToDecimal("434"));
scriptSource.Execute(scope);
dynamic a = scope.GetVariable("retAmt");
結(jié)果如下:

調(diào)用成功.
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#實(shí)現(xiàn)鼠標(biāo)左右鍵切換效果
這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)鼠標(biāo)左右鍵切換功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12
C#網(wǎng)絡(luò)請(qǐng)求與JSON解析的示例代碼
這篇文章主要介紹了C#網(wǎng)絡(luò)請(qǐng)求與JSON解析的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
Unity實(shí)現(xiàn)旋轉(zhuǎn)扭曲圖像特效
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)旋轉(zhuǎn)扭曲圖像特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02
C#使用命名管道Pipe進(jìn)行進(jìn)程通信實(shí)例詳解
這篇文章主要介紹了C#使用命名管道Pipe進(jìn)行進(jìn)程通信實(shí)例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
c#多線程網(wǎng)絡(luò)聊天程序代碼分享(服務(wù)器端和客戶端)
本程序使用VS2005 制作,程序分為三塊,XuLIeHua類庫下有我寫的把結(jié)構(gòu)序列化的類,還有就是服務(wù)器端和客戶端2013-12-12

