Introduction¶
What is Python?¶
Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Source: python.org
interpreted: no compilation (contrary to Java, C/C++, Fortran)
object-oriented: based on the concept of objects, associated with attributes (object’s data) and methods (object’s procedures).
high-level: close to human languages (contrary to C, which is a middle-level language)
dynamic semantics: no variable declaration, possibility to mix-up data types.
Why use Python?¶
The main advantages of using Python are:
Presence of third-party modules (Python Package Index)
Extensive support libraries (NumPy for numerical calculations, Pandas for data analytics)
Open source and community development
Easy to learn
User-friendly data structures (lists, dictionaries, etc.)
Interactive (
ipython
,notebook
)Portable across Operating Systems
Source: geeksforgeeks.org.
Applications¶
The main applications are:
Machine learning (scikit-learn, TensorFlow)
Data visualization (matplotlib, basemap, PyNgl, cartopy)
Documentation (Sphinx, Read the Docs)
Data download (cdsapi for Climate Data Store, motuclient for Copernicus Marine Products)
Source: freecodecamp.org
They use Python¶
Famous Python users:
Dropbox: desktop client
Instragram: website
Netflix, Spotify: analytics for suggestions
Facebook: 21% of the codebase
Google: Python where we can, C++ where we must
Source: netguru.com