يعد اعتماد Python على الملفات الخارجية جانبًا مهمًا ، فمن الحكمة الانتباه إلى الملفات الأساسية / المصدر قبل تنفيذ أي كود. قبل تشغيل برنامج معين ، تحتاج إلى التأكد من وجود ملفات المصدر في الموقع المحدد.

يتفهم كل مطور الحاجة إلى إنشاء أكواد احتياطية ، والتي يمكن أن توفر البرنامج من الفشل في حالة عدم تلبية الشرط. في بايثون ، توجد عدة طرق للتحقق من وجود الملف ؛ فيما يلي أهم الطرق التي يجب أن تعرفها.

1. جرب واستثناء العبارات

ال تحقق عبارة "try and except" من أحد الأوامر وتنتج مخرجات. في الكود أدناه ، فإن محاولة سيحاول البيان فتح ملف (testfile.txt). إذا كان معالج Python قادرًا على تحديد موقع الملف ، فسيفتح الملف ويطبع النتيجة الملف مفتوح ومتاح للاستخدام.

محاولة:
f = open ('testfile.txt')
طباعة ("الملف متاح للاستخدام")
f.close ()
باستثناء IOError:
طباعة ("الملف غير قابل للوصول")

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

يعد اعتماد Python على الملفات الخارجية جانبًا مهمًا ، وعليك الانتباه إلى الملفات الأساسية / المصدر ، قبل تنفيذ أي أكواد.

instagram viewer

قبل تنفيذ برنامج معين ، تأكد من وجود ملفات المصدر الخاصة بك في الموقع المحدد.

2. Os.path.isfile (مسار)

تحتوي Python على نظام تشغيل وحدة مدمج يمكن استدعاؤه للتفاعل مع الملفات والمجلدات والأدلة الأساسية. بيثون os.path.isfile () يمكن استخدام الطريقة للتحقق من دليل وما إذا كان هناك ملف معين موجود.

تتمثل الخطوة الأولى في استيراد الوظيفة المضمنة باستخدام ملحق استيراد os.path مكتبة. يتحقق الأمر التالي مما إذا كان الملف موجودًا في الموقع المحدد.

استيراد os.path
os.path.isfile (r "C: \ Users \ Wini Bhalla \ Desktop \ Python test file.txt")

يعود الإخراج حقيقي، لأن الملف موجود في الموقع المحدد. إذا كان الملف غير موجود ، فسيعود Python خاطئة.

3. Os.path.exists (مسار)

على أسس مماثلة ، فإن استيراد نظام التشغيل يمكن استخدام بيان المكتبة للتحقق مما إذا كان الدليل موجودًا على نظامك.

بناء الجملة بسيط إلى حد ما:

استيراد os.path
os.path.exists (r "C: \ Users \ Wini Bhalla \ Desktop \ test")

تمامًا مثل الخطوة السابقة ، إذا تم العثور على الدليل / المجلد على مسار النظام المحدد ، فستعود Python حقيقيوبعد ذلك خاطئة، إذا لم يتم العثور على الدليل / المجلد.

متعلق ب: تعلم بايثون؟ إليك كيفية نسخ ملف

4. نظام التشغيل طريق. إسدير (مسار)

تماما مثل os.path.isfile و os.path.exists (), os.path.isdir () هي وظيفة فرعية لمكتبة نظام التشغيل. الاختلاف الوحيد هنا هو أن هذا الأمر يعمل فقط للأدلة. كما هو متوقع ، يؤدي استخدام بناء الجملة هذا إلى إرجاع قيمة منطقية بناءً على وجود الدلائل.

على سبيل المثال:

استيراد نظام التشغيل
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ OS")

الإخراج حقيقي، لأن المجلد / الدليل موجود في المسار المحدد.

استيراد نظام التشغيل
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ testdirectory")

الإخراج خاطئة، لأن المجلد / الدليل غير موجود في المسار المحدد.

5. Pathlib.path.exists ()

تقدم إصدارات Python 3.4 وما فوقها باثليب الوحدة النمطية ، والتي يمكن استيرادها باستخدام ملف يستورد وظيفة. يلتقط Pathlib الوظائف الضرورية في مكان واحد ، ويجعلها متاحة من خلال طرق مختلفة لاستخدامها مع كائن المسار.

لاستخدام Pathlib:

استيراد مسار
ملف = pathlib. المسار (r "C: \ Users \ Wini Bhalla \ Desktop \ Python test file.txt")
إذا كان الملف موجودًا ():
طباعة ("الملف موجود")
آخر:
طباعة ("الملف غير موجود")

وفقًا لوجود الملف ، سيعرض الإخراج ما إذا كان الملف موجودًا في المسار المحدد أم لا. من الناحية المثالية ، فإن الكود الموجود في ملف مطبعة يمكن تغيير البيان حسب متطلبات برنامجك

6. Os.listdir (مسار)

ال listdir تقوم الطريقة في Python بإرجاع قائمة بجميع الملفات في دليل معين ، كما هو محدد من قبل المستخدم. ومع ذلك ، لن تقوم هذه الطريقة بإرجاع أي ملفات موجودة في المجلدات الفرعية.

ال listdir الأسلوب لا يقبل سوى معلمة واحدة ، مسار الملف. من الناحية المثالية ، سيكون مسار الملف عبارة عن أسماء الملفات والمجلدات التي ترغب في استردادها.

تتضمن البنية الأساسية ما يلي:

os.listdir (مسار)

