【python的路径】
1、PYTHONHOME
-
Change the location of the standard Python libraries. By default, the libraries are searched inprefix/lib/pythonversion
andexec_prefix/lib/pythonversion
, whereprefix
andexec_prefix
are installation-dependent directories, both defaulting to/usr/local
.PYTHONHOME是python库的路径。
When
PYTHONHOME
is set to a single directory, its value replaces bothprefix
andexec_prefix
. To specify different values for these, setPYTHONHOME
toprefix:exec_prefix
.
当prefix、exec_rpefix不一致时,PYTHONHOME设置为 prefix:exec_prefix。
2、PYTHONPATH
-
Augment the default search path for module files. The format is the same as the shell’sPATH
: one or more directory pathnames separated byos.pathsep
(e.g. colons on Unix or semicolons on Windows). Non-existent directories are silently ignored.module的默认搜索路径。
In addition to normal directories, individual
PYTHONPATH
entries may refer to zipfiles containing pure Python modules (in either source or compiled form). Extension modules cannot be imported from zipfiles.有可能添加zip文件。
The default search path is installation dependent, but generally begins with
prefix/lib/pythonversion
(seePYTHONHOME
above). It is always appended toPYTHONPATH
.在PYTHOMHOME的基础上添加了/lib/pythonversion。
3、site
This module is automatically imported during initialization. The automatic import can be suppressed using the interpreter’s -S
option.
Importing this module will append site-specific paths to the module search path and add a few builtins, unless -S
was used.
site模块会被自动加载,site会添加site-specific路径进入module search path。即使-S指定了。
It starts by constructing up to four directories from a head and a tail part. For the head part, it uses sys.prefix
and sys.exec_prefix
; empty heads are skipped. For the tail part, it uses the empty string and then lib/site-packages
(on Windows) or lib/pythonX.Y/site-packages
(on Unix and Macintosh). For each of the distinct head-tail combinations, it sees if it refers to an existing directory, and if so, adds it to sys.path
and also inspects the newly added path for configuration files.
A path configuration file is a file whose name has the form name.pth
and exists in one of the four directories mentioned above; its contents are additional items (one per line) to be added to sys.path
. Non-existing items are never added to sys.path
. No item is added to sys.path
more than once. Blank lines and lines beginning with #
are skipped. Lines starting with import
(followed by space or tab) are executed.
.pth是路径文件。
4、After these path manipulations, an attempt is made to import a module named sitecustomize
, which can perform arbitrary site-specific customizations. It is typically created by a system administrator in the site-packages directory.
5、After this, an attempt is made to import a module named usercustomize
, which can perform arbitrary user-specific customizations, if ENABLE_USER_SITE
is true. This file is intended to be created in the user site-packages directory (see below), which is part of sys.path
unless disabled by -s
.
待续。。。