To delve deeper into setting up the Python environment, we need to remember the theoretical basics of the language. It will help you understand more about the environment and how to work with it.
Programming languages
What is a programming language? There are two related yet independent themes when it comes to this concept.
On the one hand, a programming language refers to the syntactic and semantic rules by which source code is written and works. Unlike natural languages, these rules are strict. Any tiny error can cause the code either not to run or not to work correctly.
For example, you can't write my name = 5
with a space in the variable name in Python. These rules exist in books and the heads of programmers and language developers. The entire set of rules exists as a specification — a separate document.
On the other hand, a programming language is a program that runs and compiles our code. It's usually called the execution environment.
The runtime environment is the kind of specification incarnate. It's sometimes called implementation. A particular language may have several implementations, including a reference implementation, which all others look up to. Different people and companies can develop different implementations.
Python has no dedicated specification, but there is a reference implementation. It's called CPython, a Python interpreter implemented in C. If you people talk about Python, they probably mean the CPython reference implementation. Other options usually have their names. For example, the language implementation for running programs on the .NET platform is called IronPython.