今天在处理其它需求时,发现只要用venv目录下的python.exe来解释py代码就可以正常运行。本来以为完事了,突然想起来,这样的话根本没有运行Activate命令,没有进入Python虚拟环境啊。

看了下Activate源码,其中最重要的动作是把venv虚拟环境的路径临时添加到系统Path路径最前面,这样venv的pip命令就能把模块(库)安装到虚拟环境目录里。Path配置的信息可以在PowerShell里,通过 $env:Path 命令查看,能够清楚的看到运行Activate之后venv目录添加到了Path配置的最前面。

是否Activate进入虚拟环境对pip的影响:

写一个py测试文件,引入os模块(库),然后执行 os.system("pip list")Activate进入虚拟环境,执行,列出venv中已经添加的模块

用系统Python执行,列出系统Python中已经添加的模块

不Activate虚拟环境,直接用venv目录里的python.exe执行,列出系统Python中添加的模块

也就是说不Activate进入虚拟环境,pip命令就直接继承系统Python了。

是否激活虚拟环境对Python.exe执行py代码有什么区别?

再建py文件,引入sys模块(库),打印Python相关的环境变量 print(sys.path)

首先用系统Python执行:

路径中包括 [当前源码目录、系统Python的dll和lib目录,以及系统Python的site-packages目录]

不Activate虚拟环境,直接用venv目录里的python.exe执行:

结果包括 [当前源码目录、系统Python的dll和lib目录,venv目录、venv的site-packages目录]

Activate进入虚拟环境并执行:

结果与上面相同

从目前的结果上来说,用venv的python.exe执行py代码,跟是否激活虚拟环境没有关系。Activate影响的是pip安装模块(库)的时候。

同时也弄清楚了venv里的Python还是继承系统Python的DLL和Lib,所以直接把venv拷贝给其它机器的话,至少需要对方机器里已经安装了同版本的Python。

python安装虚拟环境没有activate_Python venv虚拟环境Activate的作用相关推荐

  1. python安装虚拟环境没有activate_Python venv虚拟环境:Activate命令的作用

    之前在处理其它需求时,发现只要用venv目录下的python.exe来解释py代码就可以正常运行.本来以为完事了,突然想起来,这样的话根本没有运行Activate命令,没有进入Python虚拟环境啊. ...

  2. python安装venv_Python创建virtualenv(虚拟环境)方法及安装Ubuntu

    {{ hello }} Django模板测试 {%block mainbody %} original {%endblock %}

  3. python安装虚拟环境没有activate_python安装虚拟环境

    python虚拟环境主要便于在同一机器上使用不同版本的python,以及同一版本python但是依赖的包版本不同的情况. 安装使用方法 安装virtualenv环境 安装之前最好安装pip或者pip3 ...

  4. Python中pip,pip3,虚拟环境(venv)三者的关系,如何在pycharm中使用虚拟环境,以及安装依赖包所遇到的问题。

    目录 一.是什么是pip,pip3,与虚拟环境(venv) 二.三者之间的联系 三.在pycharm中设置虚拟环境 四.安装python依赖包的快捷方式 五.注意事项 六.感谢观看!!!点个赞或者关注 ...

  5. 【Python技巧】(虚拟环境报错、pycharm)无法加载文件 ...\venv\Scripts\activate.ps1,因为在此系统上禁止运行脚本。

    一.问题出现: 使用Pycharm设置虚拟环境后,打开终端出现如下报错: 无法加载文件-\venv\Scripts\activate.ps1,因为在此系统上禁止运行脚本. 二.解决方式 已管理员的身份 ...

  6. python安装虚拟环境virtualenv

    虚拟环境 虚拟环境是一个将不同项目所需求的依赖分别放在独立的地方的一个工具,它给这些工程创建虚拟的Python环境.它解决了"项目X依赖于版本1.x,而项目Y需要项目4.x"的两难 ...

  7. Python虚拟环境pyenv、venv(pyvenv)、virtualenv之间的区别,终于搞清楚了!

    背景 问题1: 举个例子,tensorflow(tf)是一个十分流行的python机器学习库,你现在手里有两个tf项目,其中项目A需要使用python2.7 + f1.2,项目B需要使用python2 ...

  8. [How TO]-python venv虚拟环境

    目的 当你创建一个 Python 项目的时候,你会先整一个虚拟环境(virtualenv),在这里面使用到的第三方模块,版本等,都只作用于你这个项目当前的环境,和其他的项目互不干扰 当你项目开发完成, ...

  9. python安装与配置虚拟环境包_python 虚拟环境配置及pypi包使用及包怎么

    python虚拟解释器环境. 场景:公司不同时期的多个开发项目,使用的python大版本和各个包的版本不尽相同. 每个项目要求有一套让自己成功运行的解释器.一个程序员可能同时开发多个项目.电脑上需要有 ...

最新文章

  1. 本地MySQL数据库要访问远程MySQL数据库的表中的数据的实现
  2. SCI论文写作中的注意事项
  3. CTF中智能合约部署交互基础
  4. 信息收集——网站克隆和钓鱼邮件
  5. 完全CSS实现鼠标移上出现层的效果(超简单)
  6. ansible 修改文件变量_基于ansible的批量配置生成
  7. 华为海外版操作系统曝光?HUAWEI ARK OS现身
  8. 环信Demo 导入错误
  9. 种树(codevs 1768)
  10. 设计模式 (二十二) 责任链模式
  11. 浏览器html控件编辑,HTMLEdit 示例:包装 Internet Explorer MSHTML 编辑控件
  12. Python办公自动化(四):PDF处理自动化
  13. 实习(光条中心提取,灰度重心法)
  14. Modem analyze by T32 tool.
  15. struggle for English college test band 6
  16. 光圈,焦距,工作距离与景深之间的关系。
  17. eviews如何处理缺失数据填补_缺失值的处理
  18. 丨EGFR FISH 探针解决方案
  19. [Redis] Redis实战
  20. 干货课堂丨分享一种LCD驱动电路方案【飞凌嵌入式】

热门文章

  1. 字节跳动和美团为什么都在「变硬」
  2. 【FPGA】状态机实现按键消抖
  3. CTF-crypto(在线工具)
  4. 物理世界的互动之旅:Matter.js入门指南
  5. 泛域名解析和域名解析的区别+DNS
  6. 张云龙-一个程序员的成长之路 - 剖析别人,总结自己
  7. 全面剖析CPU温度监控技术
  8. Shell脚本中简单脚本示例
  9. Excel自动化拆分工作表
  10. php smarty在线教程,Smarty快速入门之一_PHP教程