recent
أخبار ساخنة

أنظمة التشغيل و المسارات في لغة بايثون 11

AM VIIP
الصفحة الرئيسية
أنظمة التشغيل و المسارات في لغة بايثون 11

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

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

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

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

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

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

>>>import os

 

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

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

مثال 1

>>>os.rename ("C:\\Users\\sama\\Desktop\\nusur.txt", "C:\\Users\\sama\\Desktop\\nusurtech.txt")

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


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

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

مثال 2

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

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


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

من خلال إستخدام os.mkdir يُمكننا أن ننشئ مجلد أو مجلدات عديدة و ذلك بإستخدام الدالتين 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.

google-playkhamsatmostaqltradent