Python Development

General

We should all be developing with and focusing on Python 3 and as time goes on this makes increasing sense. The current plan is that Python 2 will go to "end of life" on 1st January 2020, after which no more fixes/updates will be made, see PEP 373 -- Python 2.7 Release Schedule | Python.org for details. If you have to support Python 2, then try to make sure it is Python 2.7 as this is the most compatible and easiest to work with for Python 2/3 compatibility. It is also worth reading Porting Python 2 Code to Python 3 — Python 3.6.0 documentation for some help, background and overview.

Development Environment

There are many ways to approach development with Python. You can either select a basic code editor or choose a more "complete" Integrated Development Environment (IDE). I regularly use Notepad ++ and UltraEdit with Python as they offer good features like syntax highlighting and ways to execute/test your code but allow you to see/know exactly what is going on, nothing is hidden but they are basic.

I would strongly recommend investigating Visual Studio Code | Geoff Does Stuff which supports all the code editor functionality you would need as well as debugging, Python interpreter switching and more.

If you just want a quick look at an IDE, then IDLE is a good start, as this is included with Python itself. If you visit IntegratedDevelopmentEnvironments - Python Wiki you can see a list of IDEs, which can be a bit confusing. If you are already a Windows user and familiar with Visual Studio then you should consider adding Python support to Visual Studio. See Python Tools for Visual Studio, Python in Visual Studio | Microsoft Docs and Python Tools for Visual Studio for details.