pythonnet 3.1.0
pip install pythonnet
Released:
.NET and Mono integration for Python
Navigation
Verified details
These details have been verified by PyPIMaintainers
π Avatar for filmor from gravatar.comfilmor π Avatar for lostmsu from gravatar.com
lostmsu π Avatar for vmuriart from gravatar.com
vmuriart
Unverified details
These details have not been verified by PyPIProject links
Meta
-
License Expression: MIT
SPDX License Expression - Author: The Contributors of the Python.NET Project
- Requires: Python <3.15, >=3.10
Classifiers
- Development Status
- Intended Audience
- Operating System
- Programming Language
Project description
π Join the chat at https://gitter.im/pythonnet/pythonnet
π stackexchange shield
π pypi package version
π conda-forge version
π python supported shield
π nuget preview shield
π nuget release shield
Python.NET is a package that gives Python programmers nearly seamless integration with the .NET Common Language Runtime (CLR) and provides a powerful application scripting tool for .NET developers. It allows Python code to interact with the CLR, and may also be used to embed Python into a .NET application.
Calling .NET code from Python
Python.NET allows CLR namespaces to be treated essentially as Python packages.
importclrfromSystemimport StringfromSystem.Collectionsimport *
To load an assembly, use the AddReference function in the clr module:
importclrclr.AddReference("System.Windows.Forms")fromSystem.Windows.Formsimport Form
By default, Mono will be used on Linux and macOS, .NET Framework on Windows. For details on the loading of different runtimes, please refer to the documentation.
.NET Core
If .NET Core is installed in a default location or the dotnet CLI tool is on the PATH, loading it instead of the default (Mono/.NET Framework) runtime just requires setting either the environment variable PYTHONNET_RUNTIME=coreclr or calling pythonnet.load explicitly:
frompythonnetimport loadload("coreclr")importclr
Embedding Python in .NET
You must set Runtime.PythonDLL property or PYTHONNET_PYDLL environment variable starting with version 3.0, otherwise you will receive BadPythonDllException (internal, derived from MissingMethodException) upon calling Initialize. Typical values are python38.dll (Windows), libpython3.8.dylib (Mac), libpython3.8.so (most other Unix-like operating systems).
Then call PythonEngine.Initialize(). If you plan to use Python objects from multiple threads, also call PythonEngine.BeginAllowThreads().
All calls to python should be inside a using (Py.GIL()) {/* Your code here */} block.
Import python modules using dynamic mod = Py.Import("mod"), then you can call functions as normal, eg mod.func(args).
Use mod.func(args, Py.kw("keywordargname", keywordargvalue)) or mod.func(args, keywordargname: keywordargvalue) to apply keyword arguments.
All python objects should be declared as dynamic type.
Mathematical operations involving python and literal/managed types must have the python object first, eg. np.pi * 2 works, 2 * np.pi doesnβt.
Example
staticvoidMain(string[]args){PythonEngine.Initialize();using(Py.GIL()){dynamicnp=Py.Import("numpy");Console.WriteLine(np.cos(np.pi*2));dynamicsin=np.sin;Console.WriteLine(sin(5));doublec=(double)(np.cos(5)+sin(5));Console.WriteLine(c);dynamica=np.array(newList<float>{1,2,3});Console.WriteLine(a.dtype);dynamicb=np.array(newList<float>{6,5,4},dtype:np.int32);Console.WriteLine(b.dtype);Console.WriteLine(a*b);Console.ReadKey();}}
Output:
1.0-0.958924274663-0.6752620892float64int32[ 6. 10. 12.]
Resources
Information on installation, FAQ, troubleshooting, debugging, and projects using pythonnet can be found in the Wiki:
.NET Foundation
This project is supported by the .NET Foundation.
Project details
Verified details
These details have been verified by PyPIMaintainers
π Avatar for filmor from gravatar.comfilmor π Avatar for lostmsu from gravatar.com
lostmsu π Avatar for vmuriart from gravatar.com
vmuriart
Unverified details
These details have not been verified by PyPIProject links
Meta
-
License Expression: MIT
SPDX License Expression - Author: The Contributors of the Python.NET Project
- Requires: Python <3.15, >=3.10
Classifiers
- Development Status
- Intended Audience
- Operating System
- Programming Language
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
Uploaded
CPython 3.10CPython 3.11CPython 3.12CPython 3.13CPython 3.14Windows x86Windows x86-64
Uploaded
CPython 3.10CPython 3.11CPython 3.12CPython 3.13CPython 3.14
File details
Details for the file pythonnet-3.1.0.tar.gz.
File metadata
- Download URL: pythonnet-3.1.0.tar.gz
- Upload date:
- Size: 250.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Gentoo","version":"2.18","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b34c382905d10a371509ffafd64cae0416305c28817738a9cd138336f4e9991
|
|
| MD5 |
26b24a1652fd1b74d922d4629905ba2c
|
|
| BLAKE2b-256 |
0557da1992e44663b71365c6e842c8d7fa453d4ec45fb99a68cfee5b7e944d3c
|
File details
Details for the file pythonnet-3.1.0-cp310.cp311.cp312.cp313.cp314-none-win32.win_amd64.whl.
File metadata
- Download URL: pythonnet-3.1.0-cp310.cp311.cp312.cp313.cp314-none-win32.win_amd64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.10, CPython 3.11, CPython 3.12, CPython 3.13, CPython 3.14, Windows x86, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Gentoo","version":"2.18","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7bdd4de03df3547a48122a3989265c8b31d5be0d19dadffa009eec7df8085e0b
|
|
| MD5 |
fefe43f53e255f183e55275c1f58358d
|
|
| BLAKE2b-256 |
db67031124fdcb937c266a3265118525bbf6dc13b8c79786d6a7290aecb6e7bb
|
File details
Details for the file pythonnet-3.1.0-cp310.cp311.cp312.cp313.cp314-none-any.whl.
File metadata
- Download URL: pythonnet-3.1.0-cp310.cp311.cp312.cp313.cp314-none-any.whl
- Upload date:
- Size: 217.6 kB
- Tags: CPython 3.10, CPython 3.11, CPython 3.12, CPython 3.13, CPython 3.14
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Gentoo","version":"2.18","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
698dd88edc198819ad63b624a6ebe76208c7b46e4fe13626f65e484f0358d6ba
|
|
| MD5 |
44ccfda577c18a2d432d2654dcb0f916
|
|
| BLAKE2b-256 |
ac4b52414f442624d2589f5374a48c08d5ae94f24bea67fc13a20a752884e5b7
|
