Reading Time: 4 minutes
Handy Third-Party Modules in Python
Python has a huge collection of third-party modules, owing to its large community. Here's a list of most commonly used external modules. Each of the following modules is available on The Cheese Shop, can be installed using pip and imported using the import statement after installation. In front of the name of each module, there are two links. One links to its either its home page or its documentation having usage examples, the other is the module's page on The Cheese Shop.
S. No. | Module Name | Description |
---|---|---|
1. | matplotlib [1][2] | Generate 2-D plots, histograms, bar charts etc. with a few lines of code. |
2. | Beautiful Soup [1][2] | Scrape data out of HTML & XML documents. |
3. | NumPy [1][2] | Array processing for objects. |
4. | SciPy [1][2] | Mathematics, science, and engineering in Python. Depends on numpy. |
5. | Requests [1][2] | Most popular HTTP requests library in Python. |
6. | IPython [1][2] | A feature-packed alternative to the native Python interpreter. |
7. | Django [1][2] | Python's most famous web framework, which promotes rapid development and clean design. |
8. | Flask [1][2] | A microframework used to build minimalistic web applications. |
9. | tweepy [1][2] | Python's library to access Twitter API. |
10. | cryptography [1][2] | The de-facto standard library for Cryptography, offering encryption and decryption techniques. |
11. | psutil [1][2] | A cross-platform library in Python to fetch information on processes, CPU usage, memory usage & other system utilization factors. Supports Windows, Linux, OSX among other operating systems. |
12. | PDFMiner [1][2] | Extracts text from PDF documents, along with ability of converting PDF to HTML documents. |
13. | Pyramid [1][2] | Another widely used web framework with motto "The Start Small, Finish Big Stay Finished Framework." |
14. | pywin32 [1][2] | Provides a host of extension modules for interacting with Windows. |
15. | PyGTK [1][2] | A powerful GUI toolkit, using which BitTorrent client was developed. |
16. | Fixtures [2] | A useful module for Unit Testing in Python. |
17. | feedparser [1][2] | A library to facilitate Atom & RSS feeds. |
18. | pyglet [1][2] | An object-oriented programming interface for creating 3D animation and developing games. |
19. | mechanize [1][2] | Stateful programmatic web browsing module in Python, derived from a package in Perl by the same name. |
20. | wxPython [1][2] | Another widely used cross-platform GUI toolkit in Python. |
21. | Scapy [1][2] | A powerful packet analyzer and manipulator. |
22. | Pygame [1][2] | Gaming engine used by millions of Python developers worldwide to develop video games. |
23. | docopt [1][2] | Enables the users to create 'beautiful' command line interfaces in Python. |
24. | NLTK [1][2] | Natural Language toolkit to process natural language data. |
25. | prompt_toolkit [1][2] | A powerful library to build command line applications or terminal applications. |
26. | Plone [1][2] | A Content Management System in Python. |
27. | nose [1][2] | An extension to the builtin module unittest, used by millions of Python developers for test driven development. |
28. | Twisted [1][2] | An extensible framework for network application developers with sophisticated API. |
29. | pyquery [1][2] | A jQuery-like module for Python, supporting jquery queries on XML documents. |
30. | Scrapy [1][2] | An immensely useful framework for web scraping and web crawling. |
31. | Pillow [1][2] | Python Imaging Library for working with images. |
32. | SQLAlchemy [1][2] | Python SQL toolkit and Object Relational Mapper for developers to work with SQL in Python. |
33. | PyQt [1][2] | Another powerful GUI toolkit in Python, used alternatively to tkinter, wxPython & pyGtk. |
34. | SymPy [1][2] | A Python library for symbolic mathematics aiming to become a full-featured Computer Algebra System (CAS). |
35. | oset [2] | Ordered Sets, an extension to the builtin set data type. |
36. | web.py [1][2] | A simple & powerful web framework for Python, built by Aaron Swartz. |
37. | Pylint [1][2] | Static Code Checker for helping developers follow coding standards. |
38. | Boltons [1][2] | An extension to the builtin module, containing several utility types and utility functions. |
39. | pandas [1][2] | Provides flexible data structures for Data Analysis. |
40. | tqdm [1][2] | Enables to render progress bars with loops. Look for an illustrating gif on its PyPI page. |
41. | Markdown [1][2] | Module to implement a lightweight markup language called Markdown having simple text formatting syntax, which translates to HTML. |
42. | youtube_dl [1][2] | Provides a command-line program to download videos from YouTube.com and plenty more sites. |
43. | FuzzyWuzzy [1][2] | Used for comparing strings by calculating the difference between them. |
44. | Exrex [1][2] | Generates random/matching strings to a given regular expression. |
45. | OpenCV [1][2] | Open Source Computer Vision Library containing hundreds of computer vision algorightms designed for image processing, video analysis, object detection etc. |
46. | Fabric [1][2] | Enables the user to execute local or remote shell commands. |
47. | VPython[1][2] | Library that facilitates easy creation of navigable 3D displays and animations. |
48. | web2py [1][2] | A batteries included full-stack framewrok for rapid development of web-based applications. |
49. | Jinja2 [1][2] | A Template engine which employs expression language & can be used in conjunction with frameworks like Django. |
50. | Coverage [1][2] | Tells you which lines of code have been executed and which haven't. |
51. | virtualenv [1][2] | Helps create isolated Python environments for separate projects. |
52. | virtualenvwrapper [1][2] | Enables the user to manage different virtual environments with several command line commands. |
53. | Setuptools [1][2] | Helps to package projects and distribute them. |
54. | Selenium [1][2] | Used to automate interaction with a web browser. |
55. | Cython [1][2] | Enables developers to write C extenstions for Python. |
56. | Pygments [1][2] | A syntax highlighter for over 300 languages use in forums, wikis or other applications which cite code and want it to look good. |
57. | PyMongo [1][2] | Provides tools for interacting with MongoDB databases. |
58. | MySQL-python [1][2] | Provides tools for interacting with MySQL databases. |
59. | Sphinx [1][2] | Helps to create HTML/PDF documentation of projects. |
60. | pytest [1][2] | Very widely used testing tool which enables the user to write small tests for applications using assert statements. |
61. | cx_Oracle [1][2] | Provides tools for interacting with Oracle databases. |
62. | Arrow [1][2] | A well-received alternative to builtin modules to handle dates, times, and timestamps. |
63. | Whoosh [1][2] | Enables users to easily add search facility to their applications and websites. |
64. | Cheetah [1][2] | An open source template engine and code-generation tool, written in Python. |
65. | tabulate [1][2] | A pretty-printer for tabular data with a single function. |
That's the end of our list. Let us know if we missed any!
See also: 50+ Handy Standard Library Modules