Lecture 1 - Programming 2 - 2024-2025

Document Details

MasterfulFeynman

Uploaded by MasterfulFeynman

Al Janad University for Science and Technology

2024

Dr. Bilal Al-samaee

Tags

python programming programming computer science software development

Summary

These are lecture notes on programming 2, specifically focusing on functions of the Python language and the use cases of Python in general. It covers Python installation and setup, and the introduction to various python concepts.

Full Transcript

‫جامعة اجلند‬ ‫كلية اهلندسة وتقنيات املعلومات‬ ‫قسم تقنيات معلومات ‪IT‬‬ ‫احملاظرة األوىل‬ ‫د‪.‬بالل السامعي‬ ‫‪2024-2025‬‬ ‫‪Dr. Bilal Al-samaee‬‬...

‫جامعة اجلند‬ ‫كلية اهلندسة وتقنيات املعلومات‬ ‫قسم تقنيات معلومات ‪IT‬‬ ‫احملاظرة األوىل‬ ‫د‪.‬بالل السامعي‬ ‫‪2024-2025‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪1‬‬ ‫المحتوي‬ ‫ بايثون ‪Python‬‬ ‫ مميزات لغة البرمجة بايثون ‪Python‬‬ ‫ اين تستخدم لغة البرمجة بايثون‪Python‬‬ ‫ وظائف لغة بايثون‪Python‬‬ ‫ ‪Getting Python‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪2‬‬ ‫?‪What is Python‬‬ ‫ بايثون ‪:Python‬‬ ‫ هي لغة برمجة عالية المستوى تم تطويرها في أوائل‬ ‫التسعينات من قبل جويدو فان روسوم ‪Guido van‬‬ ‫‪.Rossum‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪3‬‬ ‫مميزات لغة البرمجة بايثون‪Python‬‬ ‫إليك بعض المميزات الرئيسية للغة بايثون‪:‬‬ ‫‪.1‬سهولة القراءة والكتابة‪ :‬بايثون تستخدم قواعد بسيطة وصريحة‪ ،‬مما يجعل الكود سهل القراءة والفهم‪.‬‬ ‫ضا‬ ‫‪.3‬قابلية االندماج‪ :‬يمكنك استدعاء الوحدات والدوال المكتوبة بلغات أخرى مثل ‪ C‬و ‪ ،++C‬ويمكنك أي ً‬ ‫كتابة ملحقات (‪ )Extensions‬بلغات البرمجة المنخفضة المستوى مثل ‪ C‬لتحسين األداء عند الحاجة‪.‬‬ ‫‪.4‬وفرة المكتبات واإلطارات‪ :‬بايثون توفر مكتبات وإطارات غنية تسهل عليك تنفيذ مهام مختلفة بسهولة‪.‬‬ ‫مثل ‪ NumPy‬و ‪ Pandas‬و ‪ Matplotlib‬و ‪ TensorFlow‬و ‪ Django‬و ‪ Flask‬وغيرها الكثير‪.‬‬ ‫‪.5‬مفتوحة المصدر‪ :‬بايثون هي لغة مفتوحة المصدر‪ ،‬مما يعني أنه يمكن الوصول إلى رموزها المصدرية‬ ‫وتعديلها وتوزيعها‪.‬هذا يتيح لك الحرية في تخصيص اللغة وإضافة ميزات جديدة حسب احتياجاتك‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪4‬‬ ‫‪.‬‬ ‫اين تستخدم لغة البرمجة بايثون‪Python‬‬ ‫‪.1‬علوم البيانات‪ :‬بايثون تعتبر لغة رائعة لعلوم البيانات وتحليل البيانات‪.‬تتوفر مكتبات مثل ‪ NumPy‬و‬ ‫‪ Pandas‬و ‪ Matplotlib‬و ‪ SciPy‬وغيرها التي تساعد على تنظيم وتحليل البيانات بشكل فعال‪.‬‬ ‫‪.2‬الذكاء االصطناعي‪ :‬بايثون تستخدم على نطاق واسع في مجاالت التعلم اآللي والذكاء االصطناعي‪.‬توفر‬ ‫مكتبات مثل ‪ TensorFlow‬و ‪ Keras‬و ‪ PyTorch‬إمكانيات قوية لبناء نماذج التعلم العميق وتنفيذ‬ ‫الخوارزميات الذكاء االصطناعي‪.‬‬ ‫‪.3‬االمن السيبراني‪ :‬تُستخدم لغة بايثون في األمن السيبراني ألتمتة المهام‪ ،‬تطوير األدوات الهجومية‬ ‫والدفاعية‪ ،‬تحليل البرمجيات الخبيثة‪ ،‬واختبار االختراق‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪5‬‬ ‫وظائف لغة بايثون‪Python‬‬ ‫فيما يلي بعض وظائف لغة بايثون‪:‬‬ ‫مطور ألعاب‬ ‫مهندس‬ ‫مصمم‬ ‫بيانات‬ ‫مواقع ويب‬ ‫محلل‬ ‫مطور‬ ‫بيانات‬ ‫بايثون‬ ‫مهندس تعلم‬ ‫عا ِلم بيانات‬ ‫اآللة‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪6‬‬ Getting Python ‫ والملفات‬،source code ‫ أحدث الشيفرات المصدرية‬ ، documentation‫ والتوثيقات‬، binaries‫الثنائية‬ ‫ وغيرها متاحة على الموقع الرسمي للـ‬، news‫واألخبار‬ Python https://www.python.org/ Dr. Bilal Al-samaee 7 ‫تثبيت بايثون وإعداد بيئة العمل‪Python installation‬‬ ‫ ‪ IDE‬هو اختصار لـ ‪Integrated Development‬‬ ‫‪ ،Environment‬وهو بيئة تطوير متكاملة تستخدم‬ ‫لتطوير البرمجيات‪.‬‬ ‫ توفر ‪ IDE‬أدوات وميزات لتحرير وتصحيح الشفرة‬ ‫وتنظيم المشروعات واختبار الكود وتشغيل التطبيقات‪.‬‬ ‫‪www.anaconda.com/downloads‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪8‬‬ ‫‪Integrated Development Environment - IDE‬‬ ‫بيئة تطوير متكاملة‬ ‫هناك العديد من الـ ‪IDEs‬المتاحة للغة البرمجة بايثون‪ ،‬وفيما يلي بعض األمثلة المشهورة‪:‬‬ ‫‪ :Visual Studio Code.2‬وهو ‪ IDE‬خفيف الوزن‬ ‫‪ :PyCharm.1‬واحدة من أكثر الـ ‪ IDEs‬شهرة لبايثون‪،‬‬ ‫وقوي يدعم العديد من لغات البرمجة بما في ذلك‬ ‫وهي مطورة من قبل ‪.JetBrains‬تتميز بميزات قوية‬ ‫بايثون‪.‬يوفر ميزات تحرير متقدمة وتكامل مع ‪Git‬‬ ‫مثل التحقق من الشفرة القوية وتنسيق الشفرة التلقائي‬ ‫وتصحيح األخطاء وتوسيع الوظائف من خالل‬ ‫وتصحيح األخطاء وتحليل البيانات وتكامل ‪.Git‬‬ ‫مجموعة واسعة من اإلضافات‪.‬‬ ‫‪ :Anaconda.3‬عبارة عن توزيعة بايثون تحتوي‬ ‫‪ :Jupyter Notebook.4‬عبارة عن بيئة تفاعلية‬ ‫على العديد من األدوات والمكتبات الشهيرة لعلوم‬ ‫تعتمد على المتصفح تسمح لك بكتابة الشفرة وعرض‬ ‫البيانات والتعلم اآللي‪.‬تأتي مع بيئة تطوير مدمجة‬ ‫النتائج بين الخاليا‪.‬يستخدم على نطاق واسع في علوم‬ ‫تسمى ‪ Anaconda Navigator‬وتدعم التطوير‬ ‫البيانات والتعلم اآللي‪.‬‬ ‫والتحليل البياني‪.‬‬ ‫‪ :Spyder.5‬هو ‪ IDE‬يستهدف علماء البيانات ومطوري بايثون‪،‬‬ ‫ويتميز بواجهة مستخدم بسيطة وتحرير شفرة متقدم وتحليل البيانات‬ ‫ورسم البيانات‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪9‬‬ ‫ ولكن في هذا المقرر سوف نستخدم البيئة التفاعلية ‪. Jupyter Notebook‬‬ ‫ اغلب الـ ‪ IDEs‬المتاحة للغة البرمجة بايثون تاتي ضمن ال ‪ Anaconda‬ومن ضمنها‬ ‫‪ Jupyter Notebook‬او منصة مفتوحة المصدر ‪Visual Studio Code‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪10‬‬ Anaconda | The World’s Most Popular Data ‫ من الموقع‬anaconda ‫ لتحميل‬ : ‫ نتبع االتي‬Science Platform Execute Exe File ‫ نحصل على الملف التنفيذي‬ Dr. Bilal Al-samaee 11 Next ‫ اضغط‬ Dr. Bilal Al-samaee 12 Next ‫ اضغط‬ Dr. Bilal Al-samaee 13 Install ‫ اضغط‬ Dr. Bilal Al-samaee 14 Wait to Complete Installation ‫ انتظر حتى يكتمل التحميل‬ Dr. Bilal Al-samaee 15 Finish ‫ اضغط‬ Dr. Bilal Al-samaee 16 Search Anaconda Navigator and Open ‫ ابحث عن اناكوندا وافتح‬ Dr. Bilal Al-samaee 17 Jupyter Notebook ‫ في‬Install ‫ اضغط على‬ Dr. Bilal Al-samaee 18 Python 3 ‫ اضغط على‬ Dr. Bilal Al-samaee 19 Dr. Bilal Al-samaee 20 ‫تاكد هل بعض المكتبات المهمه موجودة او ال ‪Check whether library is installed or not‬‬ ‫‪Example for Numpy‬‬ ‫اذا غير موجودة نستخدم ‪ Pip install‬متبوع باسم المكتبة المراد تحميلها ‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪21‬‬ ‫‪ -‬منصة مفتوحة المصدر ‪ :Visual Studio Code‬يدعم العديد من لغات البرمجة عن طريق تثبيت العديد من اإلضافات‬ ‫‪ Extensions‬مثل ‪ Python‬و‪ Jupyter‬التي تدعم تطوير نماذج الذكاء االصطناعي وتعلم اآللة مباشرة في ‪VS‬‬ ‫‪ ,Code‬وضافات اخرى لبرمجيات اخرى‪.‬‬ ‫‪https://code.visualstudio.com/docs/editor/editingevolved‬‬ ‫الكلمات المحجوزة (‪)Reserved Keywords‬‬ ‫في لغة البرمجة بايثون‪ ،‬توجد مجموعة من الكلمات المحجوزة ‪ Reserved Keywords‬التي ال يمكن استخدامها كمعرفات أو‬ ‫أسماء للمتغيرات أو الدوال في الشفرة‪.‬هذه الكلمات المحجوزة لها دور خاص في اللغة وتستخدم لتحديد هيكل البرامج وتنفيذ‬ ‫العمليات األساسية‪.‬إليك قائمة بالكلمات المحجوزة في بايثون‪:‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪23‬‬ ‫الجملة البرمجية في بايثون‬ ‫الجملة البرمجية في لغة بايثون هي وحدة تنفيذية تقوم بتنفيذ إجراءات أو أوامر معينة‪.‬‬ ‫وتتألف الجملة البرمجية من تسلسل من الكلمات والتعابير والمشغالت التي تعمل معًا لتحقيق‬ ‫وظيفة معينة‪.‬‬ ‫الجملة البرمجية في بايثون‬ ‫شكل الجملة البرمجية في بايثون هو‪:‬‬ ‫‪Statement‬‬ ‫ويمكن أن يتكون الجملة البرمجية من تعابير مثل التعيين (=‪ ،)assignment‬واستدعاء‬ ‫الدوال (‪ ،)function calls‬والتحكم في التدفق مثل الشروط (‪ )conditions‬والحلقات‬ ‫(‪ ،)loops‬وأكثر من ذلك‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪24‬‬ :‫ هناك عدة أمثلة لجمل برمجية في بايثون‬،‫ على سبيل المثال‬ Print(“Hello World!”) X=input(“What is your name”) if x > 0 print("Hello "+input("what is your name")) Dr. Bilal Al-samaee 25 ‫برنامج بايثون‬ ‫ برنامج بايثون‬ ‫في لغة بايثون‪ ،‬البرنامج هو مجموعة من الجمل البرمجية التي تنفذ سلسلة من اإلجراءات لتحقيق‬ ‫هدف معين‪.‬‬ ‫ مكونات برنامج باثون‪:‬‬ ‫‪.1‬التعليمات البرمجية (‪:)Statements‬‬ ‫‪.2‬المتغيرات (‪)Variables‬‬ ‫‪.3‬الدوال (‪)Functions‬‬ ‫‪.4‬التعابير (‪)Expressions‬‬ ‫‪.5‬الشروط (‪)Conditions‬‬ ‫‪.6‬الحلقات (‪)Loops‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪26‬‬ ‫متغيرات بايثون ‪Python Variables‬‬ ‫في لغة البرمجة بايثون‪ ،‬يتم استخدام المتغيرات لتخزين البيانات والمعلومات‪.‬يمكنك أن تفكر‬ ‫في المتغيرات على أنها صناديق تخزين يمكنك استخدامها للحفاظ على القيم التي تحتاجها‬ ‫خالل تنفيذ برنامجك‪.‬‬ ‫ما هو المتغير في بايثون وماهي شروط تسميته ؟‬ ‫ المتغير‪ : Variables‬تعريف متغير في بايثون يتم عن طريق تعيين قيمة له‪.‬على‬ ‫سبيل المثال‪ ،‬يمكنك تعريف متغير يحمل قيمة عددية كالتالي‪:‬‬ ‫‪x = 10‬‬ ‫في هذا المثال‪ ،‬تم تعريف المتغير "‪ "x‬وتم تخزين القيمة ‪ 10‬فيه‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪27‬‬ ‫المتغيرات بايثون ‪Python Variables‬‬ ‫ شروط تسمية المتغيرات‪ :‬بالنسبة لشروط تسمية المتغيرات في بايثون‪ ،‬فهي كما يلي‪:‬‬ ‫‪.1‬يجب أن تبدأ أسماء المتغيرات بحرف (‪ )A-Z ،a-z‬أو برمز التسطير السفلي ‪.)_( underscore‬‬ ‫‪.2‬يمكن أن تحتوي أسماء المتغيرات على أحرف (‪ )A-Z ،a-z‬وأرقام (‪ )9-0‬ورمز التسطير السفلي‬ ‫(_)‪.‬‬ ‫‪.3‬أسماء المتغيرات حساسة لحالة األحرف الصغيرة ‪ Lower‬والكبيرة ‪ ،Upper‬وهذا يعني أن "‪ "x‬و‬ ‫"‪ "X‬هما متغيران مختلفان‪.‬‬ ‫‪.4‬يجب أن ال تكون أسماء المتغيرات هي كلمات محجوزة في لغة بايثون‪ ،‬مثل "‪ "if‬أو "‪ "for‬أو‬ ‫"‪ "while‬وغيرها‪.‬‬ ‫‪.5‬بايثون اليسمح باستخدام المتغيرات الخاصة ‪ punctuation characters‬مثل ‪@, $, and %‬‬ ‫داخل المتغيرات‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪28‬‬ Python Variables ‫المتغيرات بايثون‬ :‫فيما يلي بعض األمثلة على أسماء متغيرات صالحة في بايثون‬ age = 25 name = "John" total_score = 90.5 _is_valid = True Dr. Bilal Al-samaee 29 ‫المتغيرات بايثون ‪Python Variables‬‬ ‫هنا جدول يوضح أمثلة ألسماء متغيرات صحيحة وغير صحيحة في لغة البرمجة بايثون والسبب الذي يجعلها‬ ‫صحيحة أو غير صحيحة‪:‬‬ ‫اسم المتغير‬ ‫صحيحة‪/‬غير صحيحة‬ ‫السبب‬ ‫‪age‬‬ ‫صحيحة‬ ‫يمكن استخدام الحروف الصغيرة واألرقام وشرطة سفلية (_) في أسماء المتغيرات‪.‬‬ ‫‪full_name‬‬ ‫صحيحة‬ ‫يمكن استخدام الحروف الصغيرة واألرقام وشرطة سفلية (_) في أسماء المتغيرات‪.‬‬ ‫‪1st_place‬‬ ‫غير صحيحة‬ ‫يجب أن تبدأ أسماء المتغيرات بحرف أو شرطة سفلية (_)‪ ،‬وال يمكن أن تبدأ برقم‪.‬‬ ‫‪my-variable‬‬ ‫صحيحة‬ ‫يمكن استخدام الشرطة الواحدة (‪ )-‬في أسماء المتغيرات‪.‬‬ ‫‪$price‬‬ ‫غير صحيحة‬ ‫ال يمكن استخدام رموز العملة‪ $‬أو أي رموز خاصة غير الشرطة السفلية (_) في‬ ‫أسماء المتغيرات‪.‬‬ ‫‪student%‬‬ ‫غير صحيحة‬ ‫ال يمكن استخدام رموز خاصة مثل النسبة المئوية (‪ )%‬في أسماء المتغيرات‪.‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪30‬‬ Data Types ‫انواع البيانات في بايثون‬ Dr. Bilal Al-samaee 31 ‫انواع المتغيرات في بايثون ‪Python Variables Types‬‬ ‫ انواع المتغيرات في بايثون‬ ‫في لغة البرمجة بايثون‪ ،‬توجد عدة أنواع مختلفة من المتغيرات التي يمكنك استخدامها وتعريفها‬ ‫حسب الحاجة‪.‬فيما يلي بعض األنواع الشائعة للمتغيرات في بايثون‪:‬‬ ‫‪.1‬أنواع األعداد الصحيحة (‪:)Integers‬‬ ‫تستخدم لتخزين القيم العددية الصحيحة الال محدودة بفاصلة عشرية‪.‬‬ ‫مثال‪:‬‬ ‫‪age = 25‬‬ ‫‪count = 10‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪32‬‬ ‫انواع المتغيرات في بايثون ‪Python Identifiers Types‬‬ ‫‪.2‬أنواع األعداد العشرية (‪:)Floats‬‬ ‫تستخدم لتخزين القيم العددية التي تحتوي على فاصلة عشرية‪.‬‬ ‫مثال‪:‬‬ ‫‪pi = 3.14‬‬ ‫‪average = 6.5‬‬ ‫‪.3‬أنواع النصوص (‪:)Strings‬‬ ‫تستخدم لتخزين السالسل النصية المكونة من حروف وأرقام ورموز‪.‬‬ ‫مثال‪:‬‬ ‫"‪name = "John‬‬ ‫!'‪message = 'Hello, World‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪33‬‬ Strings ‫دوال جاهز خاصة بالسالسل النصية‬ h=“Hello Worlds” h.upper(): Convert Lower letter to Upper letter , Output is 'HELLO WORLDS‘ h.lower(): convert Upper letter to lower letter, Output is ‘hello worlds ' h.count('o'): return number of letters in string, Output is 2 h.capitalize(): Convert the first letter of word in string to Upper letter, Output is 'Hello worlds' h.split(): Splitting a Sentence into Words, output is [‘hello’, ‘worlds’] h.split(‘o’): used to split a string on a specific substring, output is ['Hell', ' W', 'rlds'] Dr. Bilal Al-samaee 34 ‫انواع المتغيرات في بايثون ‪Python Identifiers Types‬‬ ‫‪.4‬أنواع القيم المنطقية (‪:)Booleans‬‬ ‫تستخدم لتخزين القيم المنطقية المنطقيّة‪ ،‬وهي إما ‪( True‬صحيح) أو ‪( False‬خاطئ)‪.‬‬ ‫مثال‪:‬‬ ‫‪is_valid = True‬‬ ‫‪is_ready = False‬‬ ‫‪.5‬أنواع القوائم (‪:)Lists‬‬ ‫تستخدم لتخزين مجموعة من القيم المتعددة‪.‬يمكن أن تحتوي على أنواع متغيرات مختلفة‪.‬‬ ‫مثال‪:‬‬ ‫[‪numbers =]5 ,4 ,3 ,2 ,1‬‬ ‫]"‪names = ["John", "Jane", "Alice‬‬ ‫‪Dr. Bilal Al-samaee‬‬ ‫‪35‬‬ ‫)‪type(x‬‬ ‫ )‪ type(x‬هي دالة تُستخدم في العديد من لغات البرمجة لتحديد نوع المتغير‪. x‬بمعنى آخر‪ ،‬تقوم هذه الدالة‬ ‫بإرجاع نوع البيانات الذي ينتمي إليه المتغير‪.‬‬ ‫ عند استخدام)‪ ، type(x‬تقوم هذه الدالة بإرجاع نوع المتغير ‪ x‬ككائن نوع )‪ (type object‬هذا يمكن أن‬ ‫يكون مفيدًا لتحديد نوع البيانات أثناء تنفيذ البرمجيات‪ ،‬مما يساعد في ضمان أن المتغيرات تُستخدم بالشكل‬ ‫الصحيح‪.‬‬ ‫مثال‬ ‫‪x=5‬‬ ‫يمكنك استخدام )(‪ type‬على النحو التالي‪:‬‬ ‫))‪print(type(x‬‬ ‫>'‪

Use Quizgecko on...
Browser
Browser