Using Python, you can automate repeated tasks, create interactive/dynamic websites, make intelligent robots, perform deep learning/machine learning, do natural language processing, create games etc. Resources, links and libraries related to Python programming language are collected here for students and professionals interested to learn.
- Google Python Class - Best place to start learning Python.
- Real Python - Learn all things Python from the ground up.
- Learn Python thehardway - takes you from absolute zero to able to read and write basic Python to then understand other books on Python.
- Full Stack Python - open book that explains concepts in plain language and provides helpful resources for those topics..
- Planet Python - Most famous python blogs out there.
- Love Python - A blog on Python with tutorials, code, programs, tips and tricks, how-to, book-list etc.,
- Python Tips - Your daily dose of bite sized python tips.
- Python Tutorial - Tutorialspoint.
- Programming for Everybody (Getting Started with Python) - University of Michigan, Coursera.
- An Introduction to Interactive Programming in Python (Part 1) - Rice University, Coursera.
- An Introduction to Interactive Programming in Python (Part 2) - Rice University, Coursera.
- Learn Python - DataCamp.
- Learn Python - Codecademy.
- Librosa - Audio and Music processing in Python.
- audiolazy - Real-Time Expressive Digital Signal Processing (DSP) Package for Python.
- pyAudioAnalysis - A Python library for audio feature extraction, classification, segmentation and applications.
- Pydub - Manipulate audio with a simple and easy high-level interface.
- TimeSide - Audio processing framework for the web.
- mutagen - A Python module to handle audio metadata.
- mingus - An advanced, cross-platform music theory and notation package for Python with MIDI file and playback support.
- OpenCV - Computer Vision made easier with the help of OpenCV. Learn to apply state-of-the-art Computer Vision algorithms using Python.
- Mahotas - Computer Vision and Image Processing library for Python that has implementations of algorithms such as Haralick Texture etc.
- scikit-image - Collection of Image Processing algorithms for Python.
- Pillow - Image Processing library for Python which is much friendly than PIL (Python Imaging Library).
- PyOCR - An optical character recognition (OCR) tool wrapper for python. That is, it helps using various OCR tools from a Python program.
- Python Tesseract - An optical character recognition (OCR) tool for python. That is, it will recognize and "read" the text embedded in images.
- matplotlib - Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.
- Seaborn - Make plots even cute! Python visualization library based on matplotlib.
- Bokeh - An interactive visualization python library that targets modern web browsers for presentation.
- bqplot - Plotting library for Jupyter notebooks.
- Altair - A declarative statistical visualization library for Python, based on Vega and Vega-Lite
- Pygal - Python library to create beautiful SVG charts.
- PyGraphViz - Python interface to GraphViz (Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks.).
- VisPy - A Python library for interactive scientific visualization that is designed to be fast, scalable, and easy to use.
- PyQtGraph - A pure-python graphics and GUI library built on PyQt4 / PySide and numpy.
- Keras - Created by Franchois Chollet, Artificial Intelligence Researcher, Google, it is one of the best Deep Learning libraries for Python, that is simple, modular, and extensible.
- Caffe - Created by Yangqing Jia and developed by the Berkeley Vision and Learning Center (BVLC) and by community contributors.
- Caffe2 - A New Lightweight, Modular, and Scalable Deep Learning Framework.
- Theano - Primarily developed by a machine learning group at the Université de Montréal.
- TensorFlow - Originally developed by the Google Brain team for internal Google use before being released under the Apache 2.0 open source license on November 9, 2015.
- MXNet - Open-source deep learning framework that allows you to define, train, and deploy deep neural networks on a wide array of devices, from cloud infrastructure to mobile devices.
- PyTorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
- sklearn-theano - OverFeat and GoogleNet feature extractor for Python.
- Skorch - A scikit-learn compatible neural network library that wraps PyTorch.
- NeuPy - A Python library for Artificial Neural Networks.
- PyGame - A cross-platform set of Python modules designed for writing video games.
- Cocos2d - A family of open-source software frameworks for building cross-platform games & apps.
- Panda3D - A game engine, a framework for 3D rendering and game development for Python and C++ programs which is open-source and free for any purpose.
- PyOpenGL - The most common cross platform Python binding to OpenGL and related APIs.
- Tkinter - Python's de-facto standard GUI (Graphical User Interface) package.
- wxPython - A blending of the wxWidgets C++ class library with the Python programming language.
- PyQt - Set of Python v2 and v3 bindings for The Qt Company's Qt application framework and runs on all platforms supported by Qt including Windows, OS X, Linux, iOS and Android.
- Beautiful Soup - HTML and XML parsing, searching, modifying library for Python that makes web scraping easier.
- lxml - The most feature-rich and easy-to-use library for processing XML and HTML in the Python language.
- cssutils - A CSS Cascading Style Sheets library for Python.
- html5lib - A pure-python library for parsing HTML.
- pyquery - Allows you to make jquery queries on xml documents.
- untangle - Converts XML to a Python object.
- WeasyPrint - A visual rendering engine for HTML and CSS that can export to PDF.
- xmldataset - A Python library that simplifies the extraction of datasets from XML content.
- scikit-learn - Simple and efficient tools for Machine Learning, Data Mining and Data Analysis. You can find almost every Machine Learning algorithm implemented such as Random Forests, SVM, Logistic Regression, CART, Naive Bayes etc.
- PyFlux - Open source time series library for Python.
- Pexpect - Makes Python a better tool for controlling other applications.
- Pyenchant - Spellchecking library for Python, based on the excellent Enchant library.
- Whoosh - Python library of classes and functions for indexing text and then searching the index.
- SQLAlchemy - Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL.
- Selenium - Used to automate web browser interaction from Python.
- Fire - Library for automatically generating command line interfaces (CLIs) from absolutely any Python object.
Scientific Computing Stack
- NumPy - Working with matrices and arrays made much simpler! Who doesn't need NumPy!
- SciPy - Powerful mathematical computation library for Science and Engineering.
- Pandas - High-performance, easy-to-use data structures and data analysis tools for Python.
- Django - Makes it easier to build better Web apps more quickly and with less code - awesome-django
- Flask - A microframework for Python based on Werkzeug, Jinja 2 and good intentions - awesome-flask
- Tornado - A Python web framework and asynchronous networking library.
- Pyramid - A small, fast, down-to-earth, open source Python web framework - awesome-pyramid
- Bottle - A fast, simple and lightweight WSGI micro web-framework for Python.
In case if you found something useful to add to this article or you found a bug in the code or would like to improve some points mentioned, feel free to write it down in the comments. Hope you found something useful here.