
Security News
Node.js Moves Toward Stable TypeScript Support with Amaro 1.0
Amaro 1.0 lays the groundwork for stable TypeScript support in Node.js, bringing official .ts loading closer to reality.
github.com/ironlanguages/ironpython3
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 that 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 |
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.
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.
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:
For details on contributing see the Contributing article.
For details on upgrading from IronPython 2 to 3 see the Upgrading from IronPython 2 to 3 article.
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 for details.
See the Package compatibility document for information on compatibility with popular packages.
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. See the installation document for detailed instructions on how to install a standalone IronPython interpreter on various operating systems and .NET frameworks.
See the building document. Since the main development is on Windows, bugs on other platforms may inadvertently be introduced - please report them!
IronPython 3 targets .NET Framework 4.6.2, .NET Standard 2.0 and .NET 6.0. The support for .NET and .NET Core follow the lifecycle defined on .NET and .NET Core Support Policy.
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Amaro 1.0 lays the groundwork for stable TypeScript support in Node.js, bringing official .ts loading closer to reality.
Research
A deceptive PyPI package posing as an Instagram growth tool collects user credentials and sends them to third-party bot services.
Product
Socket now supports pylock.toml, enabling secure, reproducible Python builds with advanced scanning and full alignment with PEP 751's new standard.