×

Installing Packages in Python

It's critical to understand that the term "package" here refers to a collection of software that must be installed (i.e. as a synonym for a distribution). It has nothing to do with the sort of package you import into your Python source code (i.e. a container of modules). The word "package" is commonly used in the Python community to refer to a distribution of code. There are those who prefer not to use the term "distribution" since it might be mistaken with a Linux distribution or another larger software distribution like Python itself.

Ensure that you can execute Python from the command line

Make sure you have Python installed and that the expected version is available from the command line before you continue. You may verify this by using the following command on your computer:

py --version

You should see something similar to Python 3.6.3 as a result. Please download Python 3.x from python.org or see the Hitchhiker's Guide to Python's Installing Python section if you do not have it already installed.

Note If it’s a newbie and that person may error similar to this:

>>> python --version
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'python' is not defined

This is because the instructions in this article are designed to be performed in a shell (also called a terminal or console). This lesson will teach you how to use your operating system's shell and how to communicate with Python.

Note: In an extended shell, such as IPython or the Jupyter notebook, system commands like those in this article can be prefaced by a Character run:

In [1]: import sys

!{sys.executable} --version

Python 3.6.3

Instead of using simple python, use sys.executable to guarantee that commands are executed in the Python installation that matches the current notebook.

Note this tutorial's python command and python3 -m pip - user command should be replaced with their Python 3 equivalents due to the way Linux distributions are managing the Python 3 migration. Users using the system Python should first create a virtual environment before continuing with the lesson. If you encounter a permissions problem while following this guide, return to the section on establishing virtual environments, put one up, and then follow the steps as stated.

Ensure you can run pip from the command line

Additionally, you’ll need to make sure you have pip available. You can check this by running:

py -m pip --version

It's likely that pip is already present if you installed Python via a source installation, an installer from python.org, or Homebrew. You may have to install pip individually if you're using Linux and the OS package management; see installing pip/setuptools/wheel with Linux Package Managers for more information.

Try installing pip from the standard library first if it isn't already there, then:

py -m ensurepip --default-pip

This should allow you to use pip instead of python -m.

Download get-pip.py safely and securely

Run the Python script get-pip.py. 2 This command will set up or upgrade pip as needed. Additionally, if setup tools and wheel aren't already installed, it will do it now.

Warning If your operating system or another package management manages your Python installation, proceed with caution. get-pip.py is incompatible with these other utilities and may cause havoc on your system. To install in /usr/local, use python get-pip.py —prefix=/usr/local/ instead of pip.

Make certain that pip, setuptools, and wheel are up to current.

Up-to-date versions of the setuptools and wheel projects are helpful to guarantee that you can also install from source archives, even if you just use pip.

py -m pip install --upgrade pip setuptools wheel

Creating a fictitious setting if desired.

For more information, see the section below, but here is how to run venv 3 on a normal Linux system:

py -m venv tutorial_env 
tutorial_env\Scripts\activate

This will build a new virtual environment in the tutorial env directory and set up the current shell to utilise it as the default Python environment.

Creating Virtual Environments

To avoid having to install Python packages everywhere, "Virtual Environments" in Python let you install them only where they're needed. See installing stand-alone command line tools for information on how to do so securely.

Assume you have a programme that requires LibFoo version 1 while another programme requires version 2. What's the difference between the two? You may accidentally update a programme that should not be upgraded if you install everything into /usr/lib/python3.6/site-packages (or wherever your platform's normal installation directory is).

Alternatively, what if you just want to install an app and forget about it? If an application is functioning, any change to its libraries or to the versions of those libraries will cause it to malfunction.

Also, what happens if you are unable to place packages in the global site-packages directory? You could do this, for example, if the host is shared.

Python virtual environments may currently be created with one of two tools:

Pip and setuptools are automatically installed in newly generated virtual environments in Python 3.4 and later when using venv, which is included by default in those versions of Python.

Although virtualenv must be installed separately, it supports Python 2.7 and Python 3.3, and pip, setuptools, and wheel are always included in newly generated virtual environments by default (regardless of Python version).

The fundamental way to use it is as follows:

Using venv:

py -m venv <DIR>

<DIR>\Scripts\activate

Using virtualenv:

virtualenv <DIR>

<DIR>\Scripts\activate

The usage of source under Unix shells ensures that the variables of the virtual environment are set within the current shell and not in a subprocess (which then disappears, having no useful effect).

Windows users should _not_ use the source command in either of the examples above, but should instead execute the activate script from the command shell as follows:

<DIR>\Scripts\activate

It may be hard to keep track of numerous virtual environments manually, therefore the dependency management lesson presents a higher level tool, Pipenv, that keeps track of a distinct virtual environment for each project and application you work on.

Installing from PyPI

Most people use pip to install packages from the Python Package Index by specifying a set of requirements before they run an install command. An optional version specifier follows the project name in a requirement specifier. PEP 440 includes a complete list of all presently supported specifiers. Here are a few real-world instances.

The most recent version of "SomeProject" may be installed by following these steps:

py -m pip install "SomeProject"

To install a specific version:

py -m pip install "SomeProject==1.4"

To install greater than or equal to one version and less than another:

py -m pip install "SomeProject>=1,<2"

Source Distributions vs Wheels

While pip may install from either Source Distributions (sdist) or Wheels, if both are available on PyPI, pip will opt for the more suitable Wheel. Use the –no-binary argument to disable pip's default behaviour.

It is possible to install a project with compiled extensions more quickly by using wheels instead of source distributions.

Instead of rebuilding the source distribution in the future, pip will locally construct a wheel and cache it for future installs if it cannot locate one to install.

Upgrading packages

Upgrade an already installed SomeProject to the latest from PyPI.

py -m pip install --upgrade SomeProject

Installing to the User Site

The user option can be used to install packages only for the current user:

py -m pip install --user SomeProject

See the pip documentation' User Installs section for additional details.

Note that in a virtual environment, the —user option has no effect; all installation commands will have an impact on the virtual environment.

This will install any command-line scripts or console entry points specified by SomeProject in the user's binary directory, regardless of whether they are already in your shell's PATH. Installing scripts to locations other than the PATH environment variable causes a warning to be shown. If the scripts aren't available in your shell after installation, you'll have to add the directory to your PATH

Python -m site —user-base and bin may be used to locate the user base binary directory on Linux and macOS. For example, if you want to print /.local (with extended to the absolute path to your home directory), you'll have to add /.local/bin to your PATH environment variable. Changing /.profile will permanently alter your PATH.

If you're using Windows, do py -m site —user-site to locate the user base binary directory and then replace site-packages with Scripts. C:UsersUsernameAppDataRoamingPython36site-packages, for example, might return, and you'd have to change your PATH to include it.


Related Topics

Python String ljust() method

Python String ljust() method The string.ljust() method in Python will left align the string, where the padding is done using the parameter fillchar (space is default). Syntax String.ljust(width[, fillchar]) Parameter width: This parameter represents the...

2 minutes read.

Python Project Ideas for Beginners

Python project ideas for beginners Advanced Python is an amazing platform to grow and achieve success as a developer in the future. Python is a programming language that can be very...

7 minutes read.

Difference between Input() and raw_input() functions in Python

There are two input functions in Python that are used for taking input are given below: raw_input()input() What is raw_input() Function? raw_input() function is a built-in function in Python. It is used to...

6 minutes read.

Python GUI Programming

GUI (Graphical User Interface) GUI is a graphics-based operating system that uses icons and menus to interact with the user. Python mostly works on CLI (Command Line Interface). Widgets Any user interface has...

4 minutes read.

How to Read html page in python

Html is a Hyper Text Markup language is a standard language used for creating webpages. HTML is the name of the language used to describe the construction of Web pages....

4 minutes read.

Assertion Errors and Attribute Errors in Python

Assertion Error in Python In Python, the assert condition is used to continue the execution if the given statement displays true. If the assert statement displays false, it raises Assertion Error...

3 minutes read.

File Explorer using Tkinter in Python

File Explorer: Users can control folders and files on a device using an application known as a file manager or file explorer. Customers can access, edit, copy, delete, and start moving files...

3 minutes read.

Python AIOHTTP

Python 3.5 introduced some new syntax that makes it simpler for developers to make asynchronous programmes and packages. Aiohttp, an HTTP client/server for asyncio, is one such package. In essence,...

3 minutes read.

Python Struct

Python Python is an interactive and more accessible language than any other programming language. The python programming language uses a variety of libraries to perform the operations in a faster way....

3 minutes read.

Abstraction in Python

What is meant by abstraction generally? A very general notion of a thing or work is known as abstract. To be more precise, the process of having a brief idea but...

4 minutes read.

Python Percentage Sign

In Python, the percentage sign significantly completes two things. They are: It goes about as a Modulo administrator. It helps in string organizing. Allow us to see every one of them plainly. Modulo operator: Like...

2 minutes read.

Check if the directory exists in Python

To prevent any error, while loading or editing a file, we first have to check that the directory or the file exists or not. This is also done to prevent...

5 minutes read.

Python Maurer Rose and Rhodonea Curves

In this tutorial, in Python we will make a Maurer Rose example and Rhodonea Curve example. Before we continue to see what precisely is maurer rose or a rhodonea bend...

10 minutes read.

Python Command line Arguments

Python Command line Arguments The command-line argument is used to the change functionality of the program. It's an extra command the programmer can use while launching a program. These commands have many uses...

7 minutes read.

How to Call a Function in Python

How To Call a Function in Python Functions are the well-defined and structured piece of code that is used to implement specific functionality. Calling a function in python is the best...

4 minutes read.

Python Time Library

We will consider various functions given by the python module library with examples.This python time module helps to work on time in python to get the current time.Before going with...

4 minutes read.

Find Last Occurrence of Substring using Python

Introduction When planning to work with strings, we may need to determine whether a substring is present. This issue is rather typical, and there have been numerous discussions about how to...

3 minutes read.

Python Variables, Constants and Literals

Python is today's most valuable, easy-to-implement and sought-out programming language. Nowadays, developers want to focus on implementing the program rather than spending time with complex programs. So, for this reason,...

17 minutes read.

Python Data Visualization

In this tutorial, we will understand what data visualization means in python. Further, we will see different methods of visualizing data in python. Data visualization In a non-technical language, it is a...

4 minutes read.

Gaussian elimination in python

Linear and polynomial equations are used in almost all fields of numerical simulation. However, its most common use in engineering is in the area of linear system analysis. The broader...

3 minutes read.