شرح مكتبة OS في لغة بايثون - ProgrammerTech
Language:

Search

شرح مكتبة OS في لغة بايثون

  • Share this:
شرح مكتبة OS في لغة بايثون

مكتبة os في بايثون

مكتبة OS تسمح لنا في تنفيذ بعض الأوامر التي تتعلق بنظام التشغيل الخاص بنا, (إنشاء مجلدات, حذف, إعادة تسمية....إلخ, على الرغم من أنه نستطيع أداء أغلب هذه الأوامر بشكل يدوي إلا أنه في الأغلب ما يحتاج إلى أتمتة هذه المهام عند كتابة برامج في بايثون.

يُمكن القيام بالكثير من المهام التي نقوم بتنفيذها على مستوى نظام التشغيل من خلال إستخدام مكتبة os و من هذه المهام:

  1. معرفة بعض المعلومات عن نظام التشغيل.
  2. إجراء العمليات على المجلدات ( الإنشاء, النسخ, الحذف).
  3. التعامل مع الملفات في نظام التشغيل والتعديل عليها أو إنشائها.
  4. تعامل مع متغيرات النظام و معرفة معلومات عنها.

في درس اليوم سوف نتحدث عن os module و من الإسم واضح أنه يتعامل مع أنظمة التشغيل,. جميع الميثود الذي به سهلة التعامل.

إستدعاء مكتبة os في بايثون

>>>import os

 

إعادة تسمية الملفات و المجلدات os.rename

من أجل إعادة تسمية ملف موجود بإسم programmer.txt إلى programmertech.txt في المسار الحالي للعمل نستخدم في هذا الأمر الدالة os.rename, أي إذا أردنا تغيير إسم ملف نذهب لمساره اولاً عن طريق شل البايثون, ثم وضع فاصله و وضع المسار و الإسم الجديد كالمثال التالي:

مثال 1

>>>os.rename ("C:\\Users\\sama\\Desktop\\programmer.txt", "C:\\Users\\sama\\Desktop\\programmertech.txt")

اولاً إستخدمنا لتغيير الإسم os.rename ثم حددنا مسار الملف الذي نريد تغيير إسمه الموجود على سطح المكتب بإسم programmer.txt و وضعنا فاصلة ثم وضعنا المسار مرة أخرى مع تغيير إسم الملف للإسم الجديد programmertech.txt و عندما ضغطنا على زر Enter مباشرتاً تم تغيير إسم الملف لإسمه الجديد في سطح المكتب.

 

حذف الملفات os.remove

 من أجل حذف الملفات و المجلدات نستخدم (os.remove)

الدالة os.remove نستطيع إستخدامها من أجل حذف الملفات, و في حال لم يكن الملف موجوداً سيظهر لك خطأ في المسار الحالي و سوف يظهر أيضاً خطأ في حال كان الملف قيد الإستخدام من قبل برنامج آخر او لا تملك الصلاحيات اللازمة لحذف هذا الملف.

مثال 2

>>>os.remove ("C:\\Users\\sama\\Desktop\\programmertech.txt")

عند الضغط على Enter سوف يختفي الملف من سطح المكتب و يُحذَف بشكل نهائي.

 

إنشاء مجلدات os.mkdir

من خلال إستخدام os.mkdir يُمكننا Hن ننشئ مجلد أو مجلدات عديدة و ذلك بإستخدام الدالتين os.mkdir و os.makedirs و الفرق بين الداتين هو أن الدالة الأولى تعمل على إنشاء مجلد واحد فقط في مسار العمل الحالي, و بينما تعمل الدالة الثانية على إنشاء عدة مجلدات في مسار واحد.

مثال 3


>>>os.mkdir ("C:\\Users\\sama\\Desktop\\Muhammad")
>>>os.makedirs ("C:\\Users\\sama\\Desktop\\Muhammad1\Muhammad2\Muhammad3\Muhammad4")

في أول سطر إستخدمنا os.mkdir من أجل إنشاء مجلد واحد إسمه Muhammad, أما في السطر الثاني إستخدمنا الدالة os.makedirs من أجل إنشاء عدة مجلدات بداخل مجلد أب و هو Muhammad و في داخله سوف يكون المجلد Muhammad1 و بداخله Muhammad2 ثم Muhammad3 ثم Muhammad4.

 

حذف المجلدات os.rmdir

من أجل حذف مجلد يُمكننا إستخدام الدالة os.rmdir بنفس القيود إذا لم يكن المجلد موجود سوف يظهر خطأ عند إستدعاء الدالة و كذلك ينبغي أن يكون لديك صلاحية لحذف هذا المجلد، و يجب أن يكون هذا فارغاً قبل عملية الحذف.

>>>os.rmdir ("C:\\Users\\sama\\Desktop\\Muhammad")

بهذا الأمر يقوم بحذف المجلد Muhammad الذي انشأناه.

 

معرفة المسار الحالي os.getcwd

مكتبة os في بايثون تٌقدّم دوال للتعامل مع مسار العمل الحالي Current Working Directory و هذا يُعطينا ميزة قوية عند بناء برامج و تطبيقات في بايثون, و للتعرف على مسار العمل الحالي نستخدم دالة os.getcwd, عن طريق إستخدام الأمر os.getcwd يمكن أن يعطينا المسار الحالي الذي نعمل به.

>>>os.getcwd()

سوف يعطينا المسار الموجودين به حالياً الذي نعمل عليه في بايثون.

 

تغيير مسار العمل os.chdir

دالة os.chdir تساعدنا في تغيير مسار العمل الحالي لبرنامج بايثون في جلسة العمل التي نعمل عليها.

>>>os.chdir ("C:\\Users\\sama\\Desktop\\")

في هذا المثال غيرنا مسار العمل الحالي على سطح المكتب.

 

معرفة المسارات الموجود بها os.listdir

عن طريق os.listdir() يمكننا معرفة جميع ما يوجد في المسار الحالي, أي في حال كنا على سطح المكتب سوف يعرض لنا جميع مافي سطح المكتب.

>>>os.listdir()

 

معرفة الملفات التي بها ملفات executable

أمر os.get_exec_path يعطينا المسارات التي تحتوي على ملفات executable مثل مترجم البايثون و غيره.

>>>os.get_exec_path()

 

معرفة إسم المستخدم الحالي os.getlogin

بواسطة أمر os.getlogin يمكننا معرفة إسم المستخدم الحالي لنظام التشغيل التشغيل في حال وجود عدة مستخدمين للنظام.

>>>os.getlogin()get_exec_path

 

فتح موجه الأوامر و الكتابة به os.popen

الأمر os.popen يمكننا من فتح موجه الأوامر في النظام و الكتابة به.

>>>os.popen("dir").read()

قلنا له افتح لنا CMD موجه الأوامر و أنشئ لنا أمر و نفذه على النظام و إقرأه.

 

التعامل مع المسارات path في بايثون

الوحدة الفرعية path في مكتبة التعامل مع النظام os تلعب دوراً كبيراً في تسهيل التعامل مع الملفات على مستوى نظام التشغيل في بايثون, و تقدم الوحدة path العديد من الإمكانيات الرائعة.

الدالة os.path.basename تقوم بإرجاع إسم الملف من مسار معين يعني لو إفترضنا أننا نُريد الحصول على إسم الملف من مسار معين سوف نمرّر المسار للدالة.

أمر إستدعاء الوحدة الفرعية path في مكتبة os

>>>import os.path

 

التأكد من وجود مسار معين isdir

>>>os.path.isdir("C:\\")

قلنا له هل C مسار موجود على هذا الحاسب ام لا, سوف يرد لنا ب True لأنه مسار موجود.

 

التأكد من وجود ملف ما isfile

>>>os.path.isfile("C:\\Users\\sama\\Desktop\\data.png")

حددنا مسار صورة إسمها data موجودة على سطح المكتب قلنا له هل موجودة الصورة على سطح المكتب أم لا و سوف يرد بـ true أو false.

 

دمج مسارين مع بعض join

>>>os.path.join("C:\\","\\sama")

بهذه الحالة سوف يقوم بدمج لنا مسار الـ C مع المستخدم sama.


Tags:
Muhammad Alush

Muhammad Alush

إسمي محمد تركي العلوش من سورية من ريف حلب الشرقي 1994, محب للتقنية و التعلم الذاتي, و جميع خبراتي تعلمتها ذاتياً, و اللغات البرمجية التي أتقنها هي html, css, javascript, php, c, python بالإضافة إلى حبي الكبير لمجال الشبكات.

موقعي programmer-tech.com