Sign inSign up

rootnroll/demo-pipenv

By rootnroll

•Updated almost 8 years ago

Image for pipenv demo https://rootnroll.com/d/pipenv

Image
0

243

rootnroll/demo-pipenv repository overview

Pipenv is a tool that aims to bring the best of all packaging worlds (bundler, composer, npm, cargo, yarn, etc.) to the Python world. Windows is a first-class citizen, in our world.

It automatically creates and manages a virtualenv for your projects, as well as adds/removes packages from your Pipfile as you install/uninstall packages. It also generates the ever-important Pipfile.lock, which is used to produce deterministic builds.

You've got Python 3 and Pipenv already installed inside the box.

⁠Installing packages for your project

Pipenv manages dependencies on a per-project basis. To install packages, change into your project's directory and run:

$ cd myproject
$ pipenv install requests

Pipenv will install the excellent Requests⁠ library and create a Pipfile for you in your project's directory. The Pipfile is used to track which dependencies your project needs in case you need to re-install them, such as when you share your project with others.

⁠Using installed packages

Now that Requests is installed you can create a simple main.py file to use it (for the simplicity of this tutorial we've already created it for you):

import requests

response = requests.get('https://httpbin.org/ip')

print('Your IP is {0}'.format(response.json()['origin']))

Then you can run this script using pipenv run:

$ pipenv run python main.py

You should get output similar to this:

Your IP is 8.8.8.8

Using $ pipenv run ensures that your installed packages are available to your script. It's also possible to spawn a new shell that ensures all commands have access to your installed packages:

$ pipenv shell

⁠Next steps

Congratulations, you now know how to install and use Python packages! ✨ 🍰 ✨ Next, you can explore the official Pipenv documentation⁠.

If you're interested in what kind of shell is used here, it's fish! You can play with it in our fish shell⁠ playground.

You can also improve this playground or create your own. Please send a PR or open an issue in github.com/rootnroll/library⁠.

Tag summary

Content type

Image

Digest

Size

120.4 MB

Last updated

almost 8 years ago

docker pull rootnroll/demo-pipenv:20181025