Python Tips | بالعربي
2.5K subscribers
172 photos
87 videos
27 files
218 links
عندما تحقق إنجازات، استمر في التعلم ، ف سر نجاح المبرمجين هو الاستمرارية✨️.
Download Telegram
python_basics.pdf
212.3 KB
أوراق Cheatsheets بتفيدكم في مجال ال Data Analysis وعلوم البيانات✨️.
4🫡1
Forwarded from TeleSpace Channel
يسعدنا الإعلان عن تحويل مشروع TeleSpace إلى مشروع مفتوح المصدر (Open Source) ليكون متاحاً بالكامل لمجتمع المطورين 🌎.

لمن لم يتعرف على المشروع بعد، يُعد TeleSpace بيئة تخزين سحابية متكاملة تعتمد على البنية التحتية غير المحدودة لـ Telegram🚀:
مبني بالكامل باستخدام لغة Python 🐍.

⚙️يعتمد على مكتبة Python-Telegram-Bot (PTB) كمحرك أساسي لضمان المعالجة المتزامنة (Asynchronous) والتفاعل عالي الأداء مع خوادم تيليجرام ☄️.

🖥 يستخدم PostgreSQL كنظام أساسي لإدارة البيانات الوصفية للملفات (Metadata)، مما يضمن سلامة البيانات وسرعة الاستعلامات 🖥.
وفي هذا التحديث، تم تزويد النظام بواجهة برمجة تطبيقات (API) متكاملة باستخدام FastAPI⚙️. وتُعد هذه الخطوة الأولى لتحويل TeleSpace من مجرد أداة إلى خدمة BaaS ، مما يتيح للمطورين دمج النظام بسلاسة مع أي تطبيقات أو منصات خارجية، واستخدامه كمحرك أساسي لرفع وإدارة الملفات 👨‍💻.

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

🖥رابط المستودع: https://github.com/H55an/TeleSpace
Please open Telegram to view this post
VIEW IN TELEGRAM
2👏1
فرز الـ Dictionary حسب القيم

فرز بيانات الـ Dictionary حسب قيم المفاتيح، وليس المفاتيح نفسها، يؤدي في كثير من الأحيان إلى حيرة شديدة.

يتم حل المشكلة بشكل بسيط باستخدام الوسيط key لدالة sorted لتحديد الدالة التي سيتم استدعاؤها على كل عنصر قبل المقارنة.
3
الحصول على أكبر أو أصغر الأرقام من القائمة

لنفترض أن لديك قائمة من الأرقام وتحتاج إلى الحصول على أكبر أو أصغر عدد محدد منها.
أحد حلول هذه المشكلة هو استخدام المكتبة المضمنة heapq.
🆒32👍1
توليد كل التبديلات المحتملة لكائن قابل للتكرار

تقوم الدالة permutations من وحدة itertools بإرجاع مكرر مع تبديلات متتالية من العناصر في التسلسل المدخل iterable. يتم تضمين كل مجموعة في ترتيب يحتوي على r عناصر.

إذا لم يتم تحديد r أو كانت None، فسيكون r بشكل افتراضي يساوي طول iterable وسيتم توليد جميع التبديلات الممكنة بالطول الكامل.
4
الدالة ()uniform

تُستخدم الدالة ()uniform من مكتبة random في Python لتوليد أرقام عشوائية ذات فاصلة عائمة في نطاق محدد.

البنية:
random.uniform(a, b)

ال arguments :
ال a: الحد الأدنى للنطاق.
وال b: الحد الأعلى للنطاق.

تقوم بإعادة رقم عشوائي ذات فاصلة عائمة، موزع بشكل متساوٍ في النطاق [a, b].
3👍1🆒1
strptime()

تُعتبر ()strptime ميثود للكلاس datetime، تُستخدم لتحويل سلسلة نصية تمثل تاريخًا ووقتًا إلى كائن datetime.

datetime.strptime(date_string, format_string)


الـ Arguments :
الـ date_string: سلسلة نصية تمثل تاريخًا ووقتًا.
الـ format_string: سلسلة نصية تمثل تنسيق التاريخ والوقت.
3
الميثود ()bytes.hex

تُعتبر ()bytes.hex ميثود تحول كائن bytes إلى سلسلة سداسية عشرية.

كيف تعمل:
تقوم ()bytes.hex بإعادة سلسلة تتكون من أرقام سداسية عشرية تمثل كل بايت في كائن bytes.

تأتي الأرقام السداسية العشرية في أزواج، حيث يمثل الرقم الأول النصف الأعلى من البايت، والثاني النصف الأدنى.


على سبيل المثال، سيتم تمثيل البايت الذي قيمته 10 (في النظام العشري) كـ "0a" في النظام السداسي العشري.
👍4
استخدم f-String في Python ومحددات التنسيق لتجميع الجداول بسرعة وبشكل سريع:
d = {'a':10, 'bcd': 2, 'e': 3456}

