كيفية تثبيت واستعمال pip في بايثون

0
pip عبارة عن نظام إدارة الحزم يستخدم لتثبيت و إدارة حزم البرمجيات والتي تجدها في موقع Python Package Index
pip تعمل على كل من نسخ بايثون التالية :2.6, 2.7, 3.2, 3.3, 3.4
وكما تعمل أيضا على كل أنظمة التشغيل من لينكس ويندوز و ماك.
الميزة الأساسية ل Pip هي سهولة استعمالها من خلال سطر الأوامر وهو ما يجعل تثبيت حزم برامج بايثون سهل وبسطر واحد فقط.
إن أبسط طريقة لتثبيت أي حزمة هي تحميل شفرة المصدر بعد ذلك تقوم بتثبيت تلك الحزمة مثلها مثل أي برنامج ما أي أننا لسنا بحاجة إلى أدوات لعمل ذلك، ولكن هذه الطريقة كانت تترك بعض المشاكل نذكر بعض منها:

python2 vs python 3

6



أي شخص يقوم بالبحث عن مواضيع تتعلق ببايثون على الأنترنيت سيجد لا محالة عدد لا محدود من المواضيع التي تتحدث عن الانتقال من إصدار بايثون القديم إلى الإصدار الجديد وخاصة حول الانتقال من بايثون 2 إلى بايثون 3.
بطبيعة الحال كل إصدار جديد لبايثون يحتوي على تحسينات تجعله اسرع من الإصدار الذي قبله والعامل الوحيد الذي يمنعنا ويمنع عموم مبرمجي لغة بايثون من الانتقال إلى الإصدارات الأحدث هو عدم انتقال المكتبات والحزم التي نستخدمها إلى الإصدارات الحديثة أي أنها لا تعمل مع الإصدار الحديث وهذا هو السبب الوحيد .
فإدا كنت مبرمج مبتدأ أو تريد الولوج الى عالم البرمجة باستخدام بايثون فأنا أنصحك دائما باستعمال الاصدار الحديث ولا تأبه بالمكتبات لانه يجري العمل على تحديث جميع المكتبات الشائعة لتتناسب مع بايثون 3 (أشهرها أصبحت تدعم بايثون 3 ).
وفي الأخير عزيزي القارئ إذا كنت مهتما بالمكتبات وتريد أن تكون على اطلاع إذ أصبحت تدعم بايثون 3 أم لا يمكنك زيارة الموقع التالي وهو يظهر جميع المكتبات التي تتناسب مع بايثون 3 باللون الأخضر وأما التي مازلت تعمل على بايثون2 فقط ستجدها باللون الأحمر .


ملاحظة : معظم المكتبات والحزم الخاصة ببايثون تم برمجتها للعمل على بايثون 2 لذلك عند تحميلك للمكتبات ستجد دائما نسخة خاصة ببايثون2 و3  
   

تعرف على عنوان IP الخاص بك مع بايثون

0
أقدم لكم سكريبت بسيط يمكنكم من خلاله التعرف على عنوان IP الخاص بك .
أولا عليك ب استدعاء وحدة urllib و re
كما سنقوم باستخدام موقع checkip.dyndns.org
import urllib
import re

url = "http://checkip.dyndns.org"

request = urllib.urlopen(url).read()

theIP = re.findall(r"\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}", request)

print "your IP Address is: ",  theIP

قواميس بايثون

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

المفاتيح والقيم في قواميس بايثون

0
مثال بسيط عن كيفية استخدام المفاتيح والقيم في قواميس بايثون.



>>> data = {'x': 1, 'y': 2, 'z': 3}

>>> for d in data.items():
... print d
...
('y', 2)
('x', 1)
('z', 3)

>>> for k, v in data.items():
... print k, v
...
y 2
x 1
z 3

>>> data.keys()
['y', 'x', 'z']

>>> data.values()
[2, 1, 3]

>>> data.items()
[('y', 2), ('x', 1), ('z', 3)]

>>> dict(data.items())
{'y': 2, 'x': 1, 'z': 3}

>>> for d in data.items():
... print list(d)
...
['y', 2]
['x', 1]
['z', 3]

الحصول على اسم السيرفر المحلي باستخدام بايثون

0
للحصول على اسم السيرفر المحلي باستخدام لغة بايثون نقوم باستخدام الدالة socket.gethostname() .


import socket
socket.gethostname()
وستكون النتيجة:

localhost

هناك طريقة أخرى للحصول على اسم السيرفر المحلي باستخدام platform.node()


 
import platform
platform.node()
وستكون النتيجة بطبيعة الحال Localhost

كان هذا درس على السريع حتى نتعلم ونعتاد التعامل مع دوال مكتبة المقبس في بايثون.

برمجة مقبس udp في بايثون

0
udp أو بروتوكول بيانات المستخدم هو بروتوكول بديل عن البروتوكول الشائع TCP وكلاهما يتم استخدامهما لنقل الحزم من جهاز إلى أخر ولكن يوجد فرق مهم يختلفان فيه حيث يقوم بروتوكول udp بنقل الحزم دون الحاجة إلى إجراء اتصالات أولية لإنشاء قنوات اتصال قبل بدء إرسال البيانات.
ولمزيد من المعلومات حول بروتوكول udp يرجى زيارة موقع ويكيبيديا.
في هذه التدوينة سنتكلم عن مقابس udp في بايثون وقبل البدء في هذا الدرس أنصحك بزيارة الدرس السابق حول برمجة مقابس في بايثون الخاصة ب tcp.

اضافة وازالة عناصر من قوائم بايثون

0
نأخذ قائمة على سبيل المثال


big_maghreb = ["Morocco", "Algeria", "Tunisia"]

الآن سنقوم بعرض محتويات القائمة باستخدام حلقة for
 
big_maghreb = ["Morocco", "Algeria", "Tunisia"]
for country in big_maghreb:
    print country

وستكون النتيجة :

Morocco
Algeria
Tunisia
الآن سنقوم بإضافة بلد أخر ينتمي إلى المغرب العربي الكبير إلى القائمة 

big_maghreb = ["Morocco", "Algeria", "Tunisia"]
big_maghreb.append("Mauritania")
for country in big_maghreb:
    print country

وستكون النتيجة :
Morocco
Algeria
Tunisia
Mauritania
 وكما تلاحظون عند إضافة عنصر إلى القائمة يتم إضافته افتراضيا في مؤخرة القائمة ولكن يمكن اضافة أي عنصر في أي مكان تريد على القائمة مثال:

big_maghreb.insert(0, "Mauritania")

باستخدام insert يمكننا اضافة أي عنصر في أي مكان نريد على القائمة وفي المثال السابق سيتم اضافة Mauritania في المركز الأول حيث يتم حساب مراكز العناصر على القوائم ابتداءا من الصفر.
وكما يمكننا ايضا حذف اي عنصر من القائمة باستخدام remove وبدون أي إطالة دعونا نأخذ مثال أخر:

numbers = [5, 4, 3, 2, 1]
numbers.remove(5)


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

 
numbers = [5, 4, 3, 2, 1]

numbers.pop(0)

numbers.pop()

for number in numbers:
    print number
انتهـــــــــــــــى.