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)
相关推荐
土拨鼠不是老鼠11 分钟前
python 使用 plotly 进行数据分析
python·plotly·数据分析
李可以量化1 小时前
Redis 从了解到精通(三)下:性能基准测试与量化场景性能避坑指南
redis·git·python·量化交易·qmt·ptrade
青 春 记 忆10 小时前
零基础入门Python11|Git实战:为任务管理器建立版本历史
开发语言·git·vscode·python·python3.11
Python私教10 小时前
多个项目怎么安全合并?先适配,再切换
后端·python·架构
北斗落凡尘12 小时前
LangGraph 入门实战(12)--使用MCP
后端·python·langchain
jdksjw13 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Mike_Zhang13 小时前
使用python统计FreeSWITCH呼叫并发
python·freeswitch
SL-staff13 小时前
技术实践:HR如何用JVS-Logic可视化编排实现考勤数据同步(含节点配置与异常处理)
开发语言·python·低代码·钉钉·可视化编排·jvs-logic·hr技术
zzzzzz31015 小时前
AI 助手最危险的不是报错,而是“看起来成功”:我给工作流加了四道保险
人工智能·python
用户83562907805115 小时前
如何使用 Python 将 PowerPoint 转换为 PDF 文档
后端·python