Python: A Brief Introduction

Bikash Santra

Research Scholar, Indian Statistical Institute, Kolkata

1. Characteristics of Python

a) Easy to learn, powerful programming language
b) Efficient high-level data structures
c) Simple but effective approach to object-oriented programming
d) Extensive standard libraries: freely available and open source
e) Easy integration of C and C++ codes

2. Installing Python

2.1 Choosing Suitable Python Version

a) Python 2.7 (https://www.python.org/)
b) Python 3.# (https://www.python.org/)
c) IPython (https://ipython.org/): Not a version but it has completion, history, shell capabilities, and a lot more.

2.2 Popular Python Editors

a) Jupyter Notebook (https://jupyter.org/)
b) Spyder (https://spyder-ide.github.io/)
c) PyCharm (https://www.jetbrains.com/pycharm/)

2.3 A Compact Python Distribution

a) Anaconda Distribution: IDE, Package Manager (Conda), and Python Interpreter (https://www.anaconda.com/)

2.4 Package Installation

Run the following commands in Terminal (Linux) or in command prompt (Windows):
a) conda install 'package_name' (for anaconda distribution)
b) pip install 'package_name' (for python 2.7 distribution)
c) pip3 install 'package_name' (for python 3.# distribution)

3. Pillars of Python: Packages

a) NumPy: Advance mathematical functionalities to python
b) SciPy: Library of algorithms and mathematical tools for python
c) matplotlib: Numerical plotting library for analyzing data
d) Pillow / OpenCV: Python Imaging Library
e) SciKit-Learn: Machine learning and image processing algorithms
f) pytorch / tensorflow / keras: Deep Learning
g) wxPython / pyQT: GUI toolkit

4. References

a) https://docs.python.org/2.7/tutorial/
b) http://jupyter-notebook.readthedocs.io/en/stable/index.html
c) https://pythontips.com/2013/07/30/20-python-libraries-you-cant-live-without/
d) https://activewizards.com/blog/top-15-libraries-for-data-science-in-python/