पायथन के इंस्टॉलेशन की कॉन्फ़िगरेशन जानकारी को 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'
पायथन एक इंस्टॉलेशन योजना का उपयोग करता है जो प्लेटफॉर्म और इंस्टॉलेशन विकल्पों के आधार पर भिन्न होती है। वर्तमान में निम्नलिखित योजनाएं समर्थित हैं:
| posix_prefix | लिनक्स या मैक ओएस एक्स जैसे पॉिक्स प्लेटफॉर्म के लिए योजना। |
| posix_home | इंस्टॉलेशन पर होम विकल्प का उपयोग किए जाने पर पॉिक्स प्लेटफॉर्म के लिए योजना। |
| posix_user | जब कोई घटक Distutils के माध्यम से स्थापित किया जाता है और उपयोगकर्ता विकल्प का उपयोग किया जाता है तो पॉिक्स प्लेटफॉर्म के लिए योजना। |
| nt | विंडोज जैसे NT प्लेटफॉर्म के लिए योजना। |
| nt_user | NT प्लेटफॉर्म के लिए योजना, जब उपयोगकर्ता विकल्प का उपयोग किया जाता है। |
get_path_names()
यह फ़ंक्शन वर्तमान में sysconfig में समर्थित सभी पथ नामों को समाहित करने वाला एक टपल लौटाता है।
>>> sysconfig.get_path_names()
('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', 'scripts', 'data')
प्रत्येक योजना विभिन्न पथों से बनी होती है जिनका विशिष्ट पहचानकर्ता होता है। पथ नाम नीचे दिए गए हैं:
| stdlib | प्लेटफॉर्म-विशिष्ट नहीं होने वाली मानक पायथन लाइब्रेरी फ़ाइलों वाली निर्देशिका। |
| platstdlib | प्लेटफॉर्म-विशिष्ट मानक पायथन लाइब्रेरी फ़ाइलों वाली निर्देशिका। |
| platlib | साइट-विशिष्ट, प्लेटफॉर्म-विशिष्ट फ़ाइलों के लिए निर्देशिका। |
| purelib | साइट-विशिष्ट, गैर-प्लेटफॉर्म-विशिष्ट फ़ाइलों के लिए निर्देशिका। |
| include | गैर-प्लेटफॉर्म-विशिष्ट हेडर फ़ाइलों के लिए निर्देशिका। |
| platinclude | प्लेटफॉर्म-विशिष्ट हेडर फ़ाइलों के लिए निर्देशिका। |
| scripts | स्क्रिप्ट फ़ाइलों के लिए निर्देशिका। |
| data | डेटा फ़ाइलों के लिए निर्देशिका। |
get_path()
यह फ़ंक्शन नामित योजना install scheme से पथ नाम के अनुरूप इंस्टॉलेशन पथ लौटाता है।
>>> sysconfig.get_path('include')
'E:\\python37\\Include'
>>> sysconfig.get_platform() 'win-amd64'
get_python_version()
यह फ़ंक्शन MAJOR.MINOR पायथन संस्करण संख्या को स्ट्रिंग के रूप में लौटाता है।
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"