virtualenv如何工作?

virtualenv如何工作?,第1张

virtualenv如何工作?

我将描述基本过程,该过程是从链接@jcollado的演示中学到的。

Python启动时,它将查看二进制文件的路径及其前缀。

因此,假设您的virtualenv是

/home/blah/scratch
。Python进程知道它是从其执行的
/home/blah/scratch/bin/python
(通常只是系统python二进制文件的一个副本
/usr/bin/python
),并且它知道自己的版本,
X.Y
因为它已被编译到其中。然后,Python
lib/pythonX.Y/os.py
按照以下顺序查找:

/home/blah/scratch/bin/lib/pythonX.Y/os.py/home/blah/scratch/lib/pythonX.Y/os.py    <-- this file should exist/home/blah/lib/pythonX.Y/os.py/home/lib/pythonX.Y/os.py/lib/pythonX.Y/os.py

它停止在,

/home/blah/scratch/lib/pythonX.Y/os.py
因为它是实际存在的第一个文件。如果没有,Python将继续寻找。然后
sys.prefix
基于此进行设置。它使用类似的过程进行设置
sys.exec_prefix
,然后
sys.path
基于这些过程进行构造。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5654338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存