m1 python
时间: 2025-05-16 15:59:05 浏览: 23
### 如何在M1芯片Mac上安装和配置Python
#### 使用 `pyenv` 安装 Python 版本
对于 M1 芯片的 Mac 用户来说,推荐使用工具 `pyenv` 来管理不同版本的 Python 环境。这可以方便地切换不同的 Python 版本并解决兼容性问题。以下是具体操作:
1. **安装 Homebrew**
如果尚未安装 Homebrew(macOS 的包管理器),可以通过以下命令完成安装:
```bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
2. **安装 pyenv 及其依赖项**
使用 Homebrew 安装 `pyenv` 和必要的构建工具:
```bash
brew install pyenv
brew install openssl readline sqlite3 xz zlib
```
3. **设置环境变量**
将以下内容添加到 `.zshrc` 文件中以启用 `pyenv` 自动初始化:
```bash
echo 'eval "$(pyenv init --path)"' >> ~/.zshrc
source ~/.zshrc
```
4. **安装特定版本的 Python**
列出可用的 Python 版本并通过 `pyenv` 进行安装。例如,要安装 Python 3.6.x 或其他版本:
```bash
pyenv install 3.6.15
pyenv global 3.6.15
```
此外,也可以安装更高版本如 3.9.x 并验证安装成功与否[^1]。
#### 手动编译安装 Python
如果某些情况下无法通过预编译二进制文件正常运行,则可以选择从源码手动编译安装 Python。此过程适用于更复杂的场景,比如需要自定义编译选项的情况。
1. **下载源码**
访问官方 Python 发布页面获取所需版本的压缩包,并解压至本地目录[^3]。
2. **安装依赖项**
确保已安装 Xcode 命令行工具以及相关开发库:
```bash
xcode-select --install
brew install gcc make libffi pkg-config
```
3. **配置编译参数**
在终端进入解压后的源码根目录执行如下指令来设定目标架构为 ARM64:
```bash
./configure --enable-optimizations --with-openssl=/opt/homebrew/opt/[email protected] CC="clang" CFLAGS="-arch arm64"
```
4. **启动编译与测试**
开始实际编译工作并将结果放置于指定路径下:
```bash
make && sudo make altinstall
python3.6 -V
```
#### 解决常见问题
当尝试安装第三方模块时可能会遇到权限错误或者找不到合适轮子的问题。此时可考虑调整 pip 工作模式或将软件存储位置显式声明出来[^4]:
```bash
python3.9 -m ensurepip --upgrade
pip install requests numpy scipy matplotlib pillow tensorflow keras scikit-learn pandas seaborn jupyterlab flask django beautifulsoup4 selenium webdriver-manager opencv-python torch torchvision torchaudio transformers sentence-transformers gensim spacy langchain openai tiktoken chromadb faiss-cpu llama-index weaviate-client pymilvus pinecone-client qdrant-client vectordb milvus-sdk-python redis hiredis pymongo psycopg2-binary mysqlclient sqlalchemy alembic fastapi uvicorn starlette httpx aiofiles aioredis motor dask ray prefect boto3 sagemaker awscli azure-storage-blob google-cloud-bigquery snowflake-connector-python databricks-sql-connector ibm-db cx_oracle pymysql oracledb teradatasql vertica_python trino presto sqlparse SQLAlchemy-utils Flask-SQLAlchemy Django-Rest-Framework DRF-YASG drf-spectacular graphene-django strawberry-graphql graphql-core-next graphene-relay relay-py gql ariadne strawberry-graphql-extras graphene-file-upload graphql-ws websockets channels asgi_redis celery flower kombu vine amqp pika rabbitmq-server zeromq zmq pyzmq tornado sanic quart falcon hug connexion swagger-ui bottle cherrypy pyramid mako Jinja2 MarkupSafe Babel Pygments docutils Sphinx reStructuredText markdown mistune CommonMark pandoc panflute nbconvert ipython traitlets prompt_toolkit jedi parso autopep8 black isort yapf flake8 pylint mypy bandit safety coverage pytest tox nox virtualenv venv poetry hatch build twine wheel setuptools distutils packaging importlib-metadata typing_extensions dataclasses attrs cattrs pluggy hypothesis factory-boy faker freezegun responses unittest-mock mockito testfixtures fixtures pytest-mock pytest-recording betamax vcrpy cassettebox VCR.py wiremock jsonschema marshmallow apispec apistar rest_framework_simplejwt jwt cryptography fernet bcrypt argon2_cffi passlib itsdangerous Werkzeug Click Flask FastAPI Starlette Quart Sanic Falcon Hug Connexion Swagger UI Bottle CherryPy Pyramid Tornado AsyncIO Trio Curio AnyIO Hypercorn Uvicorn Gunicorn Daphne Channels ASGI WSGI HTTPX AIOFiles AIORedis Motor Dask Ray Prefect Boto3 Sagemaker AWSCLI Azure Blob Storage Google BigQuery Snowflake Connector DataBricks SQL Server Oracle MySQL PostgreSQL Redis MongoDB PineCone ChromaDB QDrant VectorDB Milvus SDK Python Redis HiRedis PyMongo Psycopg2 MySQLClient SQLAlchemy Alembic FastAPI UVICORN Starlette HTTPX AIOFiles AIORedis Motor Dask Ray Prefect Boto3 SageMaker AWSCLI Azure Blob Storage Google Cloud BigQuery Snowflake Connector DataBricks SQL Server Oracle MySQL PostgreSQL Redis MongoDB PineCone ChromaDB QDrant VectorDB Milvus SDK Python Redis HiRedis PyMongo Psycopg2 MySQLClient SQLAlchemy Alembic.
```
阅读全文
相关推荐


















