المتحولات في بايثون Python Variables

المتحولات البرمجية وهي من اهم العناصر البرمجية والتي تحتويها اي لغة برمجة في العالم مهما كانت صغيرة او كبيرة فكل برنامج مكتوب يتالف من مجموعة من المتغيرات تجتمع معا لتشكيل برنامج مفيد .

ماهي المتحولات البرمجية

المتحولات او بتسمية اخرى المتغيرات وهي حاويات تستخدم لتخزين البيانات داخلها واستخدمها في استرجاع البيانات المخزنة في الجزأ المناسب من الكود البرمجي بحسب رؤية المبرمج.

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

يتم إنشاء المتغير في اللحظة التي يسند لها المبرمج قيمة معينة.

مثال

x = 5
y = "John"
print(x)
print(y)

النتيجة للكود السابق

5
John

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

x = 4 # x is of type int
x = "Sally" # x is now of type str
print(x)

نتيجة المثال

Sally

يمكن إسناد القيم النصية للمتحولات من خلال تضمينها ضمن اشارات التنصيص إما الفريدة ‘ ‘ او المزدوجة ” “
مثال

x = "John"
# is the same as
x = 'John'

نتيجة الكود البرمجي

John
John

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

يمكن تسمية المتحولات باي اسم سواء قصير مثل x او طويل مثل cat_name مع اتباع قواعد التسمية في لغة البرمجة بايثون

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

  1. حصرا يجب ان يبدأ اسم المتحول باحد الاحرف الابجدية الإنكليزية او اشارة _
  2. لايمكن ان يبدأ اسم المتحول ب رقم
  3. اسم المتحول يمكن فقط ان يحتوي الاحرف الانلكيزية بحالتها الكبيرة والصغيرة مع الارقام والرموز التالية فقط -_
  4. المتحولات في لغة البايثون حساسة لحالة الاحرف اي في حال كتبنا نفس اسم المتحول ولكن بحالتي احرف مختلفة مرة كبيرة ومرة صغيرة فان مفسر البرمجي للبايثون يعتبرها متحولان مستقلان
    مثال: X تختلف عن x

تعيين القيم إلى متحولات مختلفة

لغة البايثون تتيح للمبرمج تعيين قيم عدة متحولات في سطر برمجي واحد

مثال

x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)

نتيجة الكود البرمجي السابق

Orange
Banana
Cherry

يمكن اسناد نفس القيمة لمتحولات مختلفة في نفس السطر

مثال

x = y = z = "Orange"
print(x)
print(y)
print(z)

نتيجة الكود البرمجي السابق

Orange
Orange
Orange

طباعة المتحولات في البايثون

لطباعة المتحولات نستخدم الكلمة المعرفة داخل اللغة print ولاسناد نصوص للمتحول نستخدم إشارة +

مثال

x = "awesome"
print("Python is " + x)

نتيجة الكود البرمجي السابق

Python is awesome

يمكن إضافة إشارة الجمع + لجمع متحولين من نوع نص سوية

مثال

x = "Python is "
y = "awesome"
z =  x + y
print(z)

نتيجة الكود البرمجي السابق

Python is awesome

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

x = 5
y = "John"
print(x + y)

نتيجة الكود البرمجي السابق

TypeError: unsupported operand type(s) for +: 'int' and 'str'

المتحولات العامة في البايثون

المتحولات التي تكتب خارج الدوال البرمجية هي متحولات عامة يمكن استخدامها في جميع انحاء الكود البرمجي وفي الدوال ايضا .

مثال

#Global variable 
x = "awesome" 

def myfunc():
  print("Python is " + x)

myfunc()

نتيجة الكود البرمجي السابق

Python is awesome

في حال قام المبرمج بتعريف نفس اسم المتحولات داخل الدالة وخارجه واسند قيم لها فان القيم المطبوعة عند استدعاء الدالة تختلف عن القيمة المطبوعة للمتحول العام الخارجي.

مثال

x = "awesome"

def myfunc():
  x = "fantastic"
  print("Python is " + x)

myfunc()

print("Python is " + x)

نتيجة الكود البرمجي السابق

Python is fantastic
Python is awesome

الكلمة المفتاحية global  في بايثون

في حال قام المبرمج بكتابة الكلمة المفتاحية global قبل المتحول داخل الدالة فانه يصبح متحول عام يمكن استدعاءه في كل انحاء مجالات الكود

مثال

def myfunc():
  global x
  x = "fantastic"

myfunc()

print("Python is " + x)

نتيجة الكود البرمجي السابق

Python is fantastic

ايضا تسخدم الكلمة المفتاحية global في بايثون لتعديل قيمة المتحول العام المذكور خارج الدالة

مثال

x = "awesome"

def myfunc():
  global x
  x = "fantastic"

myfunc()

print("Python is " + x)

نتيجة الكود البرمجي السابق

Python is fantastic

كود البايثون Python Syntax

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

تنفيذ الكود البرمجي

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

>>> print("Hello, World!")
Hello, World!

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

