Python Software

What are the basic tools by which I can create Python software?

For Example:
For C/C++ Development: Visual Studio
For C#: Visual Studio with .NET Framework

ANY text editor. You don’t need a specific tool. All you need is something that can create a source file, and then you run that file.

A lot of people use and love VS Code; plenty of people use Idle, which comes with Python and is written in Python; I personally use SciTE; there’ll be a few Emacs fans around; there’s almost no wrong answers here. [1]


  1. Windows Notepad is a wrong answer. ↩︎

The only basic tool needed for creating software with any language, is its compiler/interpreter and its suite. When you install any compiler, you get all the tools needed - including the standard library code. (Python compiles to a bytecode form that usually is then interpreted immediately; when you import a module, it can leave behind a bytecode file that can be reused later.)

Everything else is support to try to make the job easier. The tools that you mention are so-called “integrated development environments”. They usually supply their own compiler etc., and then they provide a GUI for editing code, compiling and running etc., and build in other tools for analyzing the code. But you don’t need any of these. The only basic tool you need is a text editor, so that you can actually write the code. Just like you don’t need special software to make a simple web page; you can type HTML code in a .html file and then open it in your browser.

There are a huge number of IDEs available, some designed for specific languages and some designed to try to support any language. C# is a bit of a special case, because Microsoft is in control of the language development and of the .NET platform, and they really want everyone to use Visual Studio (in part so they can convince people to upgrade licenses and pay for a more professional product). But the compiler and its suite are open source, and available separately.

If you like using IDEs and you want to find an IDE for Python, it is as easy as putting python ide into any search engine. When you get Python from python.org, it also includes a simple IDE called IDLE. Not so many people use it - it doesn’t provide a lot of features and it’s perhaps a bit ugly - but it’s a way that beginners can avoid the command line.

Any given language may also have multiple implementations available. For example, C code can be compiled with Visual Studio’s built-in compiler, or with GCC, Clang (built on LLVM) or many other compilers. For Python there is the reference implementation that you get from python.org, and there is also PyPy, Jython, Brython (this one is specifically for using Python on a JavaScript VM so that it can run as part of a webpage) and many more. There are even implementations that use .NET.

As a side note, I’ve used C# for a few jobs (mostly game modding eg Kerbal Space Program, where the way to create mods is to write C# code), and I don’t touch Visual Studio to do it. Much easier to stick to Mono run from a command line.