Koncepcja tych plików jest prosta i analogiczna do innych już istniejących narzędzi, jeśli masz jakąś znajomość z Ruby's Bundler lub Node's Npm. Pipenv
to narzędzie do zarządzania pakietami i środowiskiem wirtualnym, które wykorzystuje pliki Pipfile i Pipfile.lock do osiągnięcia tych celów.
Pipenv obsługuje środowisko wirtualne za Ciebie w jeden domyślny standardowy sposób (nie jest już wymagana aktywacja i dezaktywacja). Poniżej kilka podstawowych informacji, które pomogą Ci zacząć, więcej informacji znajdziesz na stronie pipenv .
Pierwsze kroki
Rozpoczęcie korzystania z pipenv jest łatwe, w folderze projektu ...
$ pipenv install
... a jeśli już ma requirements.txt
plik, wygeneruje Pipfile
plik z wymaganiami i folderem środowiska wirtualnego, w przeciwnym razie wygeneruje pusty Pipfile
plik. Jeśli nie podobało Ci się coś, co zainstalowałeś lub zmieniłeś zdanie, po prostu wpisz ...
$ pipenv uninstall <package>
... i jesteś gotowy. Aby aktywować środowisko wirtualne, które już wygenerował pipenv, przejdź do ...
$ pipenv shell
... a Twoje wirtualne środowisko zostanie aktywowane. Opuścić środowisko ...
$ exit
... i wrócisz do pierwotnej sesji terminala.
Pipfile
Plik Pipfile ma na celu określenie wymagań pakietów dla aplikacji lub biblioteki Pythona, zarówno w zakresie programowania, jak i wykonywania. Możesz zainstalować pakiet, po prostu używając ...
$ pipenv install flask
... i zostanie dodany jako zależność do wdrożenia i wykonania lub przy użyciu ...
$ pipenv install --dev pytest
... i będzie używany jako zależność od czasu programowania. Składnia pliku jest dość prosta, jak poniżej.
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"
[packages]
requests = "*"
flask = "*"
pandas = "*"
[dev-packages]
pylint = "*"
wheel = "*"
[requires]
python_version = "3.6"
Pipfile.lock
Pipfile.lock ma na celu określenie, na podstawie obecnych pakietów w Pipfile , które powinny być wykorzystane specyficzna wersja tych, unikając ryzyka automatycznie uaktualniania pakietów, które zależą od siebie i łamiąc drzewa zależności projektu.
Możesz zablokować swoje aktualnie zainstalowane pakiety za pomocą ...
$ pipenv lock
... a narzędzie przeszuka folder środowiska wirtualnego, aby automatycznie wygenerować plik blokady na podstawie aktualnie zainstalowanych wersji. Składnia pliku nie jest tak oczywista, jak w przypadku Pipfile , więc ze względu na zwięzłość nie będzie tutaj wyświetlana.
Gemfile
iGemfile.lock
ze świata Rubiego:.lock
plik ma określone wersje dla każdej zależności; ten bez tego rozszerzenia ma tylko wersje znane kontrolującym ludzi. To powiedziawszy, proszenie o wyjaśnienie czegoś, co wciąż ewoluuje i jest dalekie od dobrze zdefiniowanego, znacznie mniej znormalizowanego, jest być może nieco przedwczesne.