pythonrecord 51 net_python与c#的交互模块pythonnet
今天總結一下python與c#的交互模塊pythonnet,其實微軟也是有相應的解釋器的,就是Ironpython,可是畢竟Ironpython還有很多東西沒有從python那邊繼承過來,所以有時候用起來并不是那么爽。但是好在強大的社區總會給我們驚喜,pythonnet就是其中一個讓我驚喜的模塊,它可以平滑的和C#進行交互。但是網上這方面的資料還是太少了,不過最終還是折騰出來了。下面就上代碼吧。
# coding=utf-8
# clr是公共運行時環境,這個模塊是與C#交互的核心
import clr
import sys
# 導入clr時這個模塊最好也一起導入,這樣就可以用AddReference方法
import System
sys.path.append(r'd:dll') # 加載c#dll文件路徑
clr.FindAssembly('ClassLibrary5.dll') # 加載c#dll文件
from ClassLibrary5.aaaaa import * # 導入命名空間
a = clr.AddReference('ClassLibrary5') # 實例化C#類庫,這樣可以調用,比如這個類庫的來源Location
c1 = bbbbb()
print a.Location
c1.a()
print dir(System)
代碼注釋的比較清楚了,有幾點需要注意的地方,加載c#dll文件時,必須用
clr.FindAssembly方法而不是clr.ADDReference方法,而且導入clr模塊時,最好也把System模塊導入,原因注釋里已經說了,最后注意一點就是一定要把C#的命名空間當做模塊導入進來。以上就是pythonnet的大概用法。其他的用法還需要在以后的使用過程中好好研究一下!
以上就是python與c#的交互模塊pythonnet的全部內容。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的pythonrecord 51 net_python与c#的交互模块pythonnet的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 菜单自定义图标_操作系统任务栏了解多少,
- 下一篇: 怎么在Python3.7中使用pyodb