Python开发环境配置(mac M2)

1. 前言

  • 作为一名程序员,工作中需要使用Python进行编程,甚至因为项目需要还得是不同版本的Python

  • 如何手动管理多个版本的Python,如何给Pycharm(IDE)配置对应的interpreter等,都成为一个 "不熟练工" 的难题

  • 笔者刚拿到mac M2的电脑时,系统好像自带了 Python2 和 Python3,可以通过如下命令开启对应版本的python解释器

    bash 复制代码
    python # 启动python2解释器
    python3 # 启动python3解释器
  • 甚至为了让python能默认开启Python3解释器,还配置了alias

    bash 复制代码
    alias python=python3
    alias pip="python -m pip" # 让pip随python变化
  • 但是,除了 Python2 和 Python3,甚至笔者还需要安装其他版本的Python3

  • 本文将介绍如何通过pyenv安装并管理Python环境、如何在Pycharm中设置Python解释器等

2. pyenv:安装和管理多版本Python的利器

2.1 安装pyenv

  • 关于如何在mac OS安装pyenv,其实pyenv官网的介绍非常详细

  • 目前,笔者的mac的~/.zshrc中 pyenv 的配置如下,与官往不同,也 work ok

    bash 复制代码
    export PYENV_ROOT=~/.pyenv
    export PATH=$PYENV_ROOT/shims:$PATH

2.2 通过pyenv安装并管理多个Python版本

  • 一些简单命令介绍如下,具体查看官方文档:Usage
    • 通过pyenv安装Pyhton

      bash 复制代码
      # 查看pyenv支持版本
      pyenv install -l 
      # 选择对应的版本进行安装,如:安装3.9.6
      pyenv install 3.9.6
    • 查看已安装的Python版本

      bash 复制代码
      # 查看pyenv已经安装好的Python版本,其中以 * 开头的版本是目前正在使用的版本
      pyenv versions
      # 查看当前使用的Python版本
      pyenv version
    • 为当前用户或当前目录设置Python版本

      bash 复制代码
      pyenv global xxx # 设置当前用户的Python版本
      pyenv local xxx # 设置当前目录的Python版本

3. Pycharm:为项目设置Python解释器

  • 本节将介绍如何给Pycharm中的项目配置本地安装的Python解释器

3.1 准备工作:了解Python的安装目录

  • 所谓的Python安装目录, 一般是指python命令所在的目录

  • 可以通过如下python代码,查看当前python命令的目录

    python 复制代码
    # 写入1.py,通过python 1.py查看python命令的目录
    import sys
    print(sys.executable)
  • 通过pyenv安装的python,其python命令的目录一般都是有规律:

    bash 复制代码
    ~/.pyenv/versions/2.7.18/bin/python
    ~/.pyenv/versions/3.9.6/bin/python

3.2 为项目设置Python解释器

  • 进入Settings → \rightarrow → Project
  • Python Interpreter → \rightarrow → Add Interpreter → \rightarrow → Add Local Interpreter...
  • 添加本地已经安装的python
  • 参考文档:pycharm中配置Python解释器(最新)

3.3 附录:如何查看pip命令的安装目录

  • 可以直接通过如下命令查看pip命令的安装目录:~/.pyenv/versions/2.7.18/lib/python2.7/site-packages/pip

    bash 复制代码
    pip --version
  • 也可以通过python脚本打印pip命令的目录

    python 复制代码
    import os
    from distutils.sysconfig import get_python_lib
    
    pip_path = os.path.join(get_python_lib(), 'pip')
    print(pip_path)
相关推荐
黄忠15 小时前
01-系统架构设计-LangGraph状态机与多源异构RAG
python
zzzzzz31015 小时前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
砍材农夫15 小时前
python环境|conda安装和使用(2)
后端·python
程序员龙叔1 天前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试
用户8356290780511 天前
使用 Python 操作 Word 内容控件
后端·python
AI创界者1 天前
PilotTTS 一键整合包(Win/Mac):8G 显存畅跑,实测解锁情绪与副语言的精准控制
人工智能·macos·aigc·音视频
码云骑士1 天前
32-慢查询排查全流程(下)-索引优化实战与最左前缀原则
python
闵孚龙1 天前
《PyTorch 深度修炼》Dataset 和 DataLoader:数据如何喂给模型
人工智能·pytorch·python
goldenrolan1 天前
A公司物料替代测试系统 v1.7:从需求到 exe/apk 的 AI 辅助全链路实践
android·自动化测试·软件测试·python·ai