ahmed1990 نشر 2 نوفمبر 2015 أرسل تقرير نشر 2 نوفمبر 2015 أريد معرفة ما هي المميزات التي تجعل استخدام وحدة os في بايثون أفضل من كتابة أوامر النظام بشكل مباشر؟ فعلى سبيل المثال لماذا نستخدم دوال من وحدة os لنقل الملفات وحذفها وغيرها بدلا من تطبيق أوامر النظام مباشرة عن طريق os.system() أو subprocess.call()؟ اقتباس
0 هشام رزق الله نشر 2 نوفمبر 2015 أرسل تقرير نشر 2 نوفمبر 2015 هنالك عدة أسباب تجعل استخدام وحدة os أفضل من تطبيق أوامر النظام بشكل مباشرة وأهمها أن استخدام دوال وحدة os أسرع من استخدام os.system() أو subprocess.call() ويرجع السبب إلى أن هذين الأخيرين يقومان بإنشاء عمليتين (processes) غير ضروريتين.السبب الآخر أن بعض الأوامر ليس لديها أية فائدة لو استعملناها في عمليات منفصلة مثلا لو قمت بتنفيذ أمر os.spawn("cd dir/") فإنه سيُغير المجلد الحالي للعملية الصغيرة التي أنشأها ولم يتم تغيير أي شيء في عملية بايثون.أما السبب الثالث هو أن دوال مكتبة os يدعم جميع الأنظمة على عكس الأوامر التي تعمل في نوع واحد من الأنظمة. اقتباس
السؤال
ahmed1990
أريد معرفة ما هي المميزات التي تجعل استخدام وحدة os في بايثون أفضل من كتابة أوامر النظام بشكل مباشر؟ فعلى سبيل المثال لماذا نستخدم دوال من وحدة os لنقل الملفات وحذفها وغيرها بدلا من تطبيق أوامر النظام مباشرة عن طريق os.system() أو subprocess.call()؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.