How to Update All Python Packages?

By | December 29, 2021
How to Update All Python Packages

Python is well known for its huge set of libraries and the built-in pip package manager. Python comes with an in-built pip terminal command. pip allows Python developers to install and upgrade Python packages from the command terminal. pip is a terminal command tool and the built-in package manager for Python, and with its help, we can install, uninstall, upgrade and display Python packages easily.

Using the pip install –upgrade <package> command, we can upgrade a single package at a time. This means, in Python, we can not use the pip command to upgrade all the installed packages at once. However, we can use logic and create a Python program that can upgrade all the installed Python packages for us.

Note: pip does not provide any pip upgrade all packages or pip update package commands to upgrade all the packages at once.

Here in this Python tutorial, you will learn how to create a Python program to upgrade all the outdated Python packages and libraries. We are creating this program because pip does not support commands to upgrade all the packages at once. The steps we have provided below will work on every operating system.

How to Update All Python Packages Using pip and a Python Program?

We know that using the pip -install upgrade <package_name> command, we can upgrade the installed Python package. However, this pip command only allows you to upgrade a single package at a time. What if you wish to update all Python packages at once? To do so, follow the steps given below.

Vamware

The updation of all the Python packages is divided into two steps:

  1. Create the txt file of all the outdated packages.
  2. Write and execute a Python program that will update all the Python packages.

STEP 1: Create an outdated.txt file containing all the outdated Python packages using the pip command.

The first step is to create an outdated.txt file that will contain the names of all the Python packages that are outdated. We can use the following command to know which Python packages installed on your system are dated:

Vamware

pip list --outdated

The above pip command returns a list of all the installed outdated Python packages. Next, type this command on your terminal or command prompt:

pip list --outdated > outdated.txt

The above pip command will create an outdated.txt file on your system, and inside the outdated.txt file, all the outdated packages will be listed.

STEP 2: Write and execute a Python program that will update all the Python packages.

The second step to update all Python packages is to write and execute a Python program that will fetch all the packages from the outdated.txt file and update them. The Python program given below will do the work for you.

#upgrade.py

from subprocess import call
with open("outdated.txt",'r') as packages_file:
    #these two readline() for first 2 rows
    packages_file.readline()
    packages_file.readline()

    package= True

    while package:
        package= packages_file.readline()
        if package.split():
            package_name =package.split()[0]
            print("Update-->",package_name)
            call(f"pip install --upgrade {package_name} " , shell=True)

Execute the Program

C:\Users\singh\dev> python upgrade.py

<Note>: Make sure that the upgrade.py and outdated.txt files are on the same directory, else you need to specify the location for the optdated.txt file in the open() method.

Verify if all the Packages Have Been Upgraded

Using the pip list --outdated command you can check whether all the Python packages have been upgraded or not.

pip list --outdated

Conclusion

In the above Python tutorial, you learned how to update all Python packages at once. In Python, we do not have a single pip update command to update all the outdated packages. Nonetheless, you can use the Python code mentioned above to do so. It can be difficult to individually trace all the outdated packages in Python, especially if you have a lot of them. Thankfully, we have the pip list –outdated command to save the effort.

If you have any queries or suggestions related to this article or the program provided above, please let us know by commenting down below. We will try to solve your query as soon as possible.

Python Tutorials

Introduction

Flow Control

Functions

Datatypes

File Handling

Object & Class

Additional Tutorials

Author: Vinay

I am a Full Stack Developer with a Bachelor's Degree in Computer Science, who also loves to write technical articles that can help fellow developers.

Leave a Reply

Your email address will not be published. Required fields are marked *