Python Tips | بالعربي
2.83K subscribers
183 photos
87 videos
27 files
222 links
عندما تحقق إنجازات، استمر في التعلم ، ف سر نجاح المبرمجين هو الاستمرارية✨️.
Download Telegram
فك ضغط التسلسلات عندما يكون عدد العناصر غير معروف

في Python3 ، يوجد عامل النجمة لعمله قبل اسم متغير (*) - وهو عملية فك ضغط تسلسل موسعة.
يتم تخصيص جزء من القائمة، الذي يحتوي على جميع العناصر غير المخصصة، والمتوافقة مع هذا الموضع، للمتغير الذي يحمل علامة النجمة.

#python
2❤4🔥3🆒1
المدمرات (Destructors)

في معظم لغات البرمجة، عند حذف نسخة من فئة ما، يتم استدعاء طريقة خاصة تسمى "المدمر".

في بايثون، يمكن إعادة تعريف المدمر باستخدام الميثود الخاصة __del__، والتي يتم استدعاؤها تلقائيًا عند حذف الكائن.

بشكل عام، نادرًا ما يتم إعادة تعريف المدمرات في بايثون، ولكن من المفيد معرفة أن هذه الطرق تحديدًا مسؤولة عن عمليات التنظيف عند حذف الكائن.

#python | #class | #objects
2❤6👨‍💻3👍2
عداد التكرار

مترجم آخر رائع من itertools هو count، الذي يولد تسلسلاً لا نهائياً من الأرقام.

في الحجج، يمكنك تحديد قيم start و step: الأول مسؤول عن القيمة الأولية، والثاني عن الخطوة، تماماً كما في range.

عادةً ما يتم استخدام count نادراً مع حلقة for. غالباً ما تجده مع دوال مثل zip أو map.

#itertools | #python
2❤4👍1
نختبر سرعة الإنترنت

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

تُصدر طرق كائن فئة Speedtest وهي ()download و()upload سرعة التنزيل والرفع على التوالي.

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

#speedtest | #python
2❤4👍2
memory_profiler

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

للاستفادة من memory_profiler يجب عليك أولاً تثبيتها. يمكن القيام بذلك باستخدام أداة تثبيت الحزم الخاصة بلغة بايثون، مثل pip.

#memory_profiler | #memory | #python
2❤6🔥2👍1👏1
➡️ استخدام cachetools للتخزين المؤقت في Python

هي مكتبة صغيرة لكنها قوية للتخزين المؤقت، توفر استراتيجيات تخزين مؤقت متنوعة، مثل LRU (الأقل استخداماً مؤخراً)، وLFU (الأقل استخداماً تكراراً)، وغيرها. تتيح تحسين الأداء من خلال تجنب الحسابات أو الطلبات المتكررة.

• تُعدّ cachetools مفيدة عندما يكون هناك حاجة لتخزين النتائج المؤقتة أو البيانات الوسيطة لرفع الأداء.

🔗 رابط إلى التوثيق
#cachetools | #cache | #python
Please open Telegram to view this post
VIEW IN TELEGRAM
2❤4🔥2
تنزيل الفيديو من يوتيوب باستخدام Python

توفر الحزمة pytube جميع الوظائف الضرورية لتنزيل مقاطع الفيديو من يوتيوب، بالإضافة إلى جمع جميع المعلومات عنها.

للعمل، نحتاج إلى إنشاء كائن من فئة YouTube. بالإضافة إلى الرابط إلى الفيديو، يمكن تمرير وظائف لمعالجة تقدم التنزيل وإكماله كمعلمات إلى المُنشئ.

معظم مقاطع الفيديو على يوتيوب لا تحتوي على مسار صوتي في التدفقات ذات الدقة العالية، أي التي تزيد عن 720p، ويرجع ذلك إلى تقنية نقل DASH التي تستخدمها يوتيوب.

في الصورة، أظهرنا كيفية تصفية التدفقات ذات النقل التدريجي واختيار التدفق من القائمة الناتجة والذي يتمتع بأعلى دقة متاحة، حتى 720p.

لتنزيل التدفق المحدد، نستخدم الدالة()download. يمكن تمرير مسار المجلد لحفظ الملف واسم الملف كمعلمات إلى هذه الدالة.

#python | #youtube
2❤5🔥4
➡️استخدام مكتبة aiometer لتنفيذ المهام غير المتزامنة بالتوازي

تتيح مكتبة aiometer إدارة فعالة لعدد المهام غير المتزامنة التي يتم تنفيذها في نفس الوقت. هذا مفيد عندما تحتاج إلى تقييد عدد المهام التي يتم تنفيذها بالتوازي، لتجنب إجهاد النظام.


تعتبر aiometer خيارًا ممتازًا في الحالات التي تحتاج فيها إلى التحكم في عدد العمليات المتوازية، على سبيل المثال، عند تنفيذ عدد كبير من الطلبات لواجهة برمجة التطبيقات (API).

🔗رابط إلى الوثائق
#aiometer | #python
Please open Telegram to view this post
VIEW IN TELEGRAM
2❤2🆒2
عبارة "pass" في الكود

أثناء تنفيذ العبارة pass، لا يحدث أي شيء، لذلك يمكن استخدامها كنوع من "الحاجز" أو "المُعامل الوهمي" في الأماكن التي تتطلب ذلك من الناحية النحوية.

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

أو في بنية try-except، لتجاهل الخطأ في البرنامج وعدم معالجته بأي شكل من الأشكال.

#pass | #python
3❤6
فعلًا - بايثون مثل رأس السنة الجديدة🎉🎆.

يمكن تمرير مجموعة ( tuple ) إلى الدالتين startswith و endswith .
Please open Telegram to view this post
VIEW IN TELEGRAM
2❤6😁1
دالة reduce

يسمح لك الحزمة functools باستغلال قدرات بايثون الوظيفية بشكل جيد. على سبيل المثال، تحتوي functools على دالة مثيرة للاهتمام تسمى reduce، والتي تتيح "ضغط" البيانات من خلال تطبيق دالة بشكل متتالي مع تذكر النتيجة.

وبالتالي، في المثال أعلاه، تضرب reduce الرقم 1 في 2، ثم تضرب نتيجة هذا الضرب في 3، وهكذا.

#functools | #reduce | #python
3❤8🔥2🆒1
نجعل الأخطاء أكثر وضوحًا

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

لكي تعمل هذه الوحدة، يكفي استيرادها في الكود الخاص بك.

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

يمكن أيضًا تعديل هذه الوحدة عن طريق تحديد معلمات في ملف الإعدادات. يمكنك قراءة المزيد في توثيق الوحدة.
❤7
البحث عن الكلمات الفريدة في ملف نصي باستخدام Python

للعثور على الكلمات الفريدة في ملف نصي باستخدام Python، يجب تنظيف النص، ثم العثور على الكلمات، ثم العثور على الكلمات الفريدة.

يمكنك قراءة المزيد هنا.
#python
❤6