Obtenez un environnement de développement Python rapide avec Poetry

Contexte

La poésie a atteint 1.0.0 à la fin de l'année dernière le 12/12/2019, alors je l'ai essayée.

Aperçu

Poetry est un outil de gestion des packages et des dépendances pour Python.

En tant qu'outil similaire Il existe setuptools et Pipenv, mais Poetry peut couvrir les deux fonctions avec celui-ci.

** Je suis attiré par le fait qu '"un fichier toml est tout ce dont vous avez besoin" **. Ou plutôt, je pensais que c'était ** merveilleux **.

version

poésie v1.0.5 (dernière en date du 11 mai 2020)

Créer un projet

https://python-poetry.org/docs/basic-usage/ https://python-poetry.org/docs/cli/#new

$ poetry new <nom du projet>

Après l'exécution, les dossiers suivants seront créés.

<nom du projet>
├── pyproject.toml
├── README.rst
├── poetry_demo
│   └── __init__.py
└── tests
    ├── __init__.py
    └── test_poetry_demo.py

Le pyproject.toml contenu dans le dossier créé est le fichier de configuration de poésie. C'est un fichier qui remplace setup.py / setup.cfg / Pipfile, et le contenu écrit dans chaque fichier peut être décrit dans pyproject.toml. Si vous le recherchez, il sera remplacé, donc si vous êtes intéressé, veuillez consulter le lien sur la page officielle. https://python-poetry.org/docs/pyproject/

pyproject.tml


[tool.poetry]
name = "<nom du projet>"
version = "0.1.0"
description = ""
authors = ["Sébastien Eustace <[email protected]>"]

[tool.poetry.dependencies]
python = "*"

[tool.poetry.dev-dependencies]
pytest = "^3.4"

Ajouter une bibliothèque

https://python-poetry.org/docs/cli/#add

#Ajouter une bibliothèque dépendante
$ poetry add requests
#Ajout de bibliothèques dépendantes pour le développement
$ poetry add --dev requests

Bien sûr, vous pouvez également spécifier la version. Cela ne semble pas être très différent de requirements.txt / setup.py / Pipfile. https://python-poetry.org/docs/dependency-specification/

Créer un environnement virtuel, installer en mode développement

https://python-poetry.org/docs/cli/#install

$ poetry install

Exécution de commande dans un environnement virtuel

https://python-poetry.org/docs/cli/#run https://python-poetry.org/docs/cli/#shell

#Courez en un seul coup
$ poetry run python -m pip list
#Courir avec shell
$ poetry shell

Il semble que vous puissiez faire quelque chose comme npm-scripts en spécifiant le module Python que vous voulez exécuter dans pyproject.toml.

pyproject.tml


[tool.poetry.scripts]
my-script = "my_module:main"
$ poetry run my-script

Emballage

https://python-poetry.org/docs/cli/#build

$ poetry build

Par défaut, les deux sdist / wheel sont créés. Vous pouvez utiliser l'un ou l'autre avec l'option --format.

Sortie vers requirements.txt

https://python-poetry.org/docs/cli/#export

$ poetry export -f requirements.txt > requirements.txt

Il semble que la v1.0.2 ne prend en charge que le format requirements.txt.

Coopération avec PyCharm

PyCharm (2019.03) a reconnu pyproject.toml et a détecté l'environnement virtuel.

Coopération avec Visual Studio Code

Visual Studio Code ne le reconnaît pas automatiquement.

C'est un problème, mais l'un des éléments suivants est requis.

  1. Spécifiez le chemin où l'environnement virtuel est enregistré dans settings.json
  2. Créez un environnement virtuel pour la poésie dans le dossier .venv qui le reconnaît automatiquement (* Je préfère personnellement cela)

https://github.com/microsoft/vscode-python/issues/8372#issuecomment-549924849

Lors du réglage sur settings.json

Ceci est un exemple sur Mac.

settings.json


{
    "python.venvPath": "~/Library/Caches/pypoetry/virtualenvs"
}

