python:
新建一个py文件“__init__.py”,简单测试
def main():
return 11111;
def test1(name):
return name;
把它扔到一个文件夹 例如 “mytest1”下,在mytest1外新建py文件“setup.py” ,内容:
from setuptools import find_packages,setup
setup(
name = 'mytest1',
version = '0.1',
packages = find_packages(),
)
在setup.py路径内进入cmd, 运行 python setup.py install。 不报错的话直接就打包好了,可以在C#下import 《mytest1》,然后调用main或者test1方法。
以上只是我的简单测试方式,关于打包方式还有很多方式,比如先打包 python setup.py sdist 然后再安装 pip install xxx……。
C#:
根据本机的python版本选择引用的依赖包:pythonnet_netstaandard_py39_win(提示不支持net6就换个版本,vs的bug)
引用python的代码:
using (Py.GIL())
{
dynamic np = Py.Import("numpy");
Console.WriteLine(np.cos(np.pi * 2));
dynamic ooo = Py.Import("mytest1");
dynamic s = "123";
dynamic str = ooo.main();
Console.WriteLine(str);
str = ooo.test1(s);
Console.WriteLine(str);
}
原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/278442.html