Top 14 MOST famous Python libraries & frameworks

Top 14 MOST famous Python libraries & frameworks

Hello everyone! I am your host Yasoob from
and in this video, we will be taking a look at my favorite 14 top Python libraries and
frameworks. The very first library we will be taking a
look at is the requests library by Kenneth Reitz. I love this library and it has made the lives
of so many Python developers so much easier. It comes pre-packaged with a lot of the required an optional HTTP and HTTPS functionality. You can submit multi-part forms or you can
do streaming downloads. I have personally not encountered any web
requests related use case which this library has not been able to handle by default. The next library is the tqdm library. tqdm is an Arabic word and is pronounced taqaddum
which means progress. This library makes your regular for and while
loops in Python so much more visually appealing and informative. It gives your loops a smart progress bar. Just wrap any iterable with taqaddum and you
are done. Do you remember the requests library we talked
about? Well, you can also wrap the object returned
by requests in taqaddum and you will have a beautiful file download progress bar. How many times have you ever had to manipulate
images by hand? What if there was a library which you can
use to automate boring image manipulation tasks. Well, look no further. The Pillow library does exactly that. You can use Pillow to crop, rotate, scale
and sharpen your images. You can also create thumbnails and do all
sorts of crazy image manipulation tasks with this extremely useful and simple image processing
library. I remember a time when I had to print out
300 id cards. I could either waste one complete paper to
print one id card or I could layout 6 id cards on one page and print the 300 id cards more
efficiently while saving a ton of paper. Needless to say, I used Pillow to automate
the task. It saved me hours of work and in the end,
everyone was happy. Do you know the original Google crawler was
partly written in Python? If you ever want to create your own crawler
or scraper you can use this next library. It is not exactly a library but rather more
of a framework. Scrapy is an advanced web scraping library
which allows you to extract data from almost all sorts of websites. Scrapy has builtin login handling, redirect
handling, and request throttling. It also takes care of robots.txt file so that
you can scrape websites without putting a lot of burden on a particular website. In just a few lines of Python code, you can
start extracting data from LinkedIn, Steam or any other favorite website of yours. Python is increasingly being used for Data
science. This increasing popularity can be attributed
to a couple of really important libraries. The first one is numpy. It is the fundamental package for scientific
computing with Python. There are a lot of really good numpy tutorials
out there which can help get you up to speed very quickly. It adds support for large, multi-dimensional
arrays and matrices, along with a large collection of high-level mathematical functions to operate
on those arrays. The major benefit of using numpy as compared
to regular Python lists is that numpy arrays are space and time efficient and can do the
same task much more quickly. Next up we have pandas. Pandas stands for “Python Data Analysis
Library” and is a gamechanger when it comes to data analysis with Python. Pandas takes data from a CSV, TSV or a SQL
database and creates a Python object with rows and columns which you can easily manipulate. Pandas can handle missing data and time series
data. It uses Numpy under the hood and hence is
extremely fast. Pandas has been used extensively in production
in financial applications and is increasing in popularity day by day. All of the network developers and ethical
hackers among you will love this next library. Scapy is a powerful interactive packet manipulation
program written in Python. It is able to forge or decode packets of a
wide number of protocols, send them on the wire, capture them, match requests and replies,
and much more. It can easily handle most classical tasks
like scanning, tracerouting, probing, attacks and network discovery. When you are exploring data using numpy and
pandas you often need to plot it as well. That is where matplotlib comes in play. It is a Python 2D plotting library which produces
publication quality figures. You can generate plots, histograms, bar charts
and all sorts of other charts with just a few lines of code. It is extensively used by the scientific community
to plot their findings using Python. It is usually used to plot inline charts in
the Jupyter Notebook. There are countless GUI libraries for Python. There is PyQt, Pyside, wxPython, Tkinter among
others. However when you want to develop mobile apps
then you always hear about Kivy first. Kivy is a Python library for rapid development
of cross-platform GUI applications. Before Kivy it was extremely hard to use Python
to create apps for Android and iOS but now not only is it doable but also extremely easy. The apps made with Kivy are not as performant
as native apps but if you want to use Python to develop them then kivy is your best option. Next up we have nltk. nltk is a Natural Language
Processing toolkit for Python. It assists in analyzing natural text and helps
the computer to make sense of it. nltk can be used for automatic article summarization,
topic segmentation, and sentiment analysis. It is also used to create applications like
Alexa and Google Assistant. This list would be incomplete without a machine
learning related library. Let’s talk about keras. Keras is a high-level neural networks API,
written in Python by a Google engineer. It allows for easy and fast prototyping of
your neural networks. It supports both convolutional networks and
recurrent networks, as well as combinations of the two and it runs seamlessly on CPU and
GPU. Instead of using Tensorflow directly you can
use Keras as a front-end. Keras’s interface is much more simpler as
compared to tensorflow and you don’t have to worry about a lot of low-level details. When you are dealing with databases in Python
there is a high probability that you will encounter SQLAlchemy. SQLAlchemy is a well-regarded and battle-tested
database toolkit and object-relational mapper (ORM) implementation written in Python. SQLAlchemy provides a generalized interface
for creating and executing database-agnostic code without needing to write SQL statements. A benefit many developers enjoy with SQLAlchemy
is that it allows them to write Python code in their project to map from the database
schema to the applications’ Python objects. No SQL is required to create, maintain and
query the database. Now let’s talk about the web development frameworks
in Python. Django is a high-level Python Web framework
which takes out most of the effort from developing a web application. It comes pre-packaged with most of the functionality
you would expect from a web framework. It comes with an ORM, user authentication
and authorization code and an admin interface. It is used by Pinterest, Instagram, Disqus,
and NASA. YouTube is full of really good Django tutorials
which can help you get up to speed with this amazing web development framework. Next up we have twisted. Twisted is an event-driven networking engine
written in Python. It contains implementations for a ton of different
protocols so most of the time you will have access to a proper API which you can use to
talk to any remote system. It contains implementation for HTTP, SMPT,
SSH, telnet and a whole load of other protocols. Twisted is used by a lot of very famous companies
like NASA,, FluidDB, and Lucasfilm. And yeah Lucasfilm is the same studio which
produced Star Wars and Indiana Jones. This list is no way near complete. There are a lot of other really amazing libraries
out there. I will be listing some of them in the description
below. I hope you enjoyed this video. I will be uploading a lot of Python-related
content in the near future so if you want to stay updated please press the thumbs up
and subscribe to my channel. See you next time!


Leave a Reply

Your email address will not be published.