في المثال أدناه ، يمكنك إنشاء حلقة لتصفح جميع الملفات المدرجة في الدليل ثم التحقق من وجود الملف المحدد المعلن باستخدام لو بيان.

استيراد نظام التشغيل
المسار = r'C: \ Users \ Wini Bhalla \ Desktop '
الملفات = os.listdir (مسار)
طباعة (ملفات)

سيقوم هذا الرمز بطباعة قائمة الملفات المتاحة في الدليل الحالي.

استيراد نظام التشغيل
المسار = r'C: \ Users \ Wini Bhalla \ Desktop 'files = os.listdir (مسار)
لـ f في الملفات:
إذا كانت f == "test.txt":
طباعة ("الملف موجود")
آخر:
طباعة ("الملف غير موجود")

علاوة على ذلك ، عند تشغيل الحلقة ، فإن ملف listdir تعمل جنبًا إلى جنب مع لو سينتقل منطق البيان عبر قائمة الملفات ويطبع النتائج ، اعتمادًا على الشروط التي تم تمريرها داخل ملف مطبعة بيان.

متعلق ب: استخدم الحلقات مع القوائم في بايثون

7. وحدة Glob

ال الكرة الأرضية تتطابق الوحدة النمطية مع جميع أسماء المسار مع المعلمات المحددة وتسمح لك بإيجاز بالوصول إلى نظام الملفات. نظرًا لاستخدام glob لمطابقة الأنماط ، يمكنك استخدامه للتحقق من حالة الملف.

يوجد مرجعين للمسار:

  • المسار المطلق: استخدم هذا عندما تريد البحث عن ملف في دليل مختلف.
  • مسار نسبي: استخدم هذا عندما تريد البحث عن ملف في الدليل الحالي.

إذا تم العثور على الملف ، فسيعود الرمز حقيقيوإلا ستعود خاطئة.

مثال على استخدام Glob:

استيراد الكرة الأرضية
إذا كان glob.glob (r "C: \ Users \ Wini Bhalla \ Desktop \ test.txt"):
طباعة ("الملف موجود")
آخر:
طباعة ("الملف غير موجود")

سيؤدي إخراج هذا الرمز إلى طباعة النتيجة ، إذا تم العثور على الملف.

8. عملية فرعية

يعد أمر الاختبار في وحدة العملية الفرعية طريقة فعالة لاختبار وجود الملفات والأدلة. تعمل أوامر الاختبار فقط في الأجهزة التي تعمل بنظام التشغيل Unix وليس في الأجهزة التي تعمل بنظام التشغيل Windows.

يمكنك استخدام الأوامر التالية حسب احتياجاتك:

  • اختبار -e: تحقق من وجود مسار
  • اختبار -f: تحقق من وجود ملف
  • اختبار- د: تحقق من وجود مجلد

التحقق من المسار مع العملية الفرعية:

من تشغيل استيراد العملية الفرعية
تشغيل (['test'، '-e'، 'testfile.txt']). returncode == 0
تشغيل (['test'، '-e'، 'im-not-here.txt']). returncode == 0

يسمى هذا الرمز بوظيفة الاختبار متبوعة بـ "-e" للتحقق من وجود مسار. تظهر الوظيفة خاطئة لمسار غير صالح.

التحقق من الملف بالعملية الفرعية:

تشغيل (['test'، '-f'، 'testfile.txt']). returncode == 0
تشغيل (['test'، '-f'، 'testdirectory']). returncode == 0

ال '-F' وظيفة تختبر وجود ملف وترجع خاطئة للحصول على دليل.

التحقق من الدليل بالعملية الفرعية:

تشغيل (['test'، '-d'، 'testfile.txt']). returncode == 0
تشغيل (['test'، '-d'، 'testdirectory']). returncode == 0

ال '-د' وظيفة تختبر وجود دليل وترجع خاطئة لأي استعلام ملف في أمر الاختبار.

ما هو الأمر الذي ستستخدمه لتحديد موقع ملفاتك؟

Python هي لغة سهلة الاستخدام نسبيًا ، وتوفر الكثير من الخيارات للمستخدمين النهائيين. للتحقق من وجود ملف (ملفات) ، يمكنك استخدام أي من الإجراءات المذكورة أعلاه.

ومع ذلك ، إذا كنت مبتدئًا ، فهناك دائمًا طرق لتعلم Python. نظرًا لأن Python هي لغة شاسعة ، فمن الأفضل قضاء بعض الوقت في فهم الفروق الدقيقة المختلفة ومجموعة أوامرها.

يشاركسقسقةبريد الالكتروني
ما الذي تفعله بايثون وما الذي يمكن استخدامها؟

تعد Python متعددة الاستخدامات للغاية ، حيث تتراوح التطبيقات من تطوير الويب إلى تحليل البيانات.

اقرأ التالي

مواضيع ذات صلة
  • برمجة
  • بايثون
  • نصائح الترميز
نبذة عن الكاتب
ويني بهالا (41 مقالة منشورة)

ويني كاتبة مقرها دلهي ، ولديها عامين من الخبرة في الكتابة. خلال مهامها الكتابية ، ارتبطت بوكالات التسويق الرقمي والشركات الفنية. لقد كتبت محتوى متعلقًا بلغات البرمجة والتكنولوجيا السحابية و AWS والتعلم الآلي وغير ذلك الكثير. في أوقات فراغها ، تحب الرسم وقضاء الوقت مع عائلتها والسفر إلى الجبال ، كلما أمكن ذلك.

المزيد من Wini Bhalla

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك