Popular Python Libraries and Their Application Domains
Popular Python Libraries and Their Application Domains
net/publication/349828209
CITATIONS READS
2 7,456
3 authors, including:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Vinothraj Thangarajah on 05 July 2021.
Abstract —Python is a general purpose, dynamic, high-level, and interpreted programming language. It supports Object
Oriented programming approach to develop applications. It is simple and easy to learn and provides lots of high-level
data structures.Python is supporting the development of a wide range of applications such as Build a website, develop a
Game, Perform Computer Vision (Facilities like face-detection and color-detection), Implement Machine Learning (Give
a computer the ability to learn), Enable Robotics, Perform Web Scraping (Harvest data from websites), Perform Data
Analysis. Automate a web browser, Perform Scripting, Perform Scientific Computing, Build Artificial Intelligence. In this
paper we first analyze you to Python programming language popularity and features. Moreover, this paper specifying
applications areas where python can be applied and popular libraries which are using in Python applications.
Keywords-Python, Python Library, Artificial Intelligence, Machine Learning, and Data Science
I. INTRODUCTION
Python is a powerful high-level, interpreted, interactive, and object-oriented scripting language created by Guido Van
Rossum in late 1980’s. The Python programming language is an object-oriented language, which means that it can model
real-world entities. Python codes are compiled line-by-line which makes debugging errors much easier and
efficient.Python architecture can be divided into three categories.
Python is considered as one of the most popular and in-demand programming language. A recent Stack Overflow survey
showed that Python has taken over languages such as Java, C, C++ and has made its way to the top.
Figure 1:Most Popular Technology - 2019 [10] Figure 2:Most Popular Technology - 2020 [11]
The following features and advantages that are the Python programming language is becoming so popular [2,3].
Easy to Learn and Use: Python is easy to learn as compared to other programming languages. Its syntax is
straightforward and much the same as the English language. There is no use of the semicolon or curly-bracket, the
indentation defines the code block. It is the recommended programming language for beginners.
Expressive Language: Python can perform complex tasks using a few lines of code. A simple example, the hello
world program you simply type print("Hello World"). It will take only one line to execute, while Java or C takes
multiple lines.
Interpreted Language: Python is an interpreted language; it means the Python program is executed one line at a
time. The advantage of being interpreted language, it makes debugging easy and portable.
Cross-platform Language: Python can run equally on different platforms such as Windows, Linux, UNIX, and
Macintosh, etc. So, we can say that Python is a portable language. It enables programmers to develop the software for
several competing platforms by writing a program only once.
Free and Open Source: Python is freely available for everyone. It is freely available on its official website
www.python.org. It has a large community across the world that is dedicatedly working towards make new python
modules and functions. Anyone can contribute to the Python community. The open-source means, "Anyone can
download its source code without paying any penny."
Object-Oriented Language: Python supports object-oriented language and concepts of classes and objects come into
existence. It supports inheritance, polymorphism, and encapsulation, etc. The object-oriented procedure helps to
programmer to write reusable code and develop applications in less code.
Extensible: Suppose that other languages such as C/C++ can be used to compile the code and thus it can be used
further in our Python code. It converts the program into byte code, and any platform can use that byte code.
Large Standard Library: It provides a vast range of libraries for the various fields such as machine learning, web
developer, and also for the scripting. There are various machine learning libraries, such as Tensor flow, Pandas,
Numpy, Keras, and Pytorch, etc. Django, flask, pyramids are the popular framework for Python web development.
GUI Programming Support: Graphical User Interface is used for the developing Desktop application. PyQT5,
Tkinter, Kivy are the libraries which are used for developing the web application.
Integrated: It can be easily integrated with languages like C, C++, and JAVA, etc. Python runs code line by line like
C, C++, Java. It makes easy to debug the code.
Embeddable: The code of the other programming language can use in the Python source code. We can use Python
source code in another programming language as well. It can embed other language into our code.
Dynamic Memory Allocation: In Python, we don't need to specify the data-type of the variable. When we assign
some value to the variable, it automatically allocates the memory to the variable at run time. Suppose we are assigned
integer value 50 to x, then we don't need to write int x = 50. Just write x = 50.
Components Integrity: Python is able to make an integrated connection between its codes and other components.
Tools such as Swing and SIP can import the compiled codes of other languages for usingin Python.
Python Programming language is widely used by companies and individuals in wide applications like building web apps,
data science and analytics, automating operation via Develops and building scalable and reliable enterprise applications.
Here in this article, we have listed down top companies in different industries using Python languages in various
applications.
Google: Python is one of the core languages used by Google, along with Java and Golang. It is extensively used in
multiple applications at Google, and receives priority support. Google uses Python as main language for its data team.
Some of the key Python contributors are Googlers and they continue to use, promote, and support the language actively.
Google is always sponsoring various Python conferences like PyCon. One of the examples is YouTube which uses
Python language for view video, control templates for website, administer video, access to canonical data, and many
more.
Facebook/Instagram: Python is the third most favored programming language used in Facebook after Php and C++. It is
used to maintain thousands of libraries and FB infrastructure.Python is main programming language of
Facebook/Instagram, especially in AI and Data Science. For example: Oculus team at Facebook uses Python and C++ for
developing VR hardware and software.
Uber: Python is key programming language in Uber tech stack. Their back end uses Node.js and Python. Their data team
uses both Python and R.
Reddit: Reddit is one of the largest sites at scale to use the Python as its main programming languages. Significant
portion of Reddit is built using python language.
Dropbox: Dropbox uses Python across their application development, infrastructure and operations. Their platform is
built by team of Python core developers.
Mozilla: Python is used in large scale to build system, CI configuration, test harnesses, command line tooling and
countless other scripts, tools or GitHub projects at Mozilla.
Netflix: Netflix uses python as main programming language. It use Python through the full content lifecycle, from
deciding which content to fund all the way to operating the CDN that serves the final video to 148 million+ members.
Netflix is also an active contributor of many python packages.
Python is widely used by finance companies and institutions like large scale banks, hedge funds, regulators etc. Here are
some of the list of top finance companies using python language.
Goldman Sachs: Goldman Sachs uses Python in their data team and as main programming language. For example:
Goldman Sachs uses Python for natural language processing in their Fixed Income, Currencies & Commodities
department. Similar applications/jobs of Python development can be checked on their career pages.
Paypal: Python is used to manage entire tech infrastructure. Their Braintree SDK for Express Checkout integration and
other apis uses Python as main programming language. There are good numbers of python code and api kits available on
their website as well on GitHub.
JP Morgan Chase: JP Morgan Chase is leading financial institutions dealing in investment banking, financial services
and asset management. It uses Python and Java as main programming languages. In data analytics, python is widely used
along with Hadoop and Hive. One example of Python is Python development using Enaml in Athen.
Consumer Financial Protection Bureau (CFPB): CFPB uses python language for running most of its applications. For
example: Its collab project which is a Django application is used for storing and looking up information on employees
and contractors.
Nasa: NASA uses Python extensively and open sources much of their software. Python is main language for data and
image processing for spatial data at Nasa. Different applications of python can be checked at code.nasa.gov.
CIA: CIA is using Python in its state sponsored hacking tools. They regularly document and publish stats regarding
python development at their agency.
Python is the most versatile language in the programming world, and it applicable in almost every domain of software
development. It helps us in taking care of our current programming task as well as lets us focus on the core functionality
of Python programming languages. Python makes its presence in every emerging field. It is the fastest-growing
programming language and can develop any application. [1,3, 4, 5].
2. Computer Vision: Computer vision is the construction of explicit, meaningful descriptions of physical objects from
their image. The output of computer vision is a description or an interpretation of structures in 3D scene.
be mixed and matched to build new approaches. fastai includes various features, such as a GPU-optimized computer
vision library which can be extended in pure Python, a new type dispatch system for Python along with a semantic
type hierarchy for tensors.
c) IPSDK: It is an image processing library in C++ and Python. The library offers a complete range of image processing
features to process datasets as well as a comprehensive and optimized range of functionalities for 2D and 3D image
processing. IPSDK automatically adjusts itself to the architecture and capabilities of the processor. The features of
this library include full PC cluster support, high performance and high availability computing.
d) Imutils: Imutils is a computer vision package that includes a series of OpenCV + convenience functions to make
basic image processing functions such as translation, rotation, resizing, skeletonization, displaying Matplotlib images,
sorting contours, detecting edges, among others quite easy.
e) Pytessarct: Pytessarct or Python-tesseract is an optical character recognition (OCR) tool for the Python language.
This tool is a wrapper for Google’s Tesseract-OCR Engine and helps in recognising and reading the text embedded in
an image.The tool is also useful as a stand-alone invocation script to tesseract, as it can read all image types supported
by the Pillow and Leptonica imaging libraries, including jpeg, png, gif, bmp, tiff, and others.
f) PyTorchCV: It is a PyTorch-based framework for computer vision tasks. The framework is a collection of image
classification, segmentation, detection, and pose estimation models. There are a number of implemented models in
this framework, including AlexNet, ResNet, ResNeXt, PyramidNet, SparseNet, DRN-C/DRN-D and more.
g) SimpleCV: It is one of the popular machine vision frameworks for building computer vision applications. Written in
Python, this library helps in getting access to several high-powered computer vision libraries such as OpenCV. The
framework is a collection of libraries and software that can be used to develop vision applications. It provides a
concise, readable interface for cameras, image manipulation, feature extraction and format conversion. It also allows
user to work with the images or video streams that come from webcams, Kinects, FireWire and IP cameras, or mobile
phones.
3. Graphical User Interface: Python is an interactive programming language and getting started with programming a
GUI (Graphical User Interface) framework is not much of a difficult task. Python has a diverse range of options for
GUI frameworks.
4. Game Development: Python is also used in the development of interactive games. There are libraries such as PySoy
which is a 3D game engine supporting Python 3, PyGame which provides functionality and a library for game
development. Games such as Civilization-IV, Disney’s Toontown Online, Vega Strike etc. have been built using
Python.
5. Web Application: Python can be used to make web-applications at a rapid rate. Why is that? It is because of the
frameworks Python uses to create these applications. There is common-backend logic that goes into making these
frameworks and a number of libraries that can help integrate protocols such as HTTPS, FTP, SSL etc. and even help
in the processing of JSON, XML, E-Mail and so much more.
take advantage of the power of Zope 3, A powerful object database for storage, Integrated security to ensure your
application and grant access to specific users, Grok component architecture helps developers lessen the
unpredictability of development, Offers the building blocks and other essential assets to develop custom web
applications for business needs.
f) Flask: Flask is a Python framework accessible under the BSD license, which is inspired by the Sinatra Ruby
framework. Flask relies upon the Werkzeug WSGI toolbox and Jinja2 template. The main purpose is to help develop
a strong web application base. Developers can develop the Python backend framework any way they need, however,
it was designed for applications that are open-ended. Flask has been used by big companies, which include LinkedIn
and Pinterest. Compared to Django, Flask is best suited for small and easy projects. Thus, you can expect a web
server development, support for Google App Engine as well as in-built unit testing. Key Features of Flask areBuilt-in
development server and debugger, RESTful request dispatching, Integrated unit testing support (code with quality),
Uses Jinja2 templating (tags, filters, macros, and more), 100% WSGI 1.0 compliant, multiple extensions provided by
the community that eases the integration of new functionalities.
6. Data Science: Python is the most widely used programming language today. When it comes to solving data science
tasks and challenges, Python never ceases to surprise its users. Most data scientists are already leveraging the power
of Python programming every day. Python is an easy-to-learn, easy-to-debug, widely used, object-oriented, open-
source, high-performance language, and there are many more benefits to Python programming. Python has been built
with extraordinary Python libraries that are used by programmers every day in solving problems.
regardless of which operating system you’re using or which output format you wish to use, Pandas itself can be used
as wrappers around MATLAB API to drive MATLAB like a cleaner, and Low memory consumption and better
runtime behavior. Matplotlib is particularly useful for Correlation analysis of variables, visualize 95 percent
confidence intervals of the models, Outlier detection using a scatter plot, and Visualize the distribution of data to gain
instant insights.
7. Machine Learning: Python seems to be winning battle as preferred language of MachineLearning. The availability
of libraries and open source tools make it ideal choice for developing ML models. Python has been the go-to choice
for Machine Learning and Artificial Intelligence developers for a long time. Python offers some of the best
flexibilities and features to developers that not only increase their productivity but the quality of the code as well, not
to mention the extensive libraries helping ease the workload.
IV. CONCLUSION
In this paper, we discussed the python programming as a more suitable choice for beginners and professional expert. This
paper elaborated the why this python more popular in this real-world era, features of this programming language such as
fast, easy, powerful, portable, simple, and free open source language that supports other technologies, and discussed the
applicable various domains of the python. This study has also specially analyzed popular python libraries which are using
their application domains.
REFERENCES
[1] K. R. Srinath, “Python – The Fastest Growing Programming Language,” International Research Journal of
Engineering and Technology (IRJET), vol. 4, Issue 12 pp. 354–357, December2017.
[2] Akshansh Sharma, Firoj Khan, Deepak Sharma, Dr. Sunil Gupta, “Python: The Programming Language of Future”
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN TECHNOLOGY, May 2020 | IJIRT | Volume 6
Issue 12 | ISSN: 2349-6002
@IJAERD-2020, All rights Reserved 25
International Journal of Advance Engineering and Research Development (IJAERD)
Volume 7, Issue 11, November-2020, e-ISSN: 2348 - 4470, print-ISSN: 2348-6406