Pythin for l1 Taiz university.pdf
1.3 MB
هذا الملف يشرح أساسيات لغة Python ، ويتضمن :
◇ أساسيات اللغة
◇ العمليات والمعاملات: الحسابية، المنطقية، والمقارنة.
◇ النصوص (Strings) وطرق التعامل معها.
◇ هياكل البيانات: القوائم، الصفوف (Tuples)، المجموعات، القواميس.
◇ التراكيب التحكمية: الشروط if والحلقات for / while.
◇ الدوال (Functions) وأنواع المعاملات ونطاق المتغيرات.
◇ معالجة الأخطاء (Exceptions).
◇ التعامل مع الملفات وملفات JSON.
◇ الوحدات (Modules) والمكتبات القياسية والخارجية.
❤4
بعد أن تعلمت الأساسيات والمنطق البرمجي ، استخدم الان
لتجاوز هذا القيد، تحتوي بايثون على مكتبة مضمنة ملائمة
itertools بدلاً من الحلقات في مشاريعك الحقيقية .على الرغم من أن ال Loops رائعة، إلا أن لها قيودًا، خاصةً في أساليب البرمجة الحديثة ولبعض أنواع المهام..
فهم هذه القيود يساعد في اختيار الأداة المناسبة للمهمة.
كل تكرار للحلقة في بايثون يؤدي إلى تكاليف إضافية لل Interpreter الخاص باللغة (المفسر) ، مثل التحقق من أنواع البيانات وإدارة الذاكرة.
وقد يتراكم ذلك بشكل ملحوظ على مجموعات البيانات الكبيرة.
لتجاوز هذا القيد، تحتوي بايثون على مكتبة مضمنة ملائمة
itertools. على سبيل المثال، افترض أنك تريد إنشاء جميع الأزواج الفريدة من قائمة محددة ، لا يهم الترتيب، ولا يجب أن يشكل أي عنصر زوجًا مع نفسه.في الصورة أعلاه ، إليك كيف يمكن كتابة الكود باستخدام
لتجنب تضخيم الكود وتقليل مخاطر الأخطاء، يمكنك استخدام مكتبةitertools. تقوم الدالة()itertools.combinationsمباشرةً بإنشاء جميع مجموعات العناصر الفريدة منiterableدون تكرار ودون اعتبار الترتيب.
combinations من itertools .❤4👍3
◇ يعتبر Linux مجاني
◇ و Docker مجاني
◇ و Kubernetes مجاني
◇ و GitHub & Git مجانيان
◇ و Python مجاني
◇ و AWS، GCP، Azure مجانية (مع حدود)
◇ و Terraform مجاني
صفر أعذار. ابدأ التعلم اليوم.
.
◇ و Docker مجاني
◇ و Kubernetes مجاني
◇ و GitHub & Git مجانيان
◇ و Python مجاني
◇ و AWS، GCP، Azure مجانية (مع حدود)
◇ و Terraform مجاني
💻 أنت بحاجة فقط كمبيوتر + إنترنت
⏱️ يوميًا من ساعة إلى ساعتين ستتعلم مهارات تغير حياتك
صفر أعذار. ابدأ التعلم اليوم.
.
❤6🔥4
إن دمج منطق else داخل هياكل التكرار for و while يمثل فرصة هائلة لتعزيز كفاءة البرمجة لدينا.
فإننا نستخدم دورة while كمنصة ديناميكية لتنفيذ الشروط الاستراتيجية حتى نصل إلى حالة النجاح المثالية. 🌟
أما دورة for، فهي أداة قوية لتمكين التكرار الذكي لسطور الكود، مما يحول المهام الروتينية إلى عمليات مؤتمتة. تخيلوا القدرة على تحقيق هدفنا في طباعة الأرقام حتى 10 دون الحاجة إلى 10 مبادرات منفصلة، بل من خلال استغلال تسلسل مدروس يعكس رؤية شاملة! 💡
في بيئة بيثون المتطورة، نحن ممتنون لوجود ميزة تتيح لنا تضمين كتلة else في كلا النوعين من الدورات، وهي ميزة تتفعل فقط عند اكتمال الدورة بنجاح دون الحاجة إلى أي تدخل طارئ عبر break. هذا يعزز من مرونة وسلاسة سير العمل لدينا. 🤝
لنغوص معًا في هذا النموذج الملهِم الذي يوضح كيفية البحث عن "الإبرة" (needle) ضمن "كومة القش" (haystack) لتحقيق أقصى قيمة ممكنة! 📈 #Python #GrowthMindset #TechInnovation #CodingJourney
فإننا نستخدم دورة while كمنصة ديناميكية لتنفيذ الشروط الاستراتيجية حتى نصل إلى حالة النجاح المثالية. 🌟
أما دورة for، فهي أداة قوية لتمكين التكرار الذكي لسطور الكود، مما يحول المهام الروتينية إلى عمليات مؤتمتة. تخيلوا القدرة على تحقيق هدفنا في طباعة الأرقام حتى 10 دون الحاجة إلى 10 مبادرات منفصلة، بل من خلال استغلال تسلسل مدروس يعكس رؤية شاملة! 💡
في بيئة بيثون المتطورة، نحن ممتنون لوجود ميزة تتيح لنا تضمين كتلة else في كلا النوعين من الدورات، وهي ميزة تتفعل فقط عند اكتمال الدورة بنجاح دون الحاجة إلى أي تدخل طارئ عبر break. هذا يعزز من مرونة وسلاسة سير العمل لدينا. 🤝
لنغوص معًا في هذا النموذج الملهِم الذي يوضح كيفية البحث عن "الإبرة" (needle) ضمن "كومة القش" (haystack) لتحقيق أقصى قيمة ممكنة! 📈 #Python #GrowthMindset #TechInnovation #CodingJourney
❤4
نصيحة Python : استخدم @property فقط للعمليات O(1) 🐍⚡
يتوقع الناس عادةً أن كل ما يبدو وكأنه وصول إلى سمة يعمل بسرعة ⚡🏃♂️.
لا أحد يريد الضغط على Ctrl-C أثناء قراءة سمة لأن هناك حسابًا مخفيًا لمستوى Deep Thought يستغرق 7.5 مليون سنة ⏳🤯:
يتوقع الناس عادةً أن كل ما يبدو وكأنه وصول إلى سمة يعمل بسرعة ⚡🏃♂️.
لا أحد يريد الضغط على Ctrl-C أثناء قراءة سمة لأن هناك حسابًا مخفيًا لمستوى Deep Thought يستغرق 7.5 مليون سنة ⏳🤯:
>>> life.meaning
42
🔥2😁1
python_basics.pdf
212.3 KB
أوراق Cheatsheets بتفيدكم في مجال ال Data Analysis وعلوم البيانات✨️.
❤4🫡1
Forwarded from TeleSpace Channel
يسعدنا الإعلان عن تحويل مشروع TeleSpace إلى مشروع مفتوح المصدر (Open Source) ليكون متاحاً بالكامل لمجتمع المطورين 🌎 .
لمن لم يتعرف على المشروع بعد، يُعد TeleSpace بيئة تخزين سحابية متكاملة تعتمد على البنية التحتية غير المحدودة لـ Telegram🚀 :
⚙️ . وتُعد هذه الخطوة الأولى لتحويل TeleSpace من مجرد أداة إلى خدمة BaaS ، مما يتيح للمطورين دمج النظام بسلاسة مع أي تطبيقات أو منصات خارجية، واستخدامه كمحرك أساسي لرفع وإدارة الملفات 👨💻 .
ونظراً لأن قوة البرمجيات تكمن في مجتمعها، فإن الكود المصدري متاح الآن للجميع. نرحب بجميع المساهمات، سواء في تحسين الأداء، كتابة الاختبارات، أو تطوير ميزات جديدة تخدم مجتمع المطورين🤝 .
🖥 رابط المستودع: https://github.com/H55an/TeleSpace
لمن لم يتعرف على المشروع بعد، يُعد TeleSpace بيئة تخزين سحابية متكاملة تعتمد على البنية التحتية غير المحدودة لـ Telegram
وفي هذا التحديث، تم تزويد النظام بواجهة برمجة تطبيقات (API) متكاملة باستخدام FastAPI⛏ مبني بالكامل باستخدام لغة Python🐍 .⚙️ يعتمد على مكتبة Python-Telegram-Bot (PTB) كمحرك أساسي لضمان المعالجة المتزامنة (Asynchronous) والتفاعل عالي الأداء مع خوادم تيليجرام☄️ .🖥 يستخدم PostgreSQL كنظام أساسي لإدارة البيانات الوصفية للملفات (Metadata)، مما يضمن سلامة البيانات وسرعة الاستعلامات🖥 .
ونظراً لأن قوة البرمجيات تكمن في مجتمعها، فإن الكود المصدري متاح الآن للجميع. نرحب بجميع المساهمات، سواء في تحسين الأداء، كتابة الاختبارات، أو تطوير ميزات جديدة تخدم مجتمع المطورين
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👏1
توليد كل التبديلات المحتملة لكائن قابل للتكرار
تقوم الدالة
إذا لم يتم تحديد
تقوم الدالة
permutations من وحدة itertools بإرجاع مكرر مع تبديلات متتالية من العناصر في التسلسل المدخل iterable. يتم تضمين كل مجموعة في ترتيب يحتوي على r عناصر.إذا لم يتم تحديد
r أو كانت None، فسيكون r بشكل افتراضي يساوي طول iterable وسيتم توليد جميع التبديلات الممكنة بالطول الكامل.❤4
الميثود
تُعتبر
كيف تعمل:
على سبيل المثال، سيتم تمثيل البايت الذي قيمته 10 (في النظام العشري) كـ "0a" في النظام السداسي العشري.
()bytes.hexتُعتبر
()bytes.hex ميثود تحول كائن bytes إلى سلسلة سداسية عشرية.كيف تعمل:
تقوم()bytes.hexبإعادة سلسلة تتكون من أرقام سداسية عشرية تمثل كل بايت في كائن bytes.
تأتي الأرقام السداسية العشرية في أزواج، حيث يمثل الرقم الأول النصف الأعلى من البايت، والثاني النصف الأدنى.
على سبيل المثال، سيتم تمثيل البايت الذي قيمته 10 (في النظام العشري) كـ "0a" في النظام السداسي العشري.
👍4
الميثود
إن
إذا لم يكن المفتاح موجودًا في القاموس، فإن هذه الميثود تضيف المفتاح إلى القاموس مع القيمة الافتراضية، ثم تُرجع هذه القيمة.
()setdefaultإن
()setdefault في Python تُرجع القيمة حسب المفتاح المحدد من القاموس(dictionary) . إذا لم يكن المفتاح موجودًا في القاموس، فإن هذه الميثود تضيف المفتاح إلى القاموس مع القيمة الافتراضية، ثم تُرجع هذه القيمة.
وتعتبر()setdefaultبأن لها عاملان:
— المفتاح الذي يجب الحصول على القيمة منه.
— القيمة الافتراضية التي سيتم إضافتها إلى القاموس، إذا لم يكن المفتاح موجودًا.
إذا كان المفتاح موجودًا في القاموس، فإن الميثود تُرجع القيمة المرتبطة بهذا المفتاح.
إذا لم يكن المفتاح موجودًا في القاموس، فإنها تضيف المفتاح إلى القاموس مع القيمة الافتراضية، ثم تُرجع هذه القيمة.
❤3