Poetry是啥?

是一个Python虚拟环境和依赖管理工具,另外它还提供了包管理功能,比如打包和发布。
可以用来管理python库和python程序。

安装Poetry

curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python3

使用pip安装

pip3 install --user poetry

确认是否安装成功以及查看版本号

poetry --version

在python项目中使用Poetry

在现有项目中使用:

如果是在已有项目中使用poetry,你只需要执行一下命令来创建一个pyproject.toml文件即可:

poetry init

使用poetry创建一个新项目:

poetry new project_name (项目名字)

项目结构如下图:

 

结构介绍

  • *pyproject.toml *: 使用此文件管理依赖列表和项目的各种meta信息,用来替代 Pipfile、requirements.txt、setup.py、setup.cfg、MANIFEST.in 等等各种配置文件。

创建虚拟环境

Tips: 确保当前目录存在pyproject.toml文件

poetry install

这个命令会读取pyproject.toml中的所有依赖并安装(包括开发依赖),如果不想安装开发依赖可以附加:--no-dev 选项。如果项目根目录有 poetry.lock 文件,会安装这个文件中列出的锁定版本的依赖。如果执行 add/remove 命令的时候没有检测到虚拟环境,也会为当前目录自动创建虚拟

激活虚拟环境

poetry shell

查看python版本

poetry run python -V

执行脚本

poetry run python app.py

安装包

poetry add flask

添加--dev参数为开发依赖:

poetry add pytest --dev 

追踪 & 更新包

poetry show

添加--tree 参数选项可以查看依赖关系:

poetry show --tree

查看可以更新的依赖:

poetry show --outdated

更新所有锁定版本的依赖:

poetry update

更新某个指定的依赖:

poetry update dep_name (依赖名字)

卸载包

poetry remove dep_name

让poetry使用python3

poetry env use python3.7

常用配置

Q&A

1, 推荐使用python3

2, poetry版本很重要,最好使用最新版本

Python Poetry 学习和使用的更多相关文章

  1. 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL

    周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...

  2. 60分钟Python快速学习(给发哥一个交代)

    60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...

  3. python爬虫学习(1) —— 从urllib说起

    0. 前言 如果你从来没有接触过爬虫,刚开始的时候可能会有些许吃力 因为我不会从头到尾把所有知识点都说一遍,很多文章主要是记录我自己写的一些爬虫 所以建议先学习一下cuiqingcai大神的 Pyth ...

  4. python爬虫学习 —— 总目录

    开篇 作为一个C党,接触python之后学习了爬虫. 和AC算法题的快感类似,从网络上爬取各种数据也很有意思. 准备写一系列文章,整理一下学习历程,也给后来者提供一点便利. 我是目录 听说你叫爬虫 - ...

  5. Python正则表达式学习摘要及资料

    摘要 在正则表达式中,如果直接给出字符,就是精确匹配. {m,n}? 对于前一个字符重复 m 到 n 次,并且取尽可能少的情况 在字符串'aaaaaa'中,a{2,4} 会匹配 4 个 a,但 a{2 ...

  6. python 线程学习

    彩照 一.学习[1] # -*- coding: utf-8 -*- import time import thread def timer(no, interval): cnt = 0 while ...

  7. Openstack python api 学习文档 api创建虚拟机

    Openstack python api 学习文档 转载请注明http://www.cnblogs.com/juandx/p/4953191.html 因为需要学习使用api接口调用openstack ...

  8. !!对python列表学习整理列表及数组详细介绍

    1.Python的数组分三种类型:(详细见 http://blog.sina.com.cn/s/blog_6b783cbd0100q2ba.html) (1) list 普通的链表,初始化后可以通过特 ...

  9. Python实战:Python爬虫学习教程,获取电影排行榜

    Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知识总结.希望大家能够快速入门并学习 ...

随机推荐

  1. vivado三人表决仿真

    概述 下面以三人表决电路的verilog仿真来了解一下vivado软件的使用. 编写设计文件 首先可以在开始的界面通过create new project来新建工程,也可以通过file-->pr ...

  2. 【UIBE】研究生考试前必看

      梦想就在前方,再跨一步就能到达.考研的同学们,请务必加油! 回想4年前的今天,坐在图书馆里的我,紧张于即将来临的考试,期待于每天憧憬的未来.大半年的复习生活,我学会了很多,学会了早起抢座位:学会了 ...

  3. 如何使用Jmeter进行压力测试

    Jmeter做压力测试的操作:Jmeter不仅可以做接口测试,还可以做压力测试,下面介绍介绍如何jmeter进行简单地压力测试.具体步骤如下: 第一步:添加请求,这里不介绍具体步骤,详见(https: ...

  4. 前端day01

    目录 软件开发架构 web服务的本质 HTTP协议 HTML的注释 HTML的文档结构 标签的分类 标签的分类 列表标签 表格标签 软件开发架构 ​ c/s ​ b/s ​ b/s本质也是c/s ​ ...

  5. C# 中获取一个目录下的目录与文件

    //获得目录下所有文件和子目录使用DirectoryInfo类的GetFileSystemInfos()方法. //获得目录下所有目录 string[] dirs = Directory.GetDir ...

  6. python 类属性与实例属性

    #__author__ = 'juzi_juzi' #类属性与实例属性 #1.无法通过类访问实例属性: #2.类属性归类所所有,但是所有实例都可访问: #3.如果存在相同名称的类属性与实例属性,实例访 ...

  7. Supermap/Cesium 开发心得----飞天动线的实现

    在实际开发中,我遇到这样的问题,只给了两地点的坐标,要求会出从A地到B地的在天上飞的那种动态线 本质上动线的效果就是构造实体Entity中的polyline来实现,设置好材质,颜色和运动频率 具体实现 ...

  8. java基础 - 锁

    ------------------------ 参考: https://www.cnblogs.com/hustzzl/p/9343797.html https://blog.csdn.net/qq ...

  9. 深入了解angularjs中的$digest与$apply方法,从区别聊到使用优化

     壹 ❀ 引 如果有人问,在angularjs中修改模型数据为何视图会同步更新呢,我想大多数人一定会回答脏检查(Dirty Checking)相关概念.没错,在angularjs中作用域(scope) ...

  10. Spring Boot中使用Swagger2构建强大的RESTful(最新全,无坑)

    1:说明 网上这类文章 太多, 一搜一大把 ,但是要不是知识太过于老旧,就是配置没有说名清楚,你的项目按照他的配置却不能正常运行: 所以本文的目的: 配置swagger 2  那swagger 1 不 ...