Popular python packages
Tags: python, beginners
Published: 2020-03-03 15:47:07

In this post I'll talk about some popular <a href="https://pypi.org/">Python packages</a>. These packages are used for a variety of purposes. You can install modules (packages) with the Python package manager <a href="https://pythonbasics.org/how-to-use-pip-and-pypi/">pip</a>.

## Desktop software

For making a desktop applications (*GUI graphical interface*), you can use one of these packages. You can make any desktop software you want, including all the widgets (buttons, listbox, textbox etc)

|Module|Description|
|---|---|
| <a href="https://www.riverbankcomputing.com/software/pyqt/">PyQt</a> | Make modern desktop software (QT development libraries for Python), (<a href="https://pythonbasics.org/pyqt-hello-world/">hello world tutorial</a>)
| <a href="https://wxpython.org/">wxpython</a> | GUI programming framework in Python, with architecture similar to MFC
| <a href="https://wiki.python.org/moin/TkInter">tkinter</a> | Default module for building desktop software, <a href="https://pythonbasics.org/tkinter/">tkinter tutorial</a>

![qt framework](https://dev-to-uploads.s3.amazonaws.com/i/fnawuaya7p5vh2ns77fd.png)

## Web apps

To make a web app, you can use a web framework. Python is great for web development. You can easily <a href="https://www.pythonanywhere.com/?affiliate_id=00535ced">deploy Python</a> to the web.

|Module|Description|
|---|---|
| <a href="https://www.djangoproject.com/">Django</a> | Open source web development framework that encourages rapid development and follows the MVC design
| <a href="https://flask.palletsprojects.com/">Flask</a> | A simple Web framework, simple but powerful. (<a href="https://gumroad.com/l/IMzBy">course</a>)

![flask web app](https://dev-to-uploads.s3.amazonaws.com/i/j26ven2jsoypml9ngpj0.jpeg)

## Scientific computing

For scientific computing, there are all kinds of modules. If you want to do scientific computing, these are good:

|Module|Description|
|---|---|
| <a href="https://matplotlib.org/">Matplotlib</a> | Use of third-party libraries like matlab implemented in Python, to draw some high-quality two-dimensional graphics mathematics
| <a href="https://www.scipy.org/">SciPy</a> | Python-based matlab implementation, aimed at achieving all the features of matlab
| NumPy | Python-based scientific computing third-party libraries, provides a matrix, linear algebra, Fourier transforms, etc. Solutions

![matplotlib](https://dev-to-uploads.s3.amazonaws.com/i/3m3znkuguwfff3y819nu.png)

## Web scraping and others

For webpage scraping or data mining (web), there are some modules available. These modules let you grab a webpage and work with the data on that page.

|Module|Description|
|---|---|
| <a href="https://pypi.org/project/beautifulsoup4/">BeautifulSoup</a> | robust fault tolerance. Pages dealing with very powerful package
| <a href="https://pythonhosted.org/pyquery/">PyQuery</a> |  like jQuery, document processing

Other packages that are useful

|Module|Description|
|---|---|
| MySQLdb | To connect MySQL database, <a href="https://pythonspot.com/mysql-with-python/">example</a>
| <a href="https://pillow.readthedocs.io/">PIL</a> | Python-based image processing library, powerful, graphic file format support for a wide range of images
| <a href="https://www.pygame.org/">PyGame</a> | Python-based multimedia and game development software development module
| Sh Systems Management | sh lets you perform the same function execute shell commands like terminal
| <a href="https://docs.python.org/3/library/pickle.html">Pickle (cPickle)</a> | export and import Python objects
| <a href="https://docs.python.org/3/library/json.html">Json</a> | work with json data in python
| Random | generate random number
| Datetime | get date, hour, minute