C:\Users\Your Name>python myfile.py

المسافات والبادئات في لغة البايثون

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

if 5 > 2:
  print("Five is greater than two!")

مفسر لغة البرمجة بايثون سيعطيك خطأ في حال تجاهلت الفراغات في بدايت ونهاية مجالات الاكواد
مثال خاطئ سيعيد خطأ

if 5 > 2:
print("Five is greater than two!")

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

مثال

if 5 > 2:
 print("Five is greater than two!") 
if 5 > 2:
        print("Five is greater than two!") 

يجب عليك استخدام نفس العدد من الفراغات في نفس المجال او البلوك البرمجي
مثال سيعطي خطأ عند تنفيذه

if 5 > 2:
 print("Five is greater than two!")
        print("Five is greater than two!")

المتحولات في لغة البرمجة بايثون

على عكس لغة البرمجة جافا او لغة البرمجة c++ فانت لست بحاجة إلى تعريف نوع المتحول هل هو متحول نصي او متحول رقمي اوووو إلخ .. يكفي فقط كتابة اسم المتحول وسيصبح جاهزا للاستخدام في كودك البرمجي.

التعليقات على الكود البرمجي في بايثون

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

التعليق هو كود لاينفذ ولايظهر في سطر الاوامر وانما فقط يمكنك قرائته عند تصفح الكود ويكفي ان تضح اشارة # قبل اي سطر كي يصبح تعليق .

مثال

#This is a comment.
print("Hello, World!")

البداية مع لغة البرمجة Python

تنصيب Python

العديد من أجهزة الكمبيوتر الشخصية وأجهزة ماكنتوش مثبتة اللغة عليها بشكل افتراضي. للتحقق من تثبيت python على جهازك الحاسوب والذي يعمل بنظام التشغيل Windows ، ابحث في شريط البدء عن Python أو قم بتشغيل التالي على سطر الأوامر (cmd.exe):

C:\Users\Your Name>python --version

للتحقق مما إذا كان لديك بيثون مثبتًا على نظام Linux أو Mac ، قم بفتح سطر الأوامر على نظام التشغيل Linux أو على نظام التشغيل Mac ، واكب التعليمة التالية:

python --version

في حال كل هذه التجريبات السابقة لم تنفعك عزيزي القارئ عندها يمكنك زيارة الموقع الرسمي للغة لتنصيب حزمة لغة البرمجة تبعا لنظام تشغيلك
https://www.python.org/

لمحة سريعة عن ملفات python

Python هي لغة برمجة مترجمة ، وهذا يعني انك كمطور تكتب ملفات بامتداد py في محرر نصوص ثم تضع تلك الملفات في مترجم python ليتم تنفيذها بشكل مباشر.

مثال عن طريقة تشغيل ملف بايثون

C:\Users\Your Name>python helloworld.py

حيث ان ملف ال helloworld.py هو الملف البرمجي والذي يحتوي اكواد البايثون المراد تنفيذه , والان دعنا نكتب كالعادة اول مثال لنا في هذا الملف. قم بفتح الملف الذي انشأته وضع بداخله العبارة التالية فقط:

print("Hello, World!")

احفظ الملف السابق وقم بالتوجه من خلال الاوامر في سطر الاوامر إلى مكان توجد الملف ومن ثم اكتب التعليم التالية

C:\Users\Your Name>python helloworld.py

والناتج سيكون عزيزي المبرمج 🙂 الكلمة الاشهر بجارب تعلم لغات البرمجة

Hello, World!

سطر اوامر بايثون

لاختبار مقدار قصير من الكود في البايثون Python يكون من الأسهل عدم كتابة الكود في ملف. أصبح هذا ممكنًا لأن Python يمكن تشغيله كسطر أوامر بشكل مباشر . اكتب ما يلي في سطر أوامر Windows أو Mac أو Linux:

C:\Users\Your Name>python

في حال لم تعمل python معك عندها يمكنك استبدالها بالكلمة المفتاحية py

C:\Users\Your Name>py

بعد كتابة الامر السابق في سطر الاوامر الخاص بك يمكنك عندها كتابة تعليماتك البرمجية مباشرة في سطر الاوامر دون الحاجة لكتابتها في ملف مستقل وهي حالة تفيد في التجريب واختبار الاكواد القصيرة فقط اما من الناحية العملية فبالطبع عزيزي المبرمج عليك كتابة ملفات مستقلة واستدعائها.

C:\Users\Your Name>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello, World!")

والناتج سيكون مطابق تماما في حال كتبناها في ملف مستقل

C:\Users\Your Name>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello, World!")
Hello, World!

عندما تريد الخروج من سطر الاوامر او التنفيذ الحالي للامر الخاص بالايثون عندها يمكنك كتاب التعليمة التالية ببساطة

exit()

مقدمة شاملة في لغة البرمجة Python بايثون

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

نبذة عن لغة البرمجة python بايثون

بايثون (بالإنجليزية: Python) هي لغة برمجة، من لغات المستوى العالي، تتميز ببساطة كتابتها وقراءتها، سهلة التعلم، تستخدم أسلوب البرمجة الكائنية، مفتوحة المصدر، وقابلة للتطوير. تعتبر لغة بايثون لغة تفسيرية، متعددة الأغراض وتستخدم بشكل واسع في العديد من المجالات، كبناء البرامج المستقلة باستخدام الواجهات الرسومية المعروفة وفي عمل برامج الويب، بالإضافة إلى استخدامها كلغة برمجة نصية للتحكم في أداء بعض من أشهر البرامج المعروفة أو في بناء برامج ملحقة لها. وبشكل عام يمكن استخدام بايثون لبرمجة البرامج البسيطة للمبتدئين، ولإنجاز المشاريع الضخمة كأي لغة برمجية أخرى في نفس الوقت. غالباً ما يُنصح المبتدؤون في ميدان البرمجة بتعلم هذه اللغة لأنها من بين أسرع اللغات البرمجية تعلماً.

نشأت بايثون في مركز CWI (مركز العلوم والحاسب الآلي) بأمستردام على يد جايدو ڤان روسم في أواخر الثمانينات من القرن المنصرم، وكان أول إعلان عنها في عام 1991. تم كتابة نواة اللغة بلغة سي. أطلق ڤان روسم الاسم “بايثون” على لغته تعبيرًا عن إعجابه بفِرقَة مسرحية هزلية شهيرة من بريطانيا، كانت تطلق على نفسها الاسم مونتي بايثون.

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

فديو من اربع ساعات لكل ماتريد معرفته عن Python

مجالات استخدام لغة البرمجة بايثون Python

  1. برمجة تطبيقات الويب وبناء المواقع التفاعلية
  2. استخدمات علمية خصوصا في مجال البحث العلمي والذكاء الصنعي
  3. استخدمات تعليمية حيث ان لغة البايثون تصنف كاحد اهم اللغات سهلة التعلم والتي يمكن اعتمادها في مناهج التعليم الاكاديمية
  4. برمجة تطبيقات سطح المكتب في مختلف انظمة التشغل “ويندوز , لينوكس و ماكنتوش”
  5. برمجة تطبيقات التجريب الخاصة بتجريب البرمجيات المبرمجة سابقا

لماذا عليّ استخدام وتعلّم Python

ماتحتله اللغة من اهمية بعمليات البحث في غوغل حتى عام 2018

هنا عليك سؤال نفسك احد اهم الاسئلة هل يجب ان استخدم هذه اللغة ؟ هل اضيّع وقتي بها ؟
الاجابة تعتمد على المطلوب تنفيذه على سبيل المثال ومن خلال عملي كمهندس برمجيات في احدى الشركات الضخمة في الشرق الاوسط طلب مني مديري في العمل بناء نظام CRM “نظام إدارة وتتبع العملاء ” ذكي خاص بالشركة ووقد جائني البريد كالتالي ” عزيزي المهندس أحمد سمعيلو علينا برمجة نظام يقوم بجمع بيانات العملاء وتحليلها باستخدام الذكاء الصنعي لمعرفة اهتمامات كل زائر لدينا بالتفصيل وتخزين جميع هذه البيانات لدينا وسنتقوف عن استخدام البرمجيات الخاصة والتي تخزن بيانات عملائنا لديها وندفع الاف الدولار ثمنا لها سنويا”, وعلى هذا الاساس قمت بدراسة كبيرة للمشروع وكوني اقوم ببرمجة تطبيقات باستخدم لغة البرمجة PHP فقررت تجربة ماتوفره هذه اللغة من مكتبات للذكاء الصنعي وخصوصا تحليل الكلمات ولكنني وجدتها فقيرة جدا ولذلك قررت بناء كل الاجزاء الخاصة بالتحليل والذكاء الصنعي باستخدام البايثون وقد ذهلت من النتيجة ومن المكتبات الرائعة المتوفرة للقيام بذلك لذلك وفي حال كان المطلوب منك برمجيات ذكاء صنعي اعتمد python بدون تردد وفي حال طلب منك اي تطبيقات مذكورة اعلاه اعتمدها مباشرة.

لاتقوم بإعادة اختراع العجلة واعتمد على المكتبات البرمجية المتوفرة

مصادر مهمة لتعلم لغة البرمجة بايثون

برمجيات مهمة عالميا تمّ برمجتها بواسطة ال python

تم برمجة الانستغرام باستخدام لغة البرمجة Python

مراجع المقالة

https://en.wikipedia.org/wiki/Python_(programming_language)
https://medium.com/@mindfiresolutions.usa/python-7-important-reasons-why-you-should-use-python-5801a98a0d0b
https://www.python.org/about/apps/
https://mikkegoes.com/learn-python-online-best-resources/
https://learn.onemonth.com/10-famous-websites-built-using-python/
https://ar.wikipedia.org/wiki/%D8%A8%D8%A7%D9%8A%D8%AB%D9%88%D9%86