دليل العمل هو دليل حالي نعمل فيه ويتم تشغيل البرنامج النصي منه ؛ داخل هذا الدليل ، لدينا وصول إلى العديد من الملفات (الموجودة بداخله). ومع ذلك ، نحتاج في بعض الأحيان إلى تغيير الدلائل والانتقال ذهابًا وإيابًا بين الملفات والمجلدات. في هذا البرنامج التعليمي ، سوف نتعلم كيفية تغيير دليل العمل في Python.
وحدة نظام التشغيل
في المقام الأول ، لتحقيق ذلك ، سنحتاج إلى وحدة os في Python. نظرًا لأنه يأتي مثبتًا مسبقًا ، فلا داعي لتثبيت أي شيء. تُستخدم وحدة نظام التشغيل عادةً في Python للتفاعل وإدارة وتعديل الملفات والمجلدات على النظام. على سبيل المثال ، يمكننا إنشاء / إزالة الدلائل ، وتغيير أدلة العمل ، والملفات التفصيلية ، والتحقق مما إذا كانت الملفات موجودة ، وما إلى ذلك ... وغني عن القول إنها وحدة نمطية مفيدة للغاية.
الحصول على دليل العمل الحالي
للحصول على دليل العمل الحالي ، نستخدم ملف طريقة getcwd () من وحدة نظام التشغيل. يرجى ملاحظة هنا أنه لم يتم تمرير أي حجة. في حالتي ، كان الإخراج / home / kalyani / PycharmProjects / pythonProject1 على جهاز Ubuntu (تشغيل PyCharm). هذا يعني أن البرنامج النصي الرئيسي - main.py - موجود داخل هذا المجلد (pythonProject1). وتذكر ، دليل العمل ، أولاً وقبل كل شيء مجلد!
يستورد أنت
# احصل على دليل العمل الحالي
الدليل الحالي= أنت.getcwd()
مطبعة('دليل العمل الحالي الخاص بك هو٪ s'٪ الدليل الحالي)
تغيير دليل العمل الحالي
يعد تغيير دليل العمل أمرًا سهلاً باستخدام طريقة chdir () ، والتي تأخذ وسيطة واحدة بالضبط - المسار إلى الموقع الجديد كسلسلة.
يستورد أنت
# احصل على دليل العمل الحالي
الدليل الحالي= أنت.getcwd()
مطبعة('دليل العمل الحالي الخاص بك هو٪ s'٪ الدليل الحالي)
أول شيء يجب القيام به هو تعيين المسار الجديد إلى دليل العمل. على Ubuntu ، هذا واضح جدًا!
# لنقم بتعيين دليل عمل جديددليل_العمل_الجديد= '/ home / kalyani / Desktop / PythonDirectory'
في Windows ، تحتاج إلى استخدام خطوط مائلة عكسية مزدوجة لتحديد الدليل.
#new_working_directory = 'C: \ Users \ never \ Desktop \ PythonDirectory'
بعد ذلك ، نحدد بند try-except. إذا كان المسار موجودًا ، فسنستخدم طريقة chdir () لتغيير دليل العمل إلى دليل عمل جديد. إذا لم يكن المسار دليلاً ، فسيؤدي ذلك إلى حدوث خطأ!
محاولة:أنت.شدير(دليل_العمل_الجديد)
مطبعة('تم تغيير دليل العمل!')
مطبعة('WD:٪ s'٪أنت.getcwd())
إلاNotADirectoryError: خطأ في الدليل:
مطبعة('لم تقم باختيار دليل.')
إلاFileNotFoundError:
مطبعة(لم يتم العثور على المجلد. المسار غير صحيح.)
إلاخطأ إذن:
مطبعة('ليس لديك حق الوصول إلى هذا المجلد / الملف.')
سيبدو الرمز الكامل كما يلي:
يستورد أنت# احصل على دليل العمل الحالي
الدليل الحالي= أنت.getcwd()
مطبعة('دليل العمل الحالي الخاص بك هو٪ s'٪ الدليل الحالي)
# لنقم بتعيين دليل عمل جديد
#new_working_directory = '/ home / kalyani / Desktop / PythonDirectory'
دليل_العمل_الجديد=صج: يوتخدمنأبدادسطح المكتب صدليل ython '
محاولة:
أنت.شدير(دليل_العمل_الجديد)
مطبعة('تم تغيير دليل العمل!')
مطبعة('WD:٪ s'٪أنت.getcwd())
إلاNotADirectoryError: خطأ في الدليل:
مطبعة('لم تقم باختيار دليل.')
إلاFileNotFoundError:
مطبعة(لم يتم العثور على المجلد. المسار غير صحيح.)
إلاخطأ إذن:
مطبعة('ليس لديك حق الوصول إلى هذا المجلد / الملف.')
في الواقع ، قد تثير الأخطاء أنواعًا مختلفة من الاستثناءات:
أنا. NotADirectoryError: خطأ في الدليل:
افترض الآن على سبيل المثال أنني كتبت الكود التالي للمسار أو دليل العمل الجديد:
دليل_العمل_الجديد= ج:\المستخدمون\أبدا\سطح المكتب\دليل بايثون\text.txt 'ما يمكنك ملاحظته هنا هو أنني أشير إلى المسار إلى مستند نصي يسمى text.txt. وسيؤدي الأخير إلى ظهور خطأ يُعرف باسم NotADirectoryError. بمعنى آخر ، يجب أن يشير مسارك إلى دليل من نوع ما.
ثانيا. FileNotFoundError:
يتم طرح FileNotFoundError عندما لا يكون المسار موجودًا. لذا ، افترض في الوقت الحالي أنه ليس لدي دليل باسم PythonDirectory على سطح المكتب وأنني قمت بتعيين المسار على:
دليل_العمل_الجديد= ج: يوتخدمنأبدادسطح المكتب صدليل ython 'سوف يرمي FileNotFoundError . يعني هذا الخطأ ببساطة أن الدليل الذي نشير إليه غير موجود أو لم يتم العثور عليه.
ثالثا. خطأ إذن:
إلى إذن خطأ يظهر عندما لا يمتلك المستخدم الأذونات الكافية لتعديل الدليل المختار أو الوصول إليه.
رابعا. خطأ في بناء الجملة:
يحدث خطأ في بناء الجملة عندما يكون هناك خطأ في بناء الجملة في المسار. على Windows ، إذا كتبنا لنقول:
دليل_العمل_الجديد= ج: يوتخدمنأبدادسطح المكتب صدليل ython 'تم طرح خطأ synthax! ومع ذلك ، يصعب اكتشاف الخطأ النحوي لأنه يحتاج إلى التقييم أو الاستيراد أو التنفيذ. على هذا النحو ، عندما نكتب قوالب try-except ، يكون من الصعب اكتشاف مثل هذا الخطأ.
على نظام Windows ، لتجنب أي أخطاء ، يمكن كتابة المسار بإحدى الطرق الثلاث المختلفة بحيث لا يتم إلقاء أي أخطاء:
الطريقة الأولى: في هذه الطريقة ، نضيف r قبل تحديد السلسلة.
دليل_العمل_الجديد=صج: يوتخدمنأبدادسطح المكتب صدليل ython 'الطريقة الثانية: نستخدم خطوط مائلة عكسية مزدوجة.
دليل_العمل_الجديد= ج:\المستخدمون\أبدا\سطح المكتب\دليل Pythonالطريقة الثالثة: نستخدم شرطة أمامية واحدة.
دليل_العمل_الجديد= 'C: / Users / never / Desktop / PythonDirectory'وحدة المسار
يمكننا أيضًا تغيير دليل العمل باستخدام وحدة المسار. أولاً ، ثبّت المسار على النحو التالي (لقد أعطيت أيضًا رابط الوحدة):
مسار تثبيت النقطة(https: // pypi.غزاله/ مشروع / مسار /)
بعد ذلك نكتب:
من عندطريقيستوردطريقيستورد أنت
أولاً ، دعنا نتحقق من دليل العمل الحالي باستخدام وحدة نظام التشغيل وطريقة getcwd ().
# دعنا نتحقق من دليل العمل الحاليcwd= أنت.getcwd()
مطبعة('دليل العمل الحالي هو:٪ s'٪ cwd)
مطبعة('---------------------------------------------')
بعد ذلك ، قم بتعيين المسار إلى دليل العمل الجديد. في هذه الحالة ، اخترت تعيين المثال على جهاز يعمل بنظام Windows:
# تعيين المسار إلى دليل العمل الجديدnew_path= ج:\المستخدمون\أبدا\سطح المكتب\دليل Python
استخدم Path () لتغيير دليل العمل. يأخذ المسار () وسيطة واحدة فقط هنا: المسار الفعلي إلى دليل العمل الجديد ويستخدم طريقة chdir () لإنجاز المهمة.
# تغيير دليل العملطريق(new_path).شدير()
أعد التحقق مما إذا تم تغيير دليل العمل. وهنا ، كما ترى في الصورة ، تم بالفعل تغيير دليل العمل!
# أعد التحقق من دليل العمل# هل تم تغييره؟
cwd= أنت.getcwd()
مطبعة('دليل العمل الجديد هو٪ s'٪ cwd)
يعد تغيير أدلة العمل مهمة سهلة ولا يتطلب سوى طريقة واحدة - طريقة chdir (المسار). ومع ذلك ، بناءً على ما إذا كنت تستخدم جهاز Windows أو جهاز Linux ، يجب أن تكون حذرًا بشأن كيفية إدخال المسار كسلسلة. إذا تم إدخاله بشكل غير صحيح ، فقد يؤدي إلى حدوث خطأ!
ترميز سعيد!