for key, value in d.items():
print(f'{key:.<5}{value:.>5}')


المخرجات:
a.......10
bcd......2
e.....3456
2
دالة ()islice

دالة ()islice هي دالة من وحدة itertools، تُستخدم لإنشاء عارض (iterator) يعيد العناصر المحددة من كائن قابل للتكرار.

تشبه هذه الدالة شرائح القوائم، لكنها تحتوي على بعض الاختلافات.
1👍4
الميثود ()setdefault

إن ()setdefault في Python تُرجع القيمة حسب المفتاح المحدد من القاموس(dictionary) .
إذا لم يكن المفتاح موجودًا في القاموس، فإن هذه الميثود تضيف المفتاح إلى القاموس مع القيمة الافتراضية، ثم تُرجع هذه القيمة.

وتعتبر ()setdefault بأن لها عاملان:
— المفتاح الذي يجب الحصول على القيمة منه.
— القيمة الافتراضية التي سيتم إضافتها إلى القاموس، إذا لم يكن المفتاح موجودًا.

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

إذا لم يكن المفتاح موجودًا في القاموس، فإنها تضيف المفتاح إلى القاموس مع القيمة الافتراضية، ثم تُرجع هذه القيمة.
3
🐍حذف صفحات ملف PDF 📄

تتضمن مكتبة PyMuPDF العديد من الطرق المعقدة التي تسهل حذف الصفحات من ملف PDF. فهي تتيح :
📄 تحديد صفحة واحدة باستخدام دالة ()deletePage.
🗓 نطاق معين من أرقام الصفحات باستخدام دالة ()deletePageRange .
📝 قائمة بأرقام الصفحات باستخدام دالة ()select .


يوضح المثال في الصورة كيفية استخدام قائمة لاختيار الصفحات التي يجب الاحتفاظ بها في المستند الأصلي. يرجى ملاحظة أن الصفحات غير المحددة لن تكون جزءًا من المستند الناتج 🚫📁.
في حالتنا من المثال ، سيحتوي المستند الناتج فقط على الصفحات الأولى والثانية والرابعة 📑.
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2
يُعتبر ال deque أفضل من القوائم العادية (List) عندما تكون هناك حاجة إلى عمليات إضافة وإزالة أسرع للعناصر من بداية ونهاية القائمة🚀.

يوفر deque تعقيدًا خطيًا O(1) لعمليات الإضافة والإزالة ⚡️، بينما تعقيد القوائم العادية لهذه العمليات هو O(n).

يتوفر لـ deque استخدام الدوال العادية — sum، min، max وغيرها 🛠.

#Python | #List | #Deque
Please open Telegram to view this post
VIEW IN TELEGRAM
🆒6👍4
يُعتبر Daphne خادم HTTP و HTTP2 و WebSocket مخصص لـ ASGI و ASGI-HTTP، تم تطويره لدعم Django Channels 🤝👩‍💻.

يدعم التوافق التلقائي للبروتوكولات؛ فلا حاجة لإضافة بادئات لعناوين URL لتحديد نقاط نهاية WebSocket مقارنة بنقاط نهاية HTTP🌐.

#Advanced | #Django | #ASGI
Please open Telegram to view this post
VIEW IN TELEGRAM
4👨‍💻2
أي شخص مهتم بالمجال البرمجي انصحك وبقوة بهذه الصفحة ، فيها فريق متكامل ومتميز

حتى وإن لم تكن مهتم بالمحتوى شارك غيرك يستفيد حفظكم الله
اريد اشوف تحويلات لقنواتكم فضلًا.🔥

الأفكار العظيمة تبدأ بسطر كود…
لكنها تكبر مع مجتمع يشارك الشغف نفسه

في كوديان نصنع حلولًا رقمية تربط التقنية بالمستقبل،
ونشارك باستمرار محتوى برمجي، أفكار تطوير، وتصاميم تقنية تلهم المطورين وصنّاع المشاريع 👨‍💻

انضم إلى مجتمعنا الرقمي وابقَ قريبًا من كل جديد:

*🔵 Facebook*
https://facebook.com/CodianTeam

*🟣 Instagram*
https://www.instagram.com/CodianTeam

*🟢 WhatsApp*
https://whatsapp.com/channel/0029Vb6ysOvElah0xq7PhH0s


> اختر منصتك المفضلة… وادخل عالم كوديان.
> هنا تبدأ الرحلة التقنية بشكل مختلف
5
تحليل الشبكة مع NetworkX

هي مكتبة Python لتحليل الشبكات المعقدة.

توفر هيكل بيانات للعمل مع الرسوم
البيانية (الشبكات) وتنفذ العديد من الخوارزميات لتحليل البيانات الشبكية وتصورها.

يمكن استخدامها في مجالات مختلفة، مثل الشبكات الاجتماعية، والبيولوجية، والنقل، وشبكات الحاسوب، وغيرها الكثير.
#Python | #Networking
4👍1