Characteristics and use.
WHAT IT IS
A dynamically typed, interpreted, multi-paradigm language emphasising readability.
WHAT DISTINGUISHES IT
Indentation defining structure, rather than braces A design philosophy favouring one obvious way to do things An extremely large ecosystem
WHAT IT IS USED FOR
Data analysis and machine learning Automation and scripting Web backends Scientific computing Education
WHY IT DOMINATES DATA WORK
The libraries are there, and they are mature.
WHAT IT IS SLOWER AT
Raw computation, compared with compiled languages.
WHAT MITIGATES THAT
Performance-critical libraries are implemented in lower-level languages, with Python directing them.
WHAT THAT MEANS PRACTICALLY
Numerical work is fast because the work happens outside Python.
WHAT TO BE AWARE OF
The lock preventing threads executing code simultaneously.
WHAT TO USE FOR COMPUTATION
Separate processes, or libraries releasing the lock.
WHO IT SUITS
Beginners, data practitioners, and anyone valuing speed of development.
WHAT TO ADD FOR LARGER PROJECTS
Type annotations, checked by a tool.