How to pip install a package with min and max version range?

you can also use:

pip install package==0.5.*

which is more consistent and easy to read.


nok.github.io/pipdev is an interactive tool for developers to test defined specifiers for version handling.

enter image description here

Related to the question: nok.github.io/pipdev?spec=~=0.5.0&vers=0.6


An elegant method would be to use the ~= compatible release operator according to PEP 440. In your case this would amount to:

package~=0.5.0

As an example, if the following versions exist, it would choose 0.5.9:

  • 0.5.0
  • 0.5.9
  • 0.6.0

For clarification, each pair is equivalent:

~= 0.5.0
>= 0.5.0, == 0.5.*

~= 0.5
>= 0.5, == 0.*

You can do:

$ pip install "package>=0.2,<0.3"

And pip will look for the best match, assuming the version is at least 0.2, and less than 0.3.

This also applies to pip requirements files. See the full details on version specifiers in PEP 440.