كتابة كود العمل لا يكفي دائما ؛ يجب أن تحاول كتابة كود جيد التنظيم يسهل فهمه أيضًا. ستجعل الشفرة النظيفة من السهل عليك - وللآخرين - صيانة برامجك.
تحتوي لغة Python على العديد من الميزات والوظائف التي يمكن أن تساعدك في كتابة تعليمات برمجية أكثر وضوحًا. وهنا بعض من أفضل.
1. أتمتة إغلاق المورد مع مدير السياق
قد يكون إغلاق الموارد يدويًا أمرًا غير مريح عندما تتفاعل التعليمات البرمجية الخاصة بك مع الكثير من الموارد. قد تنسى إغلاق أحد الموارد. هذا يجعل برنامجك يستخدم موارد النظام بشكل غير فعال مما قد يؤدي إلى ملف تسريب ذاكرة.
يفتح هذا الرمز ملفًا ، ثم يغلقه يدويًا:
ملف = فتح ("test.txt", 'r')
file_contents = file.read ()
file.close ()
الكلمات = file_contents.split (' ')
word_count = لين (كلمات)
طباعة (عدد_الكلمات)
يمكنك أتمتة إغلاق الملف باستخدام مدير السياق. يتعامل مديرو السياق مع الموارد نيابةً عنك ، لذلك لا يتعين عليك تذكر إدارتها يدويًا. استخدم ال مع بيان لإنشاء سياق لإدارة مورد:
مع يفتح("test.txt", 'r') مثل ملف:
file_contents = file.read ()
الكلمات = file_contents.split (' ')
word_count = لين (كلمات)
طباعة (عدد_الكلمات)
تعمل التعليمات البرمجية الموجودة في هذه الكتلة ضمن سياق كائن الملف الذي يفتح عائدات. تغلق Python هذا الملف تلقائيًا عندما تترك الكود هذا السياق ، حتى في حالة حدوث استثناء.
2. كتابة جمل شرطية منظف
قد تجد نفسك تكتب الكثير من التعليمات البرمجية غير الضرورية عند التعامل معها عبارات if-else. لدى Python عوامل تشغيل ثلاثية ستساعدك على كتابة المزيد من العبارات المدمجة. يُظهر مقطع التعليمات البرمجية أدناه عبارة if-else العادية.
الشرط = حقيقي
لو حالة:
س = 1
آخر:
س = 0
طباعة (x)
يمكنك إعادة كتابة هذا الرمز باستخدام عامل تشغيل ثلاثي يتيح لك كتابة الشرط في سطر واحد من التعليمات البرمجية.
الشرط = حقيقي
س = 1لو حالة آخر0
طباعة (x)
من المهم ملاحظة أنه يجب عليك استخدام العوامل الثلاثية عند تنفيذ المنطق البسيط. في المنطق الأكثر تعقيدًا والعبارات الشرطية المتداخلة ، قد يصعب فهم عامل التشغيل الثلاثي.
3. تتبع العناصر باستخدام وظيفة التعداد
عند التكرار عبر قائمة Python ، يمكنك الوصول إلى فهرس العنصر الحالي بطريقتين. إحدى الطرق هي استخدام حلقة for التقليدية. هذا يعمل بشكل جيد ، لكن الكود ليس نظيفًا كما ينبغي. كما يتطلب منك تهيئة الفهرس يدويًا.
سيارات = ["بوجاتي", "مرسيدس", تويوتا]
الفهرس = 0
ل سيارة في سيارات:
طباعة (فهرس ، سيارة)
الفهرس + = 1
الطريقة الأخرى هي استخدام دالة التعداد المضمنة في Python. سيسمح لك ذلك بالوصول إلى الفهرس والقيمة المقابلة في القائمة أثناء التكرار.
سيارات = ["بوجاتي", "مرسيدس", تويوتا]
ل مؤشر السيارة في تعداد (السيارات):
طباعة (فهرس ، سيارة)
لست مضطرًا الآن إلى تتبع الفهرس يدويًا.
4. تكرار عدة قوائم باستخدام وظيفة Zip
يمكنك أيضًا استخدام وظيفة التعداد لإجراء تكرار عبر عدة قوائم مرة واحدة. احصل على فهرس القائمة الأولى ، ثم استخدمه للوصول إلى القيم المقابلة في القوائم الأخرى.
english_names = ['طعام', 'ماء', 'سيارة']
spanish_names = ["الغذاء", "أغوا", 'آلي']
ل الفهرس والاسم في عدّد (english_names):
الأسبانية = spanish_names [الفهرس]
مطبعة (F' {اسم} في الاسبانية {الأسبانية}')
يعمل هذا بشكل جيد ، ولكن سيتعين عليك كتابة الكثير من التعليمات البرمجية غير الضرورية إذا زاد عدد القوائم. لكتابة رمز أنظف ، يمكنك استخدام وظيفة zip وتمرير أسماء قائمتك إليها.
english_names = ['طعام', 'ماء', 'سيارة']
spanish_names = ["الغذاء", "أغوا", 'آلي']
ل الإنجليزية والإسبانية في zip (english_names، spanish_names):
مطبعة(F' {إنجليزي} في الاسبانية {الأسبانية}')
يجب عليك الاستمرار في استخدام وظيفة التعداد إلى حلقة فوق قائمة واحدة. ولكن إذا كنت تعمل على تكرار عدة قوائم معًا ، ففكر في استخدام وظيفة zip.
عند إدخال معلومات حساسة ، يجب ألا يكون الإدخال مرئيًا كنص عادي على الشاشة. الطريقة المعتادة لأخذ المدخلات في بايثون هي استخدام دالة الإدخال:
اسم المستخدم = الإدخال ('اسم المستخدم: ')
كلمة المرور = الإدخال ('كلمة المرور: ')
مطبعة('تسجيل الدخول...')
ومع ذلك ، فإن وظيفة الإدخال تجعل كلمة المرور مرئية كنص عادي على الشاشة أثناء الكتابة. للتأكد من عدم عرض كلمة المرور على الشاشة ، يجب عليك استخدام وظيفة getpass بدلاً من ذلك:
من getpass يستورد getpass
اسم المستخدم = الإدخال ('اسم المستخدم: ')
كلمة المرور = getpass ('كلمة المرور:')
مطبعة('تسجيل الدخول...')
تعد وحدة getpass جزءًا من مكتبة Python القياسية ، لذلك لا تحتاج إلى تثبيتها.
6. جعل الأرقام الكبيرة قابلة للقراءة باستخدام العناصر النائبة للشرطة السفلية
عندما تتعامل مع أعداد كبيرة في برنامجك ، فقد يكون من الصعب جدًا قراءتها في لمح البصر. يؤدي تعيين أرقام غير صحيحة للمتغيرات إلى برنامج خاطئ وقد يكون اكتشاف هذا الخطأ أمرًا صعبًا للغاية.
عدد 1 = 10000000000
عدد 2 = 100000000
المجموع = num1 + num2
طباعة (إجمالي)
يمكنك إعادة كتابة الكود أعلاه باستخدام الشرطات السفلية لفصل مجموعات الآلاف ، وهي طريقة شائعة لجعل الأرقام الكبيرة أكثر قابلية للقراءة.
عدد 1 = 10_000_000_000
عدد 2 = 100_000_000
المجموع = num1 + num2
مطبعة(F'{المجموع:،}')
تفصل السلسلة f في دالة الطباعة الإخراج باستخدام فاصل الآلاف.
7. استخدام وظيفة المساعدة لمعرفة المزيد عن الوحدة النمطية
وظيفة المساعدة مهمة جدًا في بايثون. سيتيح لك معرفة كيفية استخدام وحدة قمت بتثبيتها. لاستخدامها ، قم بتثبيت الوحدة ، ثم قم بتشغيل مترجم Python في محطة طرفية وأشر إلى المسار الذي قمت بتثبيت الوحدة النمطية فيه. قم باستيراد الوحدة وأخيراً قم بتمرير اسم الوحدة إلى وظيفة المساعدة.
لاكتشاف الطرق والسمات التي يمكنك استخدامها ، استبدل وظيفة المساعدة بوظيفة dir.
ترجع الدالة dir الأساليب والسمات التي تدعمها الوحدة وليس التوثيق الكامل. يكون هذا مفيدًا عندما تريد الحصول على لمحة عما تفعله الوحدة.
كتابة كود بايثون الأنظف
بايثون لغة متنوعة للغاية. كما هو الحال مع أي لغة أخرى ، ستصبح أفضل في كتابة كود Python الأنظف بمرور الوقت.
تحتوي Python على العديد من الوحدات والوظائف المضمنة. في بعض الحالات ، يمكنك كتابة تعليمات برمجية يصعب قراءتها لأنك تفتقر إلى المعرفة بوجود وظيفة معينة. للتأكد من أنك أكثر دراية ، يجب عليك قراءة المزيد من المقالات حول كيفية كتابة كود أفضل.