CSnakes 1.0.13

dotnet add package CSnakes --version 1.0.13                
NuGet\Install-Package CSnakes -Version 1.0.13                
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的 Install-Package 版本。
<PackageReference Include="CSnakes" Version="1.0.13" />                
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件以引用此包。
paket add CSnakes --version 1.0.13                
#r "nuget: CSnakes, 1.0.13"                
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中以引用此包。
// Install CSnakes as a Cake Addin
#addin nuget:?package=CSnakes&version=1.0.13

// Install CSnakes as a Cake Tool
#tool nuget:?package=CSnakes&version=1.0.13                

CSnakes - 一个将 Python 代码嵌入 .NET 项目的工具

文档

NuGet Version

<img src="docs/res/logo.jpeg" alt="drawing" width="200"/>

CSnakes 是一个 .NET 源代码生成器和运行时,您可以使用它将 Python 代码和库嵌入到您的 .NET 解决方案,而无需 REST、HTTP 或微服务。

image

功能

  • .NET 标准 2.0 (.NET 6-8)
  • 支持 Python 3.9-3.13
  • 支持虚拟环境和 C-扩展
  • 支持 Windows、macOS 和 Linux
  • 使用 Python 的 C-API 在 .NET 进程中直接快速调用 Python 代码
  • 使用 Python 类型提示以生成与 .NET 本地类型兼容的函数签名
  • 支持嵌套序列和映射类型 (tupledictlist)
  • 支持默认值

例子

给定以下名为 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 类型。

常见问题解答 (FAQ)

有关更多信息,请参阅 FAQ

产品 兼容和额外的计算目标框架版本。
.NET net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。
NET Core netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。
.NET Standard netstandard2.0 兼容。 netstandard2.1 已计算。
.NET Framework net461已计算。 net462已计算。 net463已计算。 net47已计算。 net471已计算。 net472已计算。 net48已计算。 net481已计算。
MonoAndroid monoandroid已计算。
MonoMac monomac已计算。
MonoTouch monotouch已计算。
Tizen tizen40已计算。 tizen60已计算。
Xamarin.iOS xamarinios已计算。
Xamarin.Mac xamarinmac已计算。
Xamarin.TVOS xamarintvos已计算。
Xamarin.WatchOS xamarinwatchos已计算。
兼容的目标框架
包含的目标框架(在包中)
了解更多关于目标框架.NET Standard的信息。

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 27 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 21 8/14/2024
1.0.11-beta.26 24 8/14/2024
1.0.10 28 8/14/2024
1.0.10-beta.25 26 8/14/2024
1.0.10-beta.24 22 8/14/2024
1.0.9 29 8/14/2024
1.0.9-beta.23 27 8/14/2024
1.0.8 31 8/13/2024
1.0.8-beta.22 30 8/13/2024
1.0.8-beta.21 30 8/13/2024
1.0.8-beta.20 32 8/13/2024
1.0.8-beta.19 29 8/13/2024
1.0.8-beta.18 28 8/13/2024
1.0.8-beta.17 38 8/13/2024
1.0.7-beta.16 46 8/6/2024
1.0.6 27 8/5/2024
1.0.4-beta.14 20 8/3/2024
1.0.4-beta.13 20 8/3/2024
1.0.4-beta.12 20 8/3/2024
1.0.4-beta.11 30 8/1/2024
1.0.4-beta.10 32 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 54 7/26/2024
1.0.0 42 7/25/2024