The Python install manager helps you to install, manage, and launch Python on Windows.
After install, the "py" command is your tool of choice - try "py help" to see what it can do! (Not working? You may need to uninstall the old "Python launcher", and check "Manage app execution aliases" to ensure the command is enabled.)
The Python Install Manager is a tool designed to simplify the installation, management, and launching of Python on Windows. It streamlines the process of working with Python environments, allowing users to efficiently handle multiple installations and configurations.
Key Features:
Centralized Management: Easily install, update, or remove Python versions directly through the command line.
Command-Line Integration: The "py" command provides a unified interface for launching Python scripts and managing environments.
Cross-Version Compatibility: Supports various Python versions, making it ideal for developers working on multiple projects with different requirements.
Open Source and Community-Driven: Developed by the Python community to ensure compatibility and reliability across Windows systems.
Audience & Benefit:
Ideal for developers, data scientists, and IT professionals who work with Python on Windows. The tool enables seamless management of Python installations, reducing manual effort and ensuring consistent environments across projects. By simplifying Python setup and maintenance, it enhances productivity and streamlines workflows.
README
Python Install Manager
This is the source code for the Python Install Manager app.
For information about how to use the Python install manager,
including troubleshooting steps,
please refer to the documentation at
docs.python.org/using/windows.
The original PEP leading to this tool was
PEP 773.
Build
To build and run locally requires pymsbuild
and a Visual Studio installation that includes the C/C++ compilers.
Any modification to a source file requires rebuilding.
The .py files are packaged into an extension module.
However, see the following section on tests, as test runs do not require a full
build.
For additional output, set %PYMANAGER_DEBUG% to force debug-level output.
This is the equivalent of passing -vv, though it also works for contexts that
do not accept options (such as launching a runtime).
This builds the native components separately so that you can quickly iterate on
the Python code. Any updates to the C++ files will require running the
pymsbuild step again.
This will rebuild the project and produce MSIX, APPXSYM and MSI packages.
You will need to sign the MSIX package before you can install it. This can be a
self-signed certificate, but it must be added to your Trusted Publishers.
Alternatively, rename the file to .zip and extract it to a directory, and
run Add-AppxPackage -Register \appxmanifest.xml to do a
development install. This should add the global aliases and allow you to test
as if it was properly installed.
Contributions
Contributions are welcome under all the same conditions as for CPython.
Release Schedule
As this project is currently considered to be in prerelease stage,
the release schedule is "as needed".
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Cursor is a new, intelligent IDE, empowered by seamless integrations with AI. Built upon VSCode, Cursor is quick to learn, but can make you extraordinarily productive.
The Go programming language is an open source project to make programmers more productive.
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Kate is a fast multi-document, multi-view text editor for programmers by KDE. It features stuff like LSP (Language Server Protocol) support, projects, multiple cursors and selections, git integration, folder wide search, horizontal and vertical splits, vi mode, syntax highlighting for 300+ languages, built-in terminal, dynamic word wrap and much more. It is available on Linux, BSD, Windows and MacOS.
Features:
- MDI, window splitting, window tabbing
- Spell checking
- CR, CRLF, LF newline support
- Encoding support (utf-8, utf-16, ascii etc.)
- Encoding conversion
- Regular expression based find & replace
- Syntax highlighting for 300+ languages
- Code and text folding
- Multiple cursors and multiple selections
- Block selection mode
- Auto indentation
- Auto completion support
- Shell integration
- Wide protocol support (http, ftp, ssh, webdav etc.)
- Extensible via plugins
- Integrated terminal
- Scriptable using JavaScript
- Vi mode
- Intellisense support using LSP (Language Server Protocol)
- DAP (Debug Adapter Protocol) support
- Vertical tabs/document list
- Lightweight project support. Kate can open folders as projects
- Code formatting using native formatters such as clang-format, prettier etc
- Built in filesystem browser
- CTags support
- Project wide and folder wide search
- Git integration
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Cursor is a new, intelligent IDE, empowered by seamless integrations with AI. Built upon VSCode, Cursor is quick to learn, but can make you extraordinarily productive.
The Go programming language is an open source project to make programmers more productive.
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Kate is a fast multi-document, multi-view text editor for programmers by KDE. It features stuff like LSP (Language Server Protocol) support, projects, multiple cursors and selections, git integration, folder wide search, horizontal and vertical splits, vi mode, syntax highlighting for 300+ languages, built-in terminal, dynamic word wrap and much more. It is available on Linux, BSD, Windows and MacOS.
Features:
- MDI, window splitting, window tabbing
- Spell checking
- CR, CRLF, LF newline support
- Encoding support (utf-8, utf-16, ascii etc.)
- Encoding conversion
- Regular expression based find & replace
- Syntax highlighting for 300+ languages
- Code and text folding
- Multiple cursors and multiple selections
- Block selection mode
- Auto indentation
- Auto completion support
- Shell integration
- Wide protocol support (http, ftp, ssh, webdav etc.)
- Extensible via plugins
- Integrated terminal
- Scriptable using JavaScript
- Vi mode
- Intellisense support using LSP (Language Server Protocol)
- DAP (Debug Adapter Protocol) support
- Vertical tabs/document list
- Lightweight project support. Kate can open folders as projects
- Code formatting using native formatters such as clang-format, prettier etc
- Built in filesystem browser
- CTags support
- Project wide and folder wide search
- Git integration
The Python Install Manager is a reliable solution for anyone looking to manage Python efficiently on Windows.
The release manager for the Python Install Manager on Windows is whoever is the
build manager for Windows for CPython.
Versioning
PyManager uses the two digit year as the first part of the version,
with the second part incrementing for each release.
This is to avoid any sense of features being tied to the version number,
and to avoid any direct association with Python releases.
The two digit year is used because MSI does not support major version fields
over 256. If/when we completely drop the MSI, we could switch to four digit
years, but as long as it exists we have to handle its compatibility constraints.
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.
IntelliJ IDEA is undoubtedly the top-choice IDE for software developers. It makes Java and Kotlin development a more productive and enjoyable experience.
IntelliJ IDEA is undoubtedly the top-choice IDE for software developers. It makes Java and Kotlin development a more productive and enjoyable experience.
IntelliJ IDEA is undoubtedly the top-choice IDE for software developers. It makes Java and Kotlin development a more productive and enjoyable experience.