美文网首页
python virtualenv虚拟环境的配置

python virtualenv虚拟环境的配置

作者: 行走的程序猿 | 来源:发表于2017-06-06 00:34 被阅读212次

    在python实际开发中,往往需要虚拟环境来保证每个项目有独立的依赖环境,不相互影响,virtualenv等工具的出现正好解决了这个问题。

    1. 基本包
      virtualenv
      安装方法
      pip install virtualenv

    2. 附加包
      virtualenvwrapper
      用于简化虚拟环境的使用和管理
      安装方法

    pip install virtualenvwrapper
    source /usr/local/bin/virtualenvwrapper.sh(初始化virtualenv环境,将这行命令添加到~/.bashrc或~/.zshrc,避免每次手动初始化,没有则新建)
    

    基本用法
    命令语法可查看virtualenvwrapper官方文档

    新建venv
    mkvirtualenv -p python3 djangodev(指定python版本)
    列举venv
    lsvirtualenv
    进入当前venv目录
    cdvirtualenv
    切换venv
    workon [env name]
    退出venv
    deactivate
    删除venv
    rmvirtualenv [env name]
    
    1. 建议
      将虚拟环境放在固定的目录,便于统一管理。例如,新建~/.virtualenvs/目录,需要使用虚拟环境的项目都放在这个目录下。(如果使用virtualwrapper会自动创建该目录,不能手动新建,否则会产生冲突)

    2. 问题
      a. 在linux下,手动安装python3.6后,在virtualenvs使用pip安装依赖包时出现ssl module不存在

    ~/.virtualenvs/djangodemo » pip install django                                          redhat@redhat-pc
    pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
    Collecting django
      Could not fetch URL https://pypi.douban.com/simple/django/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
      Could not find a version that satisfies the requirement django (from versions: )
    No matching distribution found for django
    

    重新手动安装python3

    sudo apt-get install python3-dev libffi-dev libssl-dev
    wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz  
    tar xvf Python-3.6.0.tgz
    cd Python-3.6.0
    ./configure --enable-optimizations  
    make -j8  
    sudo make altinstall
    python3.6
    

    解决方案
    b.virtualenv只是为python工程提供必要的开发环境,并不需要将工程和虚拟环境放在一起,这样有可能在使用git的时候将追踪虚拟环境的bin、include等目录,造成不必要的冲突。

    相关文章

      网友评论

          本文标题:python virtualenv虚拟环境的配置

          本文链接:https://www.haomeiwen.com/subject/zeawfxtx.html