دروس بايثون لجامعة حماة PDF
Document Details
Uploaded by FavoredTonalism
جامعة حماة
2014
Tags
Summary
هذا ملف PDF يحتوي على دروس في لغة البرمجة بايثون، وهي لغة برمجة عالية المستوى سهلة التعلم. يتضمن الملف شرحاً لمبادئ البرمجة والعمليات الأساسية في بايثون، مثل التعليقات والمتغيرات والعمليات الرياضية والمنطقية، بالإضافة إلى دوال الطباعة و التعامل مع الدخل الخارجي. تم تصميم الملف لتقديم أساسيات لغة بايثون للطلاب الجامعيين في جامعة حماة.
Full Transcript
جامعة حماة الكلٌة التطبٌقٌة قسم تقنٌات حاسوب المادة :بٌانٌات الحاسوب -عملً Python بايثون Python هً لغة برمجة عالٌة المستوى سهلة التعلم مفتوحة المصدر قابلة للتوسٌع تعتمد أسلوب...
جامعة حماة الكلٌة التطبٌقٌة قسم تقنٌات حاسوب المادة :بٌانٌات الحاسوب -عملً Python بايثون Python هً لغة برمجة عالٌة المستوى سهلة التعلم مفتوحة المصدر قابلة للتوسٌع تعتمد أسلوب البرمجة الكائنٌة )(oop وهً لغة ُمتع ِددة االستخدامات وتستخدم بشكل واسع فً العدٌد من المجاالت كبناء البرامج المستقلة باستخدام الواجهات الرسومٌة وفً تطبٌقات الوٌب ،وٌمكن استخدامها كلغة برمجة نصٌة للتحكم فً أداء العدٌد من البرمجٌات بشكل عام ٌمكن استخدام باٌثون لعمل البرامج البسٌطة للمبتدئٌن وإلنجاز المشارٌع الضخمة فً الوقت نفسه غالبا ما ٌُنصح المبتدؤون فً مٌدان البرمجة بتعلم هذه اللغة ألنها من بٌن أسرع اللغات البرمجٌة تعلما. لماذا نتعلم لغة البايثون Python تعد باٌثون لغة برمجٌة سهلة نسبٌا بالمقارنة مع جافا و ) (c++إضافة إلى أنها لغة برمجة متعددة األنماط الفكرٌة وتدعم البرمجة كائنٌة التوجه والبرمجة المهٌكلة بشكل كامل ،كما تدعم * باٌثون البرمجة الوظٌفٌة ٌمكنها أٌضا أن دعم العدٌد من األنماط الفكرٌة األخرى ،بما فً ذلك التصمٌم بالعقود والبرمجة المنطقٌة. ٌمكن لباٌثون أٌضا التعامل مع العدٌد من أنواع قواعد البٌانات مثل ) (MYSQLوغٌر ذلك. * تعتبر باٌثون لغة سهلة للغاٌة لتبدأ بها فً تعلم البرمجة. * باٌثون هً من البرمجٌات الحرة مفتوحة المصدر. * أفضل محررات األكواد للغة بايثون Python Visual Studio Code ٌعتبر هذا المحرر متوافق مع كل التقنٌات و اللغات البرمجٌة فً العالم ،فهو مجانً و سهل التنصٌب و االستخدام و ٌمكن استخدامه pycharm للكثٌر من اللغات من بٌنها لغة Python هو محرر موجه كلٌا لبرمجة كل التقنٌات المتعلقة بلغة باٌثون Python Eclipse ٌأتً مجهزا بالكثٌر من التقنٌات الجانبٌة مثل Terminal هذا المحرر ٌبدو صعب قلٌال مقارنة مع VS codeو Pycharm كما أنه ال ٌأتً بتلك التطوٌرات القوٌة لكنه ٌبقى محرر مجانً و programiz متوافق مع كل انظمة التشغٌل وٌعد افضل موقع من بٌن المواقع االخرى التً تتٌح لك كتابة كود Atom بلغة Pythonوالتً توحً لك بأنك تكتب الكود داخل المحرر الخاص باللغة ٌعتبر هذا محرر أٌضا من بٌن أفضل المحررات الموجودة حالٌا مفتوحة المصدر اساسيات لغة البايثون Python التعليقات Comments تبدأ التعلٌقات ذات السطر الواحد برمز ،#أما التعلٌقات التً تحتوي أكثر من سطر فٌجب إحاطتها بثالث عالمات تنصٌص (منفردة أو مزدوجة) فً البداٌة والنهاٌة.أنظر المثال التالً: اساسيات لغة البايثون Python دالة الطباعة في بايثون والتً من خاللها ٌُمكننا طباعة المخرجات على ُمفسر الباٌثون اساسيات لغة البايثون Python دالة Input لإلدخال وللحصول على مدخالت من شاشة األوامر: اساسيات لغة البايثون Python تعريف المتغيرات في بايثون ال ٌوجد فً الباٌثون تعرٌفات ،بمعنى أنه ال نُحدد نوع المتغٌر ،وٌتم إعطاء المتغٌر قٌمة بشكل مباشر.الطرٌقة المتعارف علٌها فً تسمٌة المتغٌرات هً األحرف الصغٌرة مع التسطٌر السفلً: محاولة استخدام متغٌر لم ٌأخذ قٌمة مسبقا ٌنتج عنه خطأ . ُجمل التحكم في بايثون Python ال ُجملة الشرطية ) ( if كل ما تقوم به ال ُجملة الشرطٌة هو أنها تفحص تحقق شرط ما ،وبناء على ذلك ٌتم تنفٌذ شٌفرة برمجٌة ما. المثال التالً ٌُوضح لنا كٌفٌة كتابة ال ُجملة الشرطٌة والتً تُعتبر أحد ُجمل التحكم فً باٌثون كما ٌلً: ُجمل التحكم في بايثون Python ال ُجملة الشرطية ) ( if اذا لم تتحقق أي جملة شرطٌةٌُ ،مكن لنا تنفٌذ شٌفرة برمجٌة باستخدام تعبٌر elseوالذي سٌتضمن الشٌفرة التً ستقوم باٌثون بتنفٌذها عندما ال تتحقق أي جملة شرطٌة كما فً المثال التالً: ُجمل التحكم في بايثون Python جملة التكرار ) ( for loop ضمن لغة الباٌثون تعبٌرا خاصة بالحلقة التكرارٌة ٌتم استخدامه لتكرار تنفٌذ شٌفرة برمجٌة ما داخل حلقة التكرار. في بعض الحاالت قد نحتاج الى ايقاف حلقة التكزار عند تحقق شزط ما ا مثًل ،في هذه الحالة ،نستخدم :break ُجمل التحكم في بايثون Python جملة التكرار ) ( for loop فً جانب آخر ،قد نحتاج أن نتجاهل التكرار الحالً فً حلقة التكرار.فً المثال التالً نتجاهل قٌمة ) ( Cat ونتجاوزها باستخدام تعبٌر ) :( Continue ُجمل التحكم في بايثون Python جملة التكرار ) ( while loop ت ُستخدم لتكرار تنفٌذ شٌفرة برمجٌة ،بنفس مفهوم جملة forولكن االختالف هنا هو ان تكرار التنفٌذ ٌستمر فً حالة تحقق شرط جملة التكرار ،ولٌس كما فً forالتً تُنفذ الشٌفرة البرمجٌة بمقدار ُمحدد أو ُمعٌن. ُجمل التحكم في بايثون Python جملة التكرار ) ( while loop أنواع البيانات والعمليات العمليات الرياضية في بايثون األمثلة التالٌة تشرح العدٌد من المفاهٌم تحت عنوان أنواع البٌانات التً ٌُمكن التعامل معها فً لغة البرمجة الباٌثون ،وكٌفٌة اجراء العملٌات علٌهاٌُ.مكن تنفٌذ األمثلة التالٌة فً ُمفسر لغة باٌثون مباشرة. أنواع البيانات والعمليات العمليات الرياضية في بايثون فً الباٌثون ٌ ،3وجد نوعٌن من القسمة ،األولى تُسمى ” “ floating point divisionوتستخدم رمز القسمة المعروف ( ، ) /وناتج العملٌة دائما من نوع ( : ( Float أنواع البيانات والعمليات العمليات الرياضية في بايثون أما النوع الثانً من القسمة ٌُسمى ” “ floor divisionأو ” “ integer divisionونَستخدم الرمز ( ) // لهذا النوع ،وٌكون ناتج العملٌة دون الفاصلة واألرقام التً بعدها: أنواع البيانات والعمليات العمليات الرياضية في بايثون عملٌة باقً القسمة: عملٌة األس: أنواع البيانات والعمليات العمليات الرياضية في بايثون قاعدة أولوٌة العملٌات حسب األقواس ،حٌث ٌتم االنتهاء من حساب ما بٌن األقواس فً البداٌة: القٌم المنطقٌة (الحظ الحرف الكبٌر فً البداٌة): أنواع البيانات والعمليات العمليات الرياضية في بايثون عكس القٌمة المنطقٌة باستخدام ) : ( not العملٌات المنطقٌة (العملٌات المنطقٌة حساسة لحالة األحرف): أنواع البيانات والعمليات العمليات الرياضية في بايثون القٌمة المنطقٌة ) ( Falseتساوي الرقم ) ، (0والقٌمة المنطقٌة ) ( Trueتساوي الرقم ): (1 أنواع البيانات والعمليات العمليات الرياضية في بايثون عملٌة فحص المساواة باستخدام (==) : فحص عدم المساواة: أنواع البيانات والعمليات العمليات الرياضية في بايثون المقارنات: مكاتب معالجة الصور في بايثون scikit Image.1 هً مكتبة معالجة صور مفتوحة المصدر للغة برمجة باٌثون ,وهً تتضمن التحوالت الهندسٌة ومعالجة مساحة اللون والتحلٌل والتصفٌة والتشكل واكتشاف المٌزات والمزٌد, تم تصمٌمها للتعامل مع مكتبات ) ( pythonالعددٌة والعلمٌة مثل ) . ( SciPy ) , ( NumPy مكاتب معالجة الصور في بايثون scikit Image.1 مكاتب معالجة الصور في بايثون Numpy.2 إنها واحدة من المكتبات الرئٌسٌة لباٌثون ،وهً توفر بشكل أساسً الدعم للمصفوفات ,الصورة هً فً الواقع مجموعة ) ( Numpyقٌاسٌة تحتوي على نقاط بٌانات بكسل ,لذلك ٌمكننا استخدام الوظائف األساسٌة لـ ) ، ( Numpyمثل التقطٌع والتقٌٌد والفهرسة ،لتعدٌل وحدات البكسل فً الصورة. مكاتب معالجة الصور في بايثون Numpy.2 مكاتب معاجة الصور في بايثون Scipy.3 ) ( Scipyمثل ( Numpy ) ،هً وحدة علمٌة أساسٌة أخرى فً ) ( Pythonلمعالجة الصور األساسٌة ومعالجة المهام ،وحداتها الفرعٌة ) ( scipy.ndimageمناسبة للصفائف ) ( Numpy متعددة األبعاد.تدعم هذه الحزمة اآلن الترشٌح الخطً وغٌر الخطً ،التشكل الثنائً ،وقٌاس األشٌاء. مكاتب معاجة الصور في بايثون Scipy.3 مكاتب معاجة الصور في بايثون PIL/Pillow.4 هً مكتبة مجانٌة ٌمكنها دعم فتح ملفات الصور ومعالجتها وتخزٌنها بتنسٌقات مختلفة وتدعم هذه المكتبة وظائف معالجة الصور األساسٌة ،مثل معالجة النقاط وتصفٌة نواة اإللتواء المدمجة وتحوٌل فراغ اللون. مكاتب معالجة الصور في بايثون OpenCv-Python.5 هً عبارة عن مكتبة تحتوي على دوال تقوم بعمل معظم عملٌات الصور التً ٌحتاجها المبرمجٌن كما تحتوي على دوال تقوم بتحدٌد اجسام معٌنه فً الصورة مثل الخطوط واالشكال الهندسٌة ,ودوال اخرى لتحدٌد األلوان . مكاتب معاجة الصور في بايثون SimpleCV.6 إنه أٌضا إطار عمل مفتوح المصدر لتطبٌقات رؤٌة الكمبٌوتر.من خالله ٌمكنك الوصول إلى العدٌد من مكتبات رؤٌة الكمبٌوتر عالٌة األداء مثل ) ، ( OpenCVحتى لو كنت ال تعرف عمق البت ،أو تنسٌق الملف ،أو مساحة اللون . بعض األفكار التً تدعم ) ( SimpleCVهً: ٌمكن للمبتدئٌن حتى كتابة اختبارات رؤٌة. ٌمكن أن تعمل الكامٌرات وملفات الفٌدٌو والصور ومقاطع الفٌدٌو على التشغٌل البٌنً وتبادل المعلومات . * * مكاتب معاجة الصور في بايثون SimpleCV.6 مكاتب معاجة الصور في بايثون Mahotas.7 هً مكتبة لمعالجة الصور والرؤٌة الحاسوبٌة للباٌثون .ال ٌشمل فقط وظائف معالجة الصور التقلٌدٌة مثل التصفٌة والعملٌات الشكلٌة ،ولكن أٌضا المٌزات المتعلقة بمٌزات الحوسبة فً رؤٌة الكمبٌوتر الحدٌثة ، بما فً ذلك اكتشاف نقاط االهتمام والواصفات المحلٌة ,الواجهة مكتوبة بلغة ) ، ( Pythonلذا ٌمكنها دعم التطور السرٌع ،ولكن ٌتم تنفٌذ الخوارزمٌة فً ) ، ( C++مما ٌسمح بتحسٌن السرعة وتحسٌنها. مكاتب معاجة الصور في بايثون SimpleITK.8 )ITK (Insight Segmentation and Registration Toolkit (مجموعة أدوات التسجٌل والتقسٌم البصري) هو نظام مفتوح المصدر عبر األنظمة ،والذي ٌوفر للمطورٌن مجموعة من أدوات تحلٌل الصور القابلة لالمتداد ) ( SimpleITKهً حزمة تحلٌل الصور ,والتً تحتوي على عدد كبٌر من المكونات التً تدعم عملٌات التصفٌة وتجزئة الصور والتسجٌل . مكاتب معاجة الصور في بايثون SimpleITK.8 مكاتب معاجة الصور في بايثون Pycairo.9 هً مكتبة صور ثنائٌة األبعاد تدعم رسومات ثنائٌة البعد ,و الشًء المثٌر لالهتمام حول هذه المكتبة هو ان الرسومات ال تفقد الحدة والدقة أثناء تغٌٌر الحجم أو التحوٌل الخاص بالصورة . المصادر wikipedia 3alam.pro * * arabicprogrammer * aqweeb * Pycacademy.hsoubairo 3alam.pro * * shoghlonline pythonat * *