暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

如何更高效地设置Python环境

海拥 2022-11-04
163

记得点击 "海拥, 设为星标⭐

关注海哥的你会越来越帅

后台回复【进群】,加入全栈技术学习交流群


这是我推荐的 Python 设置,截至 2022 年秋季。Python环境可能是重叠工具混乱在一起,有时不能很好地协同工作。这是为了标准化我们的方法和环境。

工具和有用的链接:

  • Python 文档:https://docs.python.org/3/
  • Python 标准库:https://docs.python.org/3/library/index.html - 当您尝试解决特定问题时,从这里开始
  • pip:https://pip.pypa.io/en/stable/-Python的标准软件包安装程序,包含在语言本身中
  • pipx:https://pipxproject.github.io/pipx/- 全局脚本安装程序,构建在 pip 之上
  • pipenv:https://pipenv.pypa.io/en/latest/- 项目的包安装程序,管理依赖项和虚拟环境
  • pyenv:https://github.com/pyenv/pyenv- 管理不同版本的 Python 本身
  • 自制:https://brew.sh/-适用于macOS的软件包管理器,用于特定需求
  • Postgres.app:https://postgresapp.com/- macOS 的首选数据库服务器

安装正确的 Python

Python 3 现在是正确的 Python 版本。我们可能有运行不同次要版本的项目——例如 3.7 或 3.9——但我们应该始终默认为最新的可用版本。在撰写本文时,已经是 3.11。最新的 Python 文档将始终在这里:https://docs.python.org/3/。

过去,您可能已经看到使用自制软件安装Python的建议。现在强烈反对这样做。让我大声说:「不要用自制软件安装PYTHON」。Homebrew 在升级方面可能非常激进和扩展,升级一个包通常会导致许多看似无关的升级,这将经常破坏对其他包的依赖。

「使用 pyenv」。要安装和管理不同的 Python 版本,请使用 pyenv。在大多数情况下,我建议使用自制软件安装或 git 安装:

brew update
brew install pyenv

我建议使用自制软件来安装 pyenv 而不是 Python 是不是很奇怪?是的,它是。但是pyenv完全是用shell脚本构建的,所以它相对安全,pyenv本身会让你的Python版本安全地与Homebrew的积极升级隔离。

按照说明配置 shell 配置文件 (https://github.com/pyenv/pyenv#installation),以便 pyenv 命令可用,并且您可以根据需要安装新版本的 Python。

从那里,至少安装最新的 Python 稳定版本(再次,可能是 3.10.8),并将其设为全局默认值。这将使正确版本的 pip 可用于安装新软件包。

pyenv install --list # 查看可安装版本列表
pyenv install 3.10.8 # 或者不同版本
pyenv global 3.10.8

python --version
# Python 3.10.8

which python
# /Users/camico/.pyenv/shims/python

which pip
# /Users/camico/.pyenv/shims/pip

全局脚本和实用程序

对于您希望跨项目使用的任何 Python 构建的工具,请使用。安装它:pipx``pip

pip install --user pipx # 安装它
pipx ensurepath # 确保您的系统可以找到它

(请注意,pipx 的文档建议使用 Homebrew 进行安装。如上所述,我不建议在Python项目中使用Homebrew,除了pyenv。

您应该安装withis的第一件事,我们将用于特定项目。pipx
pipenv

虚拟环境

Python 使用虚拟环境来分离不同项目的依赖项。这可能是一个令人沮丧的步骤,特别是如果您习惯于拥有本地文件夹。在过去,这也意味着必须安装一个单独的库。在Python 3中,它现在是标准库的一部分。node_modules
virtualenv
venv

这是一个很好的教程,涵盖了虚拟环境的工作原理:https://docs.python.org/3/tutorial/venv.html

这是 tl;dr:

python -m venv project-dir

source project-dir/bin/activate

这将在文件夹中创建一个虚拟环境。第二个命令将运行激活脚本,该脚本将告诉您的 shell 使用本地版本的 Python 和本地安装的依赖项。在大多数情况下,您不必手动执行此操作,但了解引擎盖下发生的事情很有用。project-dir

在具有alltheplaces-datasette 的项目中,我们既可以用来管理我们的虚拟环境,也可以安装依赖项。在这种情况下,请导航到该目录并运行:Pipfile
pipenv
pipenv sync

cd alltheplaces-datasette
pipenv sync

这也将,假设你已经安装了pyenv并工作,切换到Python中列出的版本(如果需要,安装它)。查阅pipenv 文档,看看它还能做什么。

安装本地 Python 包

在大多数情况下,我们将处理具有管理依赖项的项目。在这种情况下,安装新的东西是单行的:Pipfile

pipenv install django

这将安装软件包,将其添加到我们的并更新我们的文件,固定特定版本。如上所述,运行从中安装依赖项,非常类似于安装自,确保我们每次都获得每个依赖项的相同版本。django
Pipfile
Pipfile.lock
pipenv sync
Pipfile.lock
npm ci
package-lock.json

数据库

我们可能将两个数据库与Python一起使用:SQLite和Postgres。

SQLite与Python捆绑在一起。它作为一个嵌入式进程运行,所有数据都包含在一个文件中,对于数据分析非常有用。

Postgres是可用于Web应用程序的最佳数据库。对于本地开发,我建议这是在笔记本电脑上管理数据库服务器的最简单方法。

⭐️ 送书福利


书籍:赠送 3 本《程序员的数学基础 Python实战》,更多介绍和目录可以点击下面链接了解。



每周都会给大家送书,常来留言混脸熟的都会有机会!这次送出的是"Python"相关的书籍,非常值得一读。


赠书规则

赠送规则:通过留言点赞的方式送出,转发本文至朋友圈+文末留言,从留言中随机抽取 3位读者 各送1本

开奖时间:11月6日20:00(周日)


end





扫一扫玩摸鱼游戏

    个人简介:HDZ核心组成员,华为云享专家全栈领域博主,CSDN内容合伙人,掘金优秀作者,阿里云专家博主,InfoQ、蓝桥云课签约作者,全网粉丝12万+。一枚爱好计算机科学,求索于逻辑思维的同时不忘哲学和浪漫主义科学,乐于分享技术与快乐的博主。

                                      


QQ交流群:151836911

微信:wh18363



文章转载自海拥,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论