ویدیو آموزش ماژول os در پایتون

امیرحسین بیگدلو March 2025

ماژول os (مخفف operating system) در پایتون برای کار کردن با سیستم عامل است. ماژول os یکی از پر استفاده ترین ماژول ها در پایتون است. در این ماژول بیش از 300 متد و اتریبیوت وجود دارد که میتوانید از آنها استفاده کنید. ماژول os با تمام سیستم عامل های ویندوز، لینوکس و مک سازگار است. افزونه های هر سیستم عامل نیز در ماژول os در دسترس است اما استفاده از آنها ممکن است دسترسی پذیری را دچار مشکل کند. دقت کنید که تمام توابع ماژول os در صورتی که آرگومانی به آنها ارسال کنید که مورد قبول سیستم عامل نیست خطای OSError را نمایش خواهند داد.

ماژول os به شکل استاندار در هسته اصلی پایتون قرار گرفته است و نیازی به نصب آن ندارید. فقط کافیست مستقیما آن را ایمپورت کرده و با متد dir به متدها و اتریبیوت های آن نگاهی بیندازید:

>>> import os

>>> dir(os)

 

# ساخت دایرکتوری با تابع mkdir

برای ساخت یک دایرکتوری جدید میتوانید از تابع mkdir ماژول os استفاده کنید. در صورتی که تابع از قبل وجود داشته باشد خطای FileExistsError نمایش داده خواهد شد. از این تابع میتوانید در سیستم عامل های ویندوز و لینوکس استفاده کنید. سینتکس این تابع به شکل زیر است:

os.mkdir(path, mode, dir_fd)

پارامتر اول مشخص کننده مسیری است که میخواهید دایرکتوری در آن ایجاد شود. پارامتر دوم که اختیاری است دسترسی های دایرکتوری را مشخص میکند که به شکل پیشفرض مقدار Oo777 است. برای مثال نحوه ایجاد کردن یک دایرکتوری جدید در ویندوز به شکل زیر است:

>>> import os

>>> os.mkdir("c:/test/w3school") 

 

# نمایش اطلاعات داخل دایرکتوری با تابع listdir

تابع listdir ماژول os تمام فایل های داخل دایرکتوری فعلی را لیست میکند:

>>> import os
>>> os.listdir()
['.DS_Store', '.localized', 'JournalDev', 'Java', 'Python']

همچنین میتوانید یک مسیر را به عنوان پارامتر به این تابع ارسال کنید تا فایل های داخل آن مسیر را به شما نمایش دهد.

 

# متوقف کردن یک پراسس با تابع abort

با استفاده از تابع abort ماژول os میتوانید یک پراسس در حال اجرا را بلافاصله خاتمه دهید. این تابع یک سیگنال SIGABRT ایجاد میکند که در یونیکس باعث ایجاد یک CORE DUMP و در ویندوز باعث ایجاد کد خروج 3 میشود. برای مثال به کد زیر دقت کنید:

>>> import os

>>> def example():
...... print("Process abort after printing this line")
...... os.abort()
...... print ("Process abort before printing this line")

>>> example()
Process abort after printing this line

 

# کار با متغیرهای محیطی با تابع environ

با تابع environ ماژول os میتوانید به متغیرهای محیطی سیستم عامل دسترسی پیدا کنید. برای مشاهده همه متغیرهای محیطی به شکل زیر کار کنید:

>>> import os
>>> os.environ

همچنین میتوانید به هر متغیر محیطی به شکل جداگانه دسترسی پیدا کنید. مثلا برای دسترسی به متغیر محیطی HOME میتوانید به شکل زیر کار کنید:

>>> os.environ['HOME']

در صورتی که متغیر محیطی که صدا میزنید وجود نداشته باشد با خطای KeyError مواجه خواهید شد. برای جلوگیری از بروز خطا میتوانید از تابع get در کنار تابع environ استفاده کنید:

>>> os.environ.get('KEY_THAT_MIGHT_EXIST', default_value)

در اینصورت اگر متغیر محیطی که به دنبال آن هستید وجود نداشته باشد، مقدار پیشفرض برگشت داده خواهد شد. همچنین میتوانید از تابع getenv نیز استفاده کنید که عملکردی مشابه کد بالا دارد:

>>> os.getenvb(key, default=None)

 

ویدیوهای مشابه



ارسال نظر


Arad

1 سال قبل پاسخ به نظر

سلام استاد خسته نباشید. من یک مشکلی داشتم. اون هم این هست که من کامپیوترم windows هست و uname رو ندارم و environ هم که بجای uname در ویندوز هست هم کار نمی کنه. چیکار کنم؟

ارسال نظر



امیرحسین بیگدلو

1 سال قبل

سلام
متاسفانه اطلاعی از ویندوز ندارم

alie es

1 سال قبل پاسخ به نظر

سلام امير اقا خسته نباشيد ببخشيد يه سوال داشتم خدمتتون كه توي يه كدي نوشته شده بود
()os.path,exists

داخل پرانتز هم اسم متغير رو نوشته بود.فقط من كاربرد و نقش اون path رو اونجا نفهميدم ممنون ميشم بهم كمك كنيد.

ارسال نظر



امیرحسین بیگدلو

1 سال قبل

سلام
path مشخص کننده مسیر هستش. این کد میگه که آیا فلان مسیر وجود داره یا نه

مونگارد