برمجة الشبكات في بايثون ارسال واستقبال البيانات

في الدرس السابق تعلمنا كيفية إنشاء مقبس والاتصال بالسيرفر ، وفي هذا الدرس سنتعلم كيفية إرسال واستقبال البيانات من والى السيرفر.

ولإرسال البيانات نقوم باستخدام الدالة sendall .

دعونا نقوم بإرسال بعض البيانات إلى قوقل .
أكمل القراءة →

أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

برمجة الشبكات في بايثون

سيكون هذا الموضوع مدخلنا الى برمجة المقبس (socket) باستخدام لغة بايثون , ويعتبر المقبس من الأساسيات وراء كل عملية اتصال بالشبكة يقوم بها الكمبيوتر وعلى سبيل المثال عندما نقوم بالاتصال بمحرك البحث ونكتب www.google.dz على المتصفح يقوم الجهاز بفتح مقبس ويتصل بالموقع  لجلب الصفحة و إظهارها لنا، نفس العملية تنطبق على برامج الدردشة مثل gtalk او skype اي ان عملية اتصال بالشبكة تمر عبر المقبس.

في هذا الدرس سنقوم ببرمجة مقبس tcp باستخدام لغة البرمجة بايثون .
وقبل أن تبدأ يجب أن تكون على معرفة بأساسيات استخدام بايثون .

أكمل القراءة →

أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

برمجة الألعاب باستخدام pygame رسم خط -الدرس الثالث

في الدرس السابق تعلمنا كيفية رسم مستطيل وبما أن الألعاب بحاجة إلى أشكال عديدة سنواصل تعلم أشكال أخرى وهذه المرة سنتعلم كيفية رسم خط على الشاشة ،سنقوم برسم خط أخضر بالإحداثيات التالية (تخيل أن النافذة عبارة عن معلم متعامد متجانس) ابدأ برسم الخط ابتداءا من النقطة (0,0) إلى غاية النقطة (100,100) وعرض الخط سيكون 5 بكسل.
لن أقوم بكتابة الكود من الجديد سأفترض أنك قمت بحفظ الملف السابق الذي قمنا بإنشائه وفي حالة عدم وجود الملف السابق أنصحك بالرجوع إلى الدروس السابقة واضف الكود التالي إلى البرنامج.

Green=( 0, 255, 0)#متغير جديد لتحديد اللون الأخضر

pygame.draw.line(screen, Green, [0, 0], [100, 100], 5)#رسم خط بالإحداثيات المحددة

هذا كل شيء كل ماعليك فعله عزيزي القارئ هو التعديل على الكود والاحداثيات ورسم خطوط أخرى حتى تتعلم بشكل وعليك ايضا بالبحث والقراءة لزيادة معارفك .

رسم شكل بيضوي 

إن رسم شكل بيضوي يحتاج إلى إحداثيات وهي نفس الإحداثيات الخاصة برسم مستطيل حيث عند رسم شكل بيضوي يقوم البرنامج برسم مستطيل على الذاكرة فقط ثم يقوم برسم الشكل البيضوي داخل حدود ذلك المستطيل .
ومباشرة مع الكود الخاص برسم الشكل البيضوي :

pygame.draw.ellipse(screen, Green, [20,20,250,100], 2)

أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

عكس السلاسل في بايثون

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

مجموعة عن عملية الترشيح

values="abcdefg"
values[1:3]
'bc'
 values[2:-1]
'cdef'
values[:2]
'ab'
values[2:]
'cdefg'
values[::2]
'aceg'
values[::-1]
'gfedcba'

يمكن استعمال مع كل من القوائم ، السلاسل ، الصفوف، والمصفوفات.
في المثال السابق في السطر قبل الأخير  قمت باستخدام [1::] وهذا الترشيح يقوم بعكس السلسلة تماما وهذه هي الطريقة الوحيدة لعكس السلاسل في بايثون .

name="kader"
name[::-1]
'redak'
أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

دوال بايثون

لا أحد يحب أن يعيد كتابة مجموعة من التعليمات البرمجية كل مرة للقيام بمهمة ما خاصة إذا كانت تلك المهمة كثيرة الإستخدام ولهذا يقوم بايثون بإستخدام الدوال للقيام بتلك المهمات بسرعة وسهولة .

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

يمكن إنشاء الدوال داخل Class او الوحدات أو حتى داخل دالة اخرى وبحصوص الدوال التي يتم إنشاءها داخل Class يتم تسميتها method

الدوال في بايثون عبارة عن كائنات وطبعا يمكن تعديلها وتغيير قيمها مثلها مثل الكائنات الأخرى في بايثون ويمكننا تحديد انواع الدوال إلى ثلاثة أجزاء :

أكمل القراءة →

أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع