Python Libraries
Python Libraries
1. https://www.python.org/
Python
Python is a programming language that lets you work quickly and integrate systems more
effectively.
Python is a high-level, general-purpose programming language.
Its design philosophy emphasizes code readability with the use of significant indentation via the off-
side rule. Python is dynamically typed and garbage-collected.
2. https://www.djangoproject.com/
Django
Django makes it easier to build better web apps more quickly and with less code.
Django is a high-level Python web framework that encourages rapid development and clean,
pragmatic design. Built by experienced developers, it takes care of much of the hassle of web
development, so you can focus on writing your app without needing to reinvent the wheel. It’s free
and open source.
Ridiculously fast.
Django was designed to help developers take applications from concept to completion as quickly as
possible.
Reassuringly secure.
Django takes security seriously and helps developers avoid many common security mistakes.
Exceedingly scalable.
Page 2 of 10
Dept. of Software Engineering, Faculty of Computing
Some of the busiest sites on the web leverage Django’s ability to quickly and flexibly scale.
Django is a free and open-source, Python-based web framework that follows the model–template–
views (MTV) architectural pattern.It is maintained by the Django Software Foundation (DSF), an
independent organization established in the US as a 501(c)(3) non-profit.
Django's primary goal is to ease the creation of complex, database-driven websites. The framework
emphasizes reusability and "pluggability" of components, less code, low coupling, rapid
development, and the principle of don't repeat yourself.
Python is used throughout, even for settings, files, and data models. Django also provides an
optional administrative create, read, update and delete interface that is generated dynamically
through introspection and configured via admin models.
Some well-known sites that use Django include Instagram, Mozilla, Disqus, Bitbucket, Nextdoor and
Clubhouse.
3. https://flask.palletsprojects.com/en/2.3.x/
Flask
Flask is a micro web framework written in Python.
It is classified as a micro-framework because it does not require particular tools or libraries. It has
no database abstraction layer, form validation, or any other components where pre-existing third-
party libraries provide common functions. However, Flask supports extensions that can add
application features as if they were implemented in Flask itself.
Extensions exist for object-relational mappers, form validation, upload handling, various open
authentication technologies and several common framework related tools.
Applications that use the Flask framework include Pinterest and LinkedIn.
https://github.com/pallets/flask
Flask is a lightweight WSGI web application framework. It is designed to make getting started quick
and easy, with the ability to scale up to complex applications. It began as a simple wrapper around
Werkzeug and Jinja and has become one of the most popular Python web application frameworks.
https://wsgi.readthedocs.io/en/latest/
Flask offers suggestions, but doesn't enforce any dependencies or project layout. It is up to the
developer to choose the tools and libraries they want to use. There are many extensions provided
by the community that make adding new functionality easy.
Page 3 of 10
Dept. of Software Engineering, Faculty of Computing
4. https://fastapi.tiangolo.com/
FastAPI
FastAPI framework, high performance, easy to learn, fast to code, ready for production
License MIT
Documentation: https://fastapi.tiangolo.com
Source Code: https://github.com/tiangolo/fastapi
FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.7+
based on standard Python type hints.
FastAPI is a modern web framework for building RESTful APIs in Python. It was first released in 2018
and has quickly gained popularity among developers due to its ease of use, speed and robustness.
FastAPI is based on Pydantic and uses type hints to validate, serialize, and deserialize data. It also
automatically generates OpenAPI documentation for APIs built with it.
FastAPI fully supports asynchronous programming and can run on Gunicorn and ASGI servers such
as Uvicorn and Hypercorn, making it a good choice for production environments. To improve
developer-friendliness, editor support was considered since the project's earliest days.
Page 4 of 10
Dept. of Software Engineering, Faculty of Computing
https://pandas.pydata.org
pandas is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool,
built on top of the Python programming language.
Pandas is a software library written for the Python programming language for data manipulation
and analysis. In particular, it offers data structures and operations for manipulating numerical tables
and time series.
It is free software released under the three-clause BSD license.
Initial release date: January 11, 2008
Programming languages: Python, C, Cython
Developer: Wes McKinney
License: New BSD License
Preview release: 2.0rc1 / 15 March 2023
Repository: github.com/pandas-dev/pandas
Stable release: 2.0.3 / 28 June 2023;
https://github.com/pandas-dev/pandas
pandas is a Python package that provides fast, flexible, and expressive data structures designed to
make working with "relational" or "labeled" data both easy and intuitive. It aims to be the
fundamental high-level building block for doing practical, real world data analysis in Python.
Additionally, it has the broader goal of becoming the most powerful and flexible open source data
analysis / manipulation tool available in any language. It is already well on its way towards this goal.
6. https://scikit-learn.org/stable/
Scikit-learn
Machine Learning in Python
Simple and efficient tools for predictive data analysis
Accessible to everybody, and reusable in various contexts
Built on NumPy, SciPy, and matplotlib
Open source, commercially usable - BSD license
scikit-learn is a free software machine learning library for the Python programming language.
It features various classification, regression and clustering algorithms including support-vector
machines, random forests, gradient boosting, k-means and DBSCAN, and is designed to interoperate
Page 5 of 10
Dept. of Software Engineering, Faculty of Computing
with the Python numerical and scientific libraries NumPy and SciPy. Scikit-learn is a NumFOCUS
fiscally sponsored project.
7. https://scrapy.org/
Scrapy
An open source and collaborative framework for extracting the data you need from websites.
In a fast, simple, yet extensible way.
Maintained by Zyte (formerly Scrapinghub) and many other contributors
Scrapy is a free and open-source web-crawling framework written in Python and developed in
Cambuslang. Originally designed for web scraping, it can also be used to extract data using APIs or
as a general-purpose web crawler. It is currently maintained by Zyte, a web-scraping development
and services company.
Programming language: Python
Initial release date: June 26, 2008
Developer(s): Zyte (formerly Scrapinghub)
Stable release: 2.9.0 / 8 May 2023;
8. https://pypi.org/project/beautifulsoup4/
Beautiful Soup
Beautiful Soup is a library that makes it easy to scrape information from web pages.
It sits atop an HTML or XML parser, providing Pythonic idioms for iterating, searching, and
modifying the parse tree.
Beautiful Soup is a Python package for parsing HTML and XML documents.
It creates a parse tree for parsed pages that can be used to extract data from HTML, which is useful
for web scraping.
9. https://scikit-learn.org/stable/
scikit-learn is a free software machine learning library for the Python programming language. It
features various classification, regression and clustering algorithms including support-vector
machines, ... Wikipedia
10. https://scipy.org/
SciPy is a free and open-source Python library used for scientific computing and technical
computing. SciPy contains modules for optimization, linear algebra, integration, interpolation,
special functions, FFT, signal and image processing, ODE solvers and other tasks common in science
and engineering.
11. https://matplotlib.org/
Matplotlib is a plotting library for the Python programming language and its numerical mathematics
extension NumPy. It provides an object-oriented API for embedding plots into applications using
general-purpose GUI toolkits like Tkinter, wxPython, Qt, or GTK.
Initial release date: 2003
Original author: John D. Hunter
Programming language: Python
Developer(s): Michael Droettboom, et al
Engine: Cairo, Anti-Grain Geometry
License: Matplotlib license
Stable release: 3.7.2 / 5 July 2023;
12. https://seaborn.pydata.org/
To see the code or report a bug, please visit the GitHub repository.
https://github.com/mwaskom/seaborn
General support questions are most at home on stackoverflow, which has a dedicated channel for
Page 8 of 10
Dept. of Software Engineering, Faculty of Computing
seaborn.
https://stackoverflow.com/questions/tagged/seaborn/
13. https://pytorch.org/
Repository:
https://github.com/pytorch/pytorch
PyTorch is a machine learning framework based on the Torch library, used for applications such
as computer vision and natural language processing, originally developed by Meta AI and now part
of the Linux Foundation umbrella. It is free and open-source software released under the modified
BSD license.
Programming languages: Python, C++
Initial release date: September 2016
Developer: Linux Foundation, Meta AI
License: BSD-3
Operating system: Linux; macOS; Windows
Platform: IA-32, x86-64, ARM64
14. https://numpy.org/
Repository:
https://github.com/numpy/numpy
NumPy
NUMERICAL COMPUTING TOOLS
NumPy offers comprehensive mathematical functions, random number generators, linear algebra
routines, Fourier transforms, and more.
OPEN SOURCE
Distributed under a liberal BSD license:
https://github.com/numpy/numpy/blob/main/LICENSE.txt
NumPy is developed and maintained publicly on GitHub by a vibrant, responsive, and diverse
community.
Page 9 of 10
Dept. of Software Engineering, Faculty of Computing
NumPy is a library for the Python programming language, adding support for large, multi-
dimensional arrays and matrices, along with a large collection of high-level mathematical functions
to operate on these arrays
Programming languages: Python, C
Initial release date: 1995
Developer: Travis Oliphant
License: BSD
Stable release: 1.25.1 / 8 July 2023;
15. https://www.anaconda.com/
Anaconda is a distribution of the Python and R programming languages for scientific computing,
that aims to simplify package management and deployment. The distribution includes data-science
packages suitable for Windows, Linux, and macOS. Wikipedia
Programming language: Python
Developer: Continuum analytics
Initial release date: July 17, 2012
License: Freemium (Miniconda and the Individual Edition are free software, but the other editions
are software as a service) - Freemium, a portmanteau of the words "free" and "premium", is a
pricing strategy by which a basic product or service is provided free of charge, but money is charged
for additional features, services, or virtual or physical goods that expand the functionality of the
free version of the software.
Operating system: Windows, macOS, Linux
Stable release: 2022.10 / 18 October 2022;
16. https://www.jetbrains.com/pycharm/
PyCharm - JetBrains
The Python IDE for Professional Developers