ข้อมูลการกำหนดค่าของการติดตั้ง Python สามารถเข้าถึงได้โดยโมดูล sysconfig ตัวอย่างเช่น รายการพาธการติดตั้งและตัวแปรคอนฟิกูเรชันเฉพาะสำหรับแพลตฟอร์มการติดตั้ง
โมดูล 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) หากไม่พบชื่อ ฟังก์ชันจะคืนค่า None
>>> sysconfig.get_config_var('VERSION')
'37'
>>> sysconfig.get_config_var('srcdir')
'E:\\python37' Python ใช้รูปแบบการติดตั้งที่แตกต่างกันไปตามแพลตฟอร์มและตัวเลือกการติดตั้ง ปัจจุบันรองรับรูปแบบต่อไปนี้:
| posix_prefix | แผนงานสำหรับแพลตฟอร์ม Posix เช่น Linux หรือ Mac OS X |
| posix_home | แผนงานสำหรับแพลตฟอร์ม Posix ที่ใช้เมื่อใช้ตัวเลือกหลักในการติดตั้ง |
| posix_user | แบบแผนสำหรับแพลตฟอร์ม Posix ที่ใช้เมื่อส่วนประกอบถูกติดตั้งผ่าน Distutils และใช้ตัวเลือกผู้ใช้ |
| ไม่ | แผนงานสำหรับแพลตฟอร์ม NT เช่น Windows |
| nt_user | แผนงานสำหรับแพลตฟอร์ม NT เมื่อใช้ตัวเลือกผู้ใช้ |
get_path_names()
ฟังก์ชันนี้ส่งคืนทูเพิลที่มีชื่อพาธทั้งหมดที่รองรับใน sysconfig ในปัจจุบัน
>>> sysconfig.get_path_names()
('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', 'scripts', 'data') แต่ละแบบแผนประกอบด้วยเส้นทางต่างๆ ที่มีตัวระบุที่ไม่ซ้ำกัน ชื่อเส้นทางมีดังนี้:
| stdlib | ไดเร็กทอรีที่มีไฟล์ไลบรารี Python มาตรฐานซึ่งไม่ใช่เฉพาะแพลตฟอร์ม |
| platstdlib | ไดเร็กทอรีที่มีไฟล์ไลบรารี Python มาตรฐานเฉพาะแพลตฟอร์ม |
| platlib | ไดเร็กทอรีสำหรับไฟล์เฉพาะไซต์ เฉพาะแพลตฟอร์ม |
| เพียวลิบ | ไดเร็กทอรีสำหรับไฟล์เฉพาะไซต์และไม่เจาะจงแพลตฟอร์ม |
| รวม | ไดเร็กทอรีสำหรับไฟล์ส่วนหัวที่ไม่เฉพาะเจาะจงของแพลตฟอร์ม |
| แพลตตินั่ม | ไดเร็กทอรีสำหรับไฟล์ส่วนหัวเฉพาะแพลตฟอร์ม |
| สคริปต์ | ไดเร็กทอรีสำหรับไฟล์สคริปต์ |
| ข้อมูล | ไดเร็กทอรีสำหรับไฟล์ข้อมูล |
get_path()
ฟังก์ชันนี้ส่งคืนพาธการติดตั้งที่สอดคล้องกับชื่อพาธ จากรูปแบบการติดตั้งที่ชื่อโครงร่าง
>>> 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"