17.1.5 定制用户配置
类似于sitecustomize,每次解释器启动时都可以用usercustomize模块建立用户特定设置。usercustomize在sitecustomize之后加载,所以可以覆盖整个站点的定制设置。
有些环境下,运行不同操作系统或不同版本的多个服务器会共享用户的主目录,标准用户目录机制可能不适用于安装用户特定的包。在这些情况下,可以使用一个平台特定的目录树。
print('Loading usercustomize.py')
import site
import platform
import os
import sys
path = os.path.expanduser(os.path.join('~',
'python',
sys.version[:3],
platform.platform(),
))
print('Adding new path',path)
site.addsitedir(path)
类似于介绍sitecustomize时所用的脚本,可以用另一个简单的脚本来展示在Python开始运行其他代码之前会先导入usercustomize.py。
import sys
print('Running main program from\n{}'.format(sys.argv[0]))
print('End of path:',sys.path[-1])
由于usercustomize被用来建立一个用户的用户特定配置,所以应当将其安装在用户默认路径上的某个位置,而不是放在整个站点路径上。默认的USER_BASE目录就是一个很合适的位置。这个例子显式地设置了PYTHONPATH,以确保可以导入这个模块。
当用户站点目录特性被禁用时,不会导入usercustomize,不论它位于用户站点目录还是在其他位置。