#!/bin/bash # 此脚本用于设置 Python 开发环境 # 主要用于: # 1. 开发环境初始化 # 2. 确保正确的 Python 版本 # 3. 安装项目依赖 # 注意:在运行此脚本前,请先运行 setup_linux.sh 安装系统依赖 # 检查 pyenv 是否安装 if ! command -v pyenv &> /dev/null; then echo "pyenv not found. Installing..." if [[ "$OSTYPE" == "darwin"* ]]; then brew install pyenv else curl https://pyenv.run | bash fi fi # 安装指定版本的 Python pyenv install 3.11.8 || true # 设置本地 Python 版本 pyenv local 3.11.8 # 确保使用正确的 Python 版本 eval "$(pyenv init -)" pyenv shell 3.11.8 # 验证 Python 版本 python_version=$(python -V 2>&1) if [[ $python_version != *"3.11.8"* ]]; then echo "Error: Wrong Python version: $python_version" echo "Please ensure pyenv is properly configured in your shell" exit 1 fi # 创建虚拟环境 python -m venv .venv # 激活虚拟环境 source .venv/bin/activate # 升级 pip 和构建工具 python -m pip install --upgrade pip setuptools wheel # 分步安装依赖以确保正确的顺序和版本 echo "Installing database dependencies..." pip install mysql-connector-python==8.0.33 echo "Installing PyTorch and related packages..." pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cpu echo "Installing basic dependencies..." pip install numpy==1.26.4 pandas==2.2.1 echo "Installing machine learning packages..." pip install scikit-learn==1.5.2 # 安装开发依赖 if ! pip install -e ".[dev]"; then echo "Warning: Failed to install development dependencies. Installing core package..." pip install -e . fi # 验证安装 echo "Verifying Python version..." python --version echo "Verifying PyTorch installation..." python -c "import torch; print(f'PyTorch version: {torch.__version__}')" echo "Environment setup complete!"