ماژول python sys توابع و متغیرهایی را ارائه می دهد که برای دستکاری قسمتهای مختلف محیط اجرای پایتون استفاده می شود. این به ما امکان می دهد به پارامترها و توابع خاص سیستم دسترسی پیدا کنیم.
اول ، ما باید ماژول sys را در برنامه خود قبل از اجرای هرگونه عملکرد وارد کنیم. که با import sys انجام می شود و سپس موارد را با یکدیگر بررسی خواهیم کرد.
sys.modules
این تابع نام ماژول های پایتون موجود را که وارد شده است فراهم می کند.
import sys
print(sys.modules)
sys.argv
این تابع لیستی از آرگومان های خط فرمان ارسال شده به یک اسکریپت پایتون را برمی گرداند. نام اسکریپت همیشه آیتم در شاخص 0 است و بقیه آرگومان ها در شاخص های بعدی ذخیره می شوند.
import sys
print("This is the name of the program:",sys.argv[0])
print("Number of elements including the name of the program:",len(sys.argv))
print("Number of elements excluding the name of the program:",(len(sys.argv)-1))
print("Argument List:",str(sys.argv))
sys.base_exec_prefix
این تابع روشی کارآمد برای همان مقادیر exec_prefix فراهم می کند. در صورت عدم اجرای یک محیط مجازی ، مقدار آن ثابت خواهد ماند.
>>> sys.base_exec_prefix
'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38'
sys.path
این تابع PYTHONPATH تنظیم شده در سیستم فعلی را نشان می دهد. این یک متغیر محیطی است که یک مسیر جستجو برای همه ماژول های پایتون است.
>>> sys.path
['C:/Users/AliBigdeli/Desktop', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\Lib\\idlelib', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\python38.zip', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\DLLs', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\lib', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38', 'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\lib\\site-packages']
sys.getrefcount
این تابع تعداد مرجع یک شی را برمی گرداند.
import sys
print(sys.getrefcount(55)) #9
var = 55
print(sys.getrefcount(55)) #10
var = var + 1
print(sys.getrefcount(55)) #9
sys.exit
این تابع برای خروج از کنسول Python یا خط فرمان استفاده می شود و همچنین در صورت استثنا برای خروج از برنامه استفاده می شود.
sys.executable
مقدار این تابع مسیر مطلق به یک مفسر پایتون است. برای دانستن محل نصب پایتون روی دستگاه شخص دیگری مفید است.
>>> sys.executable
'C:\\Users\\AliBigdeli\\AppData\\Local\\Programs\\Python\\Python38\\pythonw.exe'
sys.platform
از این مقدار این تابع برای شناسایی بستری که ما روی آن کار می کنیم استفاده می شود.
>>> sys.platform
'win32'