我已经使用 Pythonnet 有一段时间了,但总是反对 .NET Framework 4。* 随着 .NET 5.0 的最新版本,我想迁移我的项目,但我无法使其适用于非框架版本(例如 .NET Core 2.0、.NET 核心 3.0、.NET 5.0)
这是我使用 .NET Framework 4.5 运行的一个非常简单的测试:
namespace TestNet
{
public class Dummy
{
private string _name;
public Dummy(string name)
{
_name = name;
}
public string Hello(string name)
{
return $"Hello {name}, my name is {_name}";
}
}
}
Run Code Online (Sandbox Code Playgroud)
这会生成 TestNet.dll 然后我运行以下 Python 代码:
>>> import clr
>>> clr.AddReference("TestNet")
<System.Reflection.RuntimeAssembly object at 0x000001899ACFABB0>
>>> from TestNet import Dummy
>>> d = Dummy("Bob")
>>> d.Hello("John")
'Hello …Run Code Online (Sandbox Code Playgroud)