Lors de la création d'un environnement virtuel dans le dossier .venv

#Supprimer l'environnement Python qui a été créé une fois
$ poetry env list
$ poetry env remove <Nom de l'environnement>
# .Modifier les paramètres pour enregistrer dans venv--> poetry.Sortie vers toml.
$ poetry config virutalenv.local true --local
#Créer un environnement virtuel--> .Sortie dans le dossier venv.
$ poetry install

Après cela, si vous rechargez le paramètre Interpréteur Python de Visual Studio Code et que vous l'examinez, vous pouvez sélectionner le dossier .venv.

Recommended Posts

Obtenez un environnement de développement Python rapide avec Poetry
[Python] Créer un environnement de développement Django avec Docker
Créer un environnement de développement d'applications d'apprentissage automatique avec Python
Gérez les packages d'exécution Python et les packages d'environnement de développement avec Poetry
Créez un environnement virtuel avec Python!
Créer un environnement virtuel avec Python 3
Unifier l'environnement de l'équipe de développement Python en commençant par Poetry
Configurer un environnement de développement Python avec Visual Studio Code
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Créez un environnement de développement Python simple avec VSCode et Docker Desktop
Comment entrer dans l'environnement de développement Python avec Vagrant
[Pyenv] Construire un environnement python avec ubuntu 16.04
Créez facilement un environnement de développement avec Laragon
[Environnement de développement] Python avec Xcode [Avec transition d'écran]
[Python] Créez un environnement virtuel avec Anaconda
Création d'un environnement Python 3.6 avec Windows + PowerShell
[Python] Une application web rapide avec Bottle!
Créez un environnement virtuel pour python avec pyenv
Créez un environnement Python moderne avec Neovim
Créer un environnement de développement Python pour le développement de l'IA
Entendons-nous bien avec Python # 0 (Construction de l'environnement)
Création d'un environnement de développement Python pour Windows + gVim + Poetry
J'ai créé un environnement de développement pour Django 3.0 avec Docker, Docker-compose, Poetry
Créer un environnement de développement de langage C avec un conteneur
[Python] Récupérez les fichiers dans le dossier avec Python
Obtenez un billet pour un parc à thème avec python
Créer un environnement de développement Python avec Visual Studio Code
Créez un environnement python avec ansible sur centos6
Obtenez une liste des packages installés dans l'environnement actuel avec python
Créer un environnement virtuel avec conda avec Python
Construction de l'environnement de développement Python
Créer un environnement de construction python3 avec Sublime Text3
Créez un environnement de développement Python sur votre Mac
À propos de l'environnement de développement Python
[Python] Préparation au développement Web (création d'un environnement virtuel)
Un mémo lors de la création d'un environnement python avec miniconda
Créer un environnement de développement Django à l'aide de Doker Toolbox
environnement python avec docker-compose
Commencez avec Python en 30 minutes! Créer un environnement de développement et apprendre la grammaire de base
Commandes pour créer un environnement python3 avec virtualenv
Travaillez dans un environnement virtuel avec Python virtualenv.
Construction de l'environnement de développement python2.7
Obtenez date avec python
Configurer un environnement de développement Python sur Marvericks
Construire un environnement Python avec OSX Elcapitan
Créer un environnement Python
Environnement de développement en Python
Créez rapidement un environnement Python Django avec IntelliJ
J'ai essayé de créer un environnement de développement Mac Python avec pythonz + direnv
Environnement virtuel avec Python 3.6
Créer un environnement d'apprentissage automatique Python avec des conteneurs
Construire un environnement de développement Python sur Raspberry Pi
Créez un environnement de développement local avec WSL + Docker Desktop pour Windows + docker-lambda + Python
Virtualiser (isoler) l'environnement de développement IBM i python avec chroot
Créer un environnement de développement Python basé sur GVim sur Windows 10 (3) GVim8.0 et Python3.6
Recommandation de construction d'un environnement Python portable avec conda
Obtenez des données financières avec python (puis un peu de bricolage)