ویدیو آموزش ماژول sys در پایتون
در این ویدیو با ماژول sys در پایتون آشنا میشوید.
ماژول sys حاوی متغیرها و فانکشنهای مربوط به مفسر پایتون است. در اینجا با مهمترین این موارد آشنا خواهید شد.
دقیقا مانند هر ماژول دیگری در پایتون میتوانید با استفاده از فانکشن dir به مقادیر موجود دسترسی پیدا کنید:
import sys
>> dir(sys)
['__breakpointhook__', '__displayhook__', '__doc__', '__excepthook__', '__interactivehook__', '__loader__', '__name__', '__package__', '__spec__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_debugmallocstats', '_framework', '_getframe', '_git', '_home', '_xoptions', 'abiflags', 'api_version', 'argv', 'base_exec_prefix', 'base_prefix', 'breakpointhook', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', 'exc_info', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style', 'get_asyncgen_hooks', 'get_coroutine_origin_tracking_depth', 'get_coroutine_wrapper', 'getallocatedblocks', 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencodeerrors', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'getswitchinterval', 'gettrace', 'hash_info', 'hexversion', 'implementation', 'int_info', 'intern', 'is_finalizing', 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'set_asyncgen_hooks', 'set_coroutine_origin_tracking_depth', 'set_coroutine_wrapper', 'setcheckinterval', 'setdlopenflags', 'setprofile', 'setrecursionlimit', 'setswitchinterval', 'settrace', 'stderr', 'stdin', 'stdout', 'thread_info', 'version', 'version_info', 'warnoptions']
با استفاده از متغیر path میتوانید به مسیرهایی که مسفر پایتون برای وارد کردن ماژولهای دیگر استفاده میکند دسترسی داشته باشید. هر وقت ماژولی را وارد می کنید یا برنامه ای را با استفاده از یک مسیر نسبی اجرا می کنید ، مترجم پایتون با استفاده از متغیر path ، ماژول یا اسکریپت لازم را جستجو می کند:
>> sys.path
['/home/amir/Desktop/pyaparat', '/home/amir/Desktop/pyaparat', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/amir/Desktop/pyaparat/venv/lib/python3.7/site-packages']
متغیر maxsize بزرگترین عددی که میتوانید ذخیره کنید را نشان میدهد. این عدد معمولا 2 به توان 31 - 1 در سیستمهای 32 بیتی و 2 به توان 63 - 1 در سیستمهای ۶۴ بیتی است:
>> sys.maxsize
9223372036854775807
متغیر executable مشخص کننده مفسر پایتونی است که در حال حاضر فعال است:
>> sys.executable
/home/user/Desktop/myproject/venv/bin/python
با استفاده از متغیر platform میتوانید نوع سیستم عامل را بفهمید:
>> sys.platform
linux
متغیر version نسخه پایتون را نشان میدهد:
>> sys.version
3.7.5 (default, Apr 19 2020, 20:18:17)
با استفاده از متد exit() میتوانید برنامه را از حالت اجرا خارج کنید:
import time
import sys
if sys.platform == 'linux':
sys.exit()
else:
time.sleep(5)
و با استفاده از argv میتوانید متغیرهایی که در زمان اجرای برنامه توسط کاربر ارسال میشوند را دریافت کنید:
if sys.argv[1] == 'admin':
print('Hello admin')
else:
sys.exit()
$ python test.py admin
Hello admin
ارسال نظر