CSnakes.Runtime 1.0.13
dotnet add package CSnakes.Runtime --version 1.0.13
NuGet\Install-Package CSnakes.Runtime -Version 1.0.13
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的 Install-Package 版本。
<PackageReference Include="CSnakes.Runtime" Version="1.0.13" />
对于支持 PackageReference 的项目,请将此 XML 节点复制到项目文件中以引用此包。
paket add CSnakes.Runtime --version 1.0.13
NuGet 团队不提供对此客户端的支持。请联系其 维护人员 以获取支持。
#r "nuget: CSnakes.Runtime, 1.0.13"
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将此内容复制到交互式工具或脚本的源代码中以引用此包。
// Install CSnakes.Runtime as a Cake Addin #addin nuget:?package=CSnakes.Runtime&version=1.0.13 // Install CSnakes.Runtime as a Cake Tool #tool nuget:?package=CSnakes.Runtime&version=1.0.13
NuGet 团队不提供对 Cake 客户端的支持。请联系其 维护人员 以获取支持。
CSnakes - 一个将 Python 代码嵌入 .NET 项目的工具
<img src="docs/res/logo.jpeg" alt="drawing" width="200"/>
CSnakes 是一个 .NET 源代码生成器和运行时,您可以使用它将 Python 代码和库嵌入到您的 .NET 解决方案中,无需使用 REST、HTTP 或微服务。
特性
- .NET Standard 2.0 (.NET 6-8)
- 支持 Python 3.9-3.13
- 支持虚拟环境和 C-扩展
- 支持 Windows、macOS 和 Linux
- 使用 Python 的 C-API 在 .NET 进程中直接快速调用 Python 代码
- 使用 Python 类型提示生成带有 .NET 原生类型的函数签名
- 支持嵌套序列和映射类型(
tuple
、dict
、list
) - 支持默认值
示例
给定以下名为 example.py
的 Python 文件
def hello_world(name: str, age: int) -> str:
return f"Hello {name}, you must be {age} years old!"
CSnakes 将生成一个静态 .NET 类 Example
并具有函数
public class Example {
public static string HelloWorld(string name, long age) {
...
}
}
当调用时,HelloWorld()
将使用 Python 的 C-API 从 example.py
中调用 Python 函数,并返回原生 .NET 类型。
常见问题解答
有关更多信息,请参阅 常见问题解答。
产品 | 版本 兼容和附加的计算目标框架版本。 |
---|---|
.NET | net8.0兼容。 net8.0-android已计算。 net8.0-browser已计算。 net8.0-ios已计算。 net8.0-maccatalyst已计算。 net8.0-macos已计算。 net8.0-tvos已计算。 net8.0-windows已计算。 |
-
net8.0
- Microsoft.Extensions.Hosting (>= 8.0.0)
- System.Text.Json (>= 8.0.4)
NuGet包
此包未由任何NuGet包使用。
GitHub仓库
此包未由任何流行的GitHub仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
1.0.13 | 0 | 8/15/2024 |
1.0.13-beta.32 | 0 | 8/15/2024 |
1.0.13-beta.31 | 0 | 8/15/2024 |
1.0.11 | 43 | 8/14/2024 |
1.0.11-beta.30 | 0 | 8/15/2024 |
1.0.11-beta.29 | 0 | 8/15/2024 |
1.0.11-beta.28 | 17 | 8/14/2024 |
1.0.11-beta.27 | 20 | 8/14/2024 |
1.0.11-beta.26 | 25 | 8/14/2024 |
1.0.10 | 41 | 8/14/2024 |
1.0.10-beta.25 | 28 | 8/14/2024 |
1.0.10-beta.24 | 17 | 8/14/2024 |
1.0.9 | 34 | 8/14/2024 |
1.0.9-beta.23 | 31 | 8/14/2024 |
1.0.8 | 57 | 8/13/2024 |
1.0.8-beta.22 | 29 | 8/13/2024 |
1.0.8-beta.21 | 30 | 8/13/2024 |
1.0.8-beta.20 | 30 | 8/13/2024 |
1.0.8-beta.19 | 29 | 8/13/2024 |
1.0.8-beta.18 | 29 | 8/13/2024 |
1.0.8-beta.17 | 40 | 8/13/2024 |
1.0.7-beta.16 | 45 | 8/6/2024 |
1.0.6 | 47 | 8/5/2024 |
1.0.4-beta.14 | 21 | 8/3/2024 |
1.0.4-beta.13 | 22 | 8/3/2024 |
1.0.4-beta.12 | 22 | 8/3/2024 |
1.0.4-beta.11 | 31 | 8/1/2024 |
1.0.4-beta.10 | 34 | 8/1/2024 |
1.0.3-beta.8 | 28 | 8/1/2024 |
1.0.3-beta.7 | 30 | 8/1/2024 |
1.0.2 | 59 | 7/26/2024 |
1.0.1 | 56 | 7/26/2024 |
1.0.0 | 56 | 7/25/2024 |