Linux使用conda安装管理python

Linux使用conda安装管理python

环境准备

  1. 下载miniconda3

    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

    11.png

  2. 安装

    chmod +x Miniconda3-py310_24.5.0-0-Linux-x86_64.sh  #可以替换成自己上传的文件
    bash Miniconda3-py310_24.5.0-0-Linux-x86_64.sh -b -f -p ~/miniconda3 #可以替换成自己上传的文件
    source ~/miniconda3/bin/activate

12.png

构建Python环境

  1. 创建python环境

    conda create -n py3.10 python=3.10 -y  #创建名字为py3.10的环境,该环境中的python版本为3.10

    13.png

  2. 激活py3.10的环境

    conda activate py3.10

    14.png

  3. 安装python库,比如numpy、scipy和matplotlib

    pip install numpy scipy matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

    15.png

运行程序

  1. 准备python程序

    准备好python源码如下命名为hello.py

    import numpy as np
    import scipy
    import matplotlib.pyplot as plt
    
    a = np.array([5, 2, 0])
    print(f"hello scnet: {a}")

    运行程序,需要使用提交任务的脚本,相应的脚本示例如下,命名为python.slurm

    #!/bin/bash
    #SBATCH -J hello_python                    # 作业的名称 可根据需要自行命名
    #SBATCH -p tyhctest                      # 在指定分区中分配资源,根据所拥有的资源修改
    #SBATCH -N 1                               # 申请的节点数1个
    #SBATCH --ntasks-per-node=4                # 每个节点运行4个任务,使用4个核心
    
    source ~/miniconda3/bin/activate py3.10    #激活python环境
    
    python hello.py
  2. 提交任务

    sbatch python.slurm
    # 查看任务
    squeue
    # 取消任务
    scancel 27532270
    # 查看结果
    cat slurm-11314770.out

12.png

13

14.png

16.png

conda 常用命令

命令 说明
conda --version 查看 Conda 版本
conda update conda 更新 Conda 到最新版本
conda create -n env_name python=3.8 创建名为 env_name 的环境,指定 Python 版本
conda activate env_name 激活指定环境
conda deactivate 退出当前环境
conda env list 查看所有环境列表
conda list 查看当前环境中安装的所有包
conda install package_name 安装指定包
conda install package_name=1.2.3 安装指定版本的包
conda update package_name 更新指定包
conda remove package_name 卸载指定包
conda search package_name 搜索可用的包
conda env export > environment.yml 将当前环境导出到 YAML 文件
conda env create -f environment.yml 从 YAML 文件创建环境
conda remove -n env_name --all 删除指定环境及其所有包
conda clean -p 清理未使用的包缓存
conda clean -t 清理临时文件