访问 Python 的配置信息
可以通过 sysconfig 模块访问 Python 安装的配置信息。例如,安装路径列表和特定于安装平台的配置变量。
sysconfig 模块提供以下函数来访问配置变量
sysconfig.get_config_vars()
不带参数时,此函数返回与当前平台相关的全部配置变量的字典。
>>> import sysconfig
>>> sysconfig.get_config_vars()
{'prefix': 'E:\python37', 'exec_prefix': 'E:\python37', 'py_version': '3.7.2', 'py_version_short':
'3.7', 'py_version_nodot': '37', 'installed_base': 'E:\python37', 'base': 'E:\python37',
'installed_platbase': 'E:\python37', 'platbase': 'E:\python37', 'projectbase': 'E:\python37',
'abiflags': '', 'LIBDEST': 'E:\python37\Lib', 'BINLIBDEST': 'E:\python37\Lib', 'INCLUDEPY':
'E:\python37\Include', 'EXT_SUFFIX': '.pyd', 'EXE': '.exe', 'VERSION': '37', 'BINDIR':
'E:\python37', 'SO': '.pyd', 'userbase': 'C:\Users\acer\AppData\Roaming\Python', 'srcdir':
'E:\python37'}带参数时,返回特定键的值列表。对于每个参数,如果未找到值,则返回 None。
>>> sysconfig.get_config_vars('base','EXE')
['E:\python37', '.exe']sysconfig.get_config_var()
此函数返回单个变量名称的值。这等效于 get_config_vars().get(name)。如果未找到 name,则函数返回 None。
>>> sysconfig.get_config_var('VERSION')
'37'
>>> sysconfig.get_config_var('srcdir')
'E:\python37'Python 使用的安装方案根据平台和安装选项的不同而有所不同。目前支持以下方案
| posix_prefix | 适用于 Linux 或 Mac OS X 等 Posix 平台的方案。 |
| posix_home | 安装时使用 home 选项时,用于 Posix 平台的方案。 |
| posix_user | 通过 Distutils 安装组件并使用 user 选项时,用于 Posix 平台的方案。 |
| nt | 适用于 Windows 等 NT 平台的方案。 |
| nt_user | 使用 user 选项时,用于 NT 平台的方案 |
get_path_names()
此函数返回一个元组,其中包含 sysconfig 中当前支持的所有路径名称。
>>> sysconfig.get_path_names()
('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', 'scripts', 'data')每个方案都由具有唯一标识符的各种路径组成。路径名称如下所示
| stdlib | 包含不特定于平台的标准 Python 库文件的目录。 |
| platstdlib | 包含特定于平台的标准 Python 库文件的目录。 |
| platlib | 特定于站点的、特定于平台的文件的目录。 |
| purelib | 特定于站点的、非特定于平台的文件的目录。 |
| include | 非特定于平台的头文件的目录。 |
| platinclude | 特定于平台的头文件的目录。 |
| scripts | 脚本文件的目录。 |
| data | 数据文件的目录。 |
get_path()
此函数返回对应于路径名称的安装路径,来自名为 scheme 的安装方案。
>>> sysconfig.get_path('include')
'E:\python37\Include'>>> sysconfig.get_platform() 'win-amd64'
get_python_version()
此函数返回作为字符串的 MAJOR.MINOR Python 版本号。
get_platform()
此函数返回一个字符串,该字符串标识当前平台。
还可以使用 sysconfig 模块和 –m 选项访问配置变量及其值。
E:\python37>python -m sysconfig Platform: "win-amd64" Python version: "3.7" Current installation scheme: "nt" Paths: data = "E:\python37" include = "E:\python37\Include" platinclude = "E:\python37\Include" platlib = "E:\python37\Lib\site-packages" platstdlib = "E:\python37\Lib" purelib = "E:\python37\Lib\site-packages" scripts = "E:\python37\Scripts" stdlib = "E:\python37\Lib" Variables: BINDIR = "E:\python37" BINLIBDEST = "E:\python37\Lib" EXE = ".exe" EXT_SUFFIX = ".pyd" INCLUDEPY = "E:\python37\Include" LIBDEST = "E:\python37\Lib" SO = ".pyd" VERSION = "37" abiflags = "" base = "E:\python37" exec_prefix = "E:\python37" installed_base = "E:\python37" installed_platbase = "E:\python37" platbase = "E:\python37" prefix = "E:\python37" projectbase = "E:\python37" py_version = "3.7.2" py_version_nodot = "37" py_version_short = "3.7" srcdir = "E:\python37" userbase = "C:\Users\acer\AppData\Roaming\Python"
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP