IronPython alternatives and similar packages
Based on the "Implementations" category.
Alternatively, view IronPython alternatives based on common mentions on social networks and blogs.
-
MicroPython
MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems -
CPython
Default, most widely used implementation of the Python programming language written in C. Optimizing Static Compiler for Python. Uses type mixins to compile Python into C or C++ modules resulting in large performance gains. -
Jython
Implementation of Python programming language written in Java for the Java virtual machine (JVM).
InfluxDB - Power Real-Time Data Analytics at Scale
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of IronPython or a related project?
README
IronPython 3
There is still much that needs to be done to support Python 3.x. We are working on it, albeit slowly. We welcome all those who would like to help!
IronPython is an open-source implementation of the Python programming language which is tightly integrated with .NET. IronPython can use .NET and Python libraries, and other .NET languages can use Python code just as easily.
IronPython 3 targets Python 3, including the re-organized standard library, Unicode strings, and all of the other new features.
What? | Where? |
---|---|
Windows/Linux/macOS Builds | |
Downloads | |
Help |
Examples
The following C# program:
using System.Windows.Forms;
MessageBox.Show("Hello World!", "Greetings", MessageBoxButtons.OKCancel);
can be written in IronPython as follows:
import clr
clr.AddReference("System.Windows.Forms")
from System.Windows.Forms import MessageBox, MessageBoxButtons
MessageBox.Show("Hello World!", "Greetings", MessageBoxButtons.OKCancel)
Here is an example how to call Python code from a C# program.
var eng = IronPython.Hosting.Python.CreateEngine();
var scope = eng.CreateScope();
eng.Execute(@"
def greetings(name):
return 'Hello ' + name.title() + '!'
", scope);
dynamic greetings = scope.GetVariable("greetings");
System.Console.WriteLine(greetings("world"));
This example assumes that IronPython
has been added to the C# project as a NuGet package.
Code of Conduct
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.
State of the Project
The current target is Python 3.4, although features and behaviors from later versions may be included.
See the following lists for features from each version of CPython that have been implemented:
- [What's New In Python 3.0](WhatsNewInPython30.md)
- [What's New In Python 3.1](WhatsNewInPython31.md)
- [What's New In Python 3.2](WhatsNewInPython32.md)
- [What's New In Python 3.3](WhatsNewInPython33.md)
- [What's New In Python 3.4](WhatsNewInPython34.md)
- [What's New In Python 3.5](WhatsNewInPython35.md)
- [What's New In Python 3.6](WhatsNewInPython36.md)
Contributing
For details on contributing see the [Contributing](CONTRIBUTING.md) article.
Upgrading from IronPython 2
For details on upgrading from IronPython 2 to 3 see the [Upgrading from IronPython 2 to 3](Documentation/upgrading-from-ipy2.md) article.
Differences with CPython
While compatibility with CPython is one of our main goals with IronPython 3, there are still some differences that may cause issues. See [Differences from CPython](Documentation/differences-from-c-python.md) for details.
Package compatibility
See the [Package compatibility](Documentation/package-compatibility.md) document for information on compatibility with popular packages.
Installation
Binaries of IronPython 3 can be downloaded from the release page, available in various formats: .msi
, .zip
, .deb
, .pkg
. The IronPython package is also available on NuGet.
Build
See the [building document](Documentation/building.md). Since the main development is on Windows, bugs on other platforms may inadvertently be introduced - please report them!
Supported Platforms
IronPython 3 targets .NET Framework 4.6.2, .NET Standard 2.0, .NET Core 3.1 and .NET 6.0. The support for .NET and .NET Core follow the lifecycle defined on .NET and .NET Core Support Policy.