php //// End //// ?>
هل فكرت يومًا في تعلم البرمجة لكنك لم تعرف من أين تبدأ؟ هل سمعت عن لغة بايثون وتريد فهم أساسياتها بطريقة بسيطة وعملية؟ هذا الكورس هو دليلك الأول لدخول عالم البرمجة بثقة.
تشرح هذه الدورة طريقة التفكير البرمجي باستخدام Python، وتساعدك على فهم كيف تُكتب الأوامر ولماذا تعمل، قبل الانتقال إلى بناء الأكواد والمشروعات.
في كورس أساسيات بايثون، ستصحبك المدربة «تقى أبو المكارم» المتخصصة في برمجة وتنفيذ المشروعات باستخدام بايثون، في رحلة ممتعة على مدى 19 حلقة لتعلم اللغة من الصفر حتى تتمكن من كتابة أكوادك الخاصة وتنفيذ مشروعاتك البرمجية الأولى.
سواء كنت مبتدئًا تمامًا أو لديك بعض المعرفة، هذا الكورس سيمنحك الأساس القوي الذي تحتاج إليه لفهم بايثون وبدء رحلتك في عالم البرمجة. فلا تفوت الفرصة لتتعلم من إحدى خبراء بايثون في الوطن العربي بأسلوب سهل وتطبيقي!
Check the frequently asked questions about this course.
Explore newly published courses and stay updated.
This course includes 1 modules, 19 lessons, and 0 hours of materials.
أهلًا بك في رحلتنا مع لغة البرمجة بايثون! في هذه الحلقة، سأبدأ معك من الصفر، ونتحدث عن أهمية تعلُّم البرمجة في عالم اليوم، لا سيما مع التوسع الهائل في مجال البيانات والتكنولوجيا. وقد تبدو البرمجة معقدة لبعضنا، لكنني هنا لجعلها تجربة سهلة وسلسة لك.
وسنتعرف معًا على لغة بايثون، كيف نشأت وكيف تطورت عبر السنوات، وما الذي يجعلها واحدة من أكثر اللغات انتشارًا واستخدامًا اليوم. وسأعطيك لمحة سريعة عما سنتعلمه في هذه الدورة، ولماذا تعلُّم بايثون يمكن أن يكون خطوة قوية في مسارك المهني.
وأخيرًا سأوضح لك البرنامج الذي سنستخدمه للعمل على بايثون وتعلُّم أساسياتها خطوة بخطوة.
في هذه الحلقة سأجيبك على سؤال مهم: كيف تبدأ تعلُّم بايثون؟
الخطوة الأولى هي تثبيت البرنامج الذي ستعمل عليه، وسأشرح لك طريقة القيام بذلك خطوة بخطوة. وبعد ذلك، سنثبت مكتبة بايثون لنتمكن من استخدامها في كتابة الأكواد.
حين الانتهاء من التثبيت، سنبدأ بأولى خطوات البرمجة باستخدام أمر print الذي يسمح لنا بعرض المعلومات على الشاشة.
وستتعلم لماذا هذا الأمر مهم؟ وكيف سيُستخدم كثيرًا فيما بعد في تطوير مشروعاتك ببايثون.
في هذه الحلقة سنركز على بعض القواعد المهمة التي يجب عليك اتباعها أثناء كتابة الأكواد في بايثون. وسأوضح لك نقطة أساسية وهي ضرورة كتابة أول حرف من أمر print بحروف صغيرة، وسنتحدث عن أهمية استخدام quotation marks عند كتابة النصوص داخل الأوامر.
وبعد ذلك سنتعرف على كيفية إضافة التعليقات داخل الكود، وهو أمر مهم جدًّا لتوضيح أفكارك أثناء البرمجة.
ثم سأشرح لك مفهوم المتغيرات (Variables)، وهو المفتاح الأساسي لتخزين البيانات داخل برامجك، وسأوضح لك كيفية تسمية مشروعاتك وحفظها بالنمط الصحيح.
وأخيرًا سنتطرق إلى أهمية كتابة التعليقات (comments) والملاحظات البسيطة داخل الكود، وسنلقي نظرة سريعة على أنواع البيانات المختلفة في بايثون.
في هذه الحلقة سنبدأ بالتعرف على أول أنواع البيانات في بايثون، وهي الأرقام الصحيحة (Integers)، وسأوضح لك كيفية حسابها باستخدام الأكواد المناسبة.
وبعد ذلك سنتناول طريقة حساب الأرقام باستخدام الأعداد العشرية (Float)، وسأبين لك كيفية كتابتها بالطريقة الصحيحة داخل الكود عند إدخالها يدويًّا.
ثم سنتطرق إلى مشكلة يواجهها كثيرون عند استخدام أمر input، فيقرأه البرنامج نصًا بدلاً من رقم؛ لهذا، وسأوضح لك كيفية تحويل القيم المدخلة من String إلى Integer، حتى تتمكن من التعامل معها بأسلوب صحيح داخل البرنامج.
في هذه الحلقة سأشرح لك طريقة أخرى للتحويل والربط بين العملية النصية والعملية الرقمية. وسنبدأ بشرح كيفية تشغيل الآلة الحاسبة على البرنامج، ثم سنتعمق في كيفية تحويل النص من string إلى integer، مع استعراض ثلاثة حلول لحل هذه المشكلة.
وبعد ذلك سنتعلم أمر if والجملة الشرطية في بايثون، وسأوضح الفرق بين الإكويل = والتو اكويلز == داخل أمر if.
ثم سنتناول فائدة أمر else، وأهمية المسافات بين الكلمات في تحديد الناتج الصحيح من الاختيارات.
في هذه الحلقة سنواصل التوسع في استخدام الآلة الحاسبة داخل بايثون. وسنبدأ بإدخال أمر float للحصول على دقة أكبر في العمليات الحسابية، ثم سنتعرف على كيفية التحكم في هذه العمليات باستخدام أمر if.
وبعد ذلك سأشرح لك طريقة إضافة عمليات جديدة للنص باستخدام if وelif، وسأوضح لك كيف يعمل أمر elif كاختصار يجمع بين if وelse معًا.
وفي نهاية الحلقة، سأعرض لك خمس عمليات حسابية مختلفة تشمل الجمع والطرح وغيرها، لتتمكن من استخدامها في مشروعاتك البرمجية.
في هذه الحلقة سنتعرف على مفهوم الدوال (function) في بايثون التي تتيح لك تجميع مجموعة من الأوامر في كود واحد لاستخدامها وقت الحاجة.
وسنبدأ باستخدام أمر float، ثم سنتعلم الطريقة الأخرى لتعريف الدوال باستخدام أمر def، مع إضافة اسم الفانكشن الذي نريد استخدامه.
وبعد ذلك سأشرح لك طبيعة أمر return function، ولماذا يجب أن يكون هذا الأمر في نهاية الجملة لضمان عمل الدالة بالطريقة الصحيحة.
في هذه الحلقة سأوضح لك كيفية مقارنة مجموعة من الأرقام المختلفة، وكيف يساعدنا أمر (if) في تحديد الرقم الأكبر بينها.
وبعد ذلك سنتعلم الطريقة الصحيحة لإدخال البيانات باستخدام شرط (if) أولًا، ثم إضافة أمر (elif) عند الحاجة إلى مزيد من الشروط، وأخيرًا استخدام (else) لمعالجة باقي الحالات.
وسأشرح لك أيضًا لماذا يجب أن تكون الشروط المدخلة صحيحة للحصول على نتائج دقيقة، وسأوضح كيفية إضافة نص يظهر مع النتيجة في النهاية عن طريق تحويل الفانكشن، ما يجعل المخرجات أكثر وضوحًا.
في هذه الحلقة سنتعرف على مفهوم "Loops"، وهي الأكواد التي تتيح لك تكرار العمليات عددًا معينًا من المرات داخل البرنامج.
وسأبدأ بحصر أنواع التكرار المختلفة، وسنركز اليوم على النوع الأول منها، وهو (for loop) الذي يسمح بتنفيذ أمر معين مرات عدة تلقائيًّا.
وبعد ذلك سأعطيك لمحة سريعة عن (list) وكيفية استخدامها لتخزين البيانات داخل الكود. ثم سأوضح كيفية استخدام (for loop) مع الأرقام، مقارنة بالطريقة الأولى التي استخدمنا فيها الحروف.
وفي النهاية سأشرح لك كيفية زيادة معدل (range) المستخدم في العمليات الرقمية للحصول على نتائج أكثر دقة ومرونة.
في هذه الحلقة سنتعرف على النوع الثاني من أوامر التكرار (loops)، وهو (while loop) الذي يعني التكرار المستمر حتى تحقق شرط معين. وسأبدأ بشرح كيفية عمله، ثم سنتنقل إلى توضيح حالاته المختلفة.
في الحالة الأولى سنكتب كلمة (while) متبوعة بالشرط والبيانات المطلوبة، ثم نعطيها أمر (print) لتنفيذ العملية.
في الحالة الثانية سأوضح لك كيفية إضافة شرطين داخل (while) باستخدام أمر (if).
أما في الحالة الثالثة فسنتعرف على مفهوم infinite loop أو التكرار اللانهائي (forever)، وسأشرح لك كيف يعمل هذا النوع من الحلقات، وأين يمكن استخدامه في البرمجة استخدامًا صحيحًا.
في هذه الحلقة سنتعرف على (dictionary) وهو معجم بيانات يُستخدم لتخزين الكلمات وما يقابلها من قيم أو مرادفات.
وسنبدأ بشرح كيفية إدخال أمر (dictionary) داخل البرنامج، مع التأكيد على ضرورة استخدام كود معين قبل كتابة (dictionary) لضمان تفعيله بطريقة صحيحة.
وبعد ذلك سأوضح الطريقة الصحيحة لإضافة العناصر (elements) إلى المعجم، وأهمية وضع الفواصل بين البيانات لضمان عمله دون أخطاء.
وفي نهاية الحلقة سنتعلم كيفية التعامل مع (key) غير مضاف مسبقًا داخل (dictionary) لإظهار نتائجه عند البحث عنه.
في هذه الحلقة سنتعلم نوعًا جديدًا من البيانات في بايثون يُسمى (set)، وهو نوع بيانات غير مرتب يختلف عن القوائم العادية. وسنبدأ بشرح كيفية ترتيب العناصر داخله لضمان إدخال البيانات بطريقة صحيحة.
وبعد ذلك سأوضح الفرق بين (set) و(list)، وأشرح لماذا لا يمكن وضع (set) داخل (list) لأنهما نوعان مختلفان من البيانات؟
ثم سنتعلم كيفية دمج مجموعتين من (set) معًا، إضافة إلى طريقة إضافة تفاصيل جديدة إلى (set) مع وضع كل عنصر على سطر مختلف.
وأخيرًا سأوضح كيفية استخدام أوامر (remove) و(discard) لحذف عناصر معينة من (set)، وسننهي الحلقة بشرح طريقة مسح جميع العناصر المخزنة داخل (set).
في هذه الحلقة سنتعلم كيفية إنشاء كود لحساب العمر وحساب الفرق بين عمرين بالأيام والساعات. وسنبدأ بشرح طريقة كتابة الكود، مع التأكيد على ضرورة إدخال معادلة صحيحة تضرب العمر في عدد الأيام للحصول على النتيجة الدقيقة، مع مراعاة عدم وضع مسافات بين الأسماء في المتغيرات.
وبعد ذلك سأشارك معك بعض الأفكار لطرق أخرى لإدخال أمر الحساب، وسأوضح كيفية إضافة جمل نصية إلى الناتج بسهولة.
وفي نهاية الحلقة سنتعرف على طريقة مختصرة لحساب العمر باستخدام كود (return)، لجعل الكود أكثر كفاءة وسهولة في الاستخدام.
في هذه الحلقة سنتعرف على نوع من البيانات المرتبة في بايثون وهو (list) الذي يُستخدم لتخزين مجموعة من البيانات داخل المتغيرات (variable).
وسنبدأ بشرح مفهوم (list) وعناصره التي تُعرف باسم (index) الذي يبدأ ترقيمه من الصفر تصاعديًا.
وبعد ذلك سنتعلم كيفية إدخال أمر (list) بالطريقة الصحيحة، وإضافة البيانات المطلوبة، مع إمكانية إدخال أكثر من قائمة داخل نفس الأمر. وسأوضح لك كيفية الوصول إلى عنصر معين داخل (list) بسهولة.
ثم سنتطرق إلى بعض العمليات الرياضية (math) التي يمكن استخدامها مع (list)، مثل الإضافة، التعديل، الدمج، ترتيب الأرقام، ومسح العناصر، وسنشرح وظيفة كل عملية منها بالتفصيل.
وأخيرًا سنتعرف على نوع بيانات آخر يشبه (list) يُسمى (tuple)، وسأوضح الفرق بينه وبين (list) حسب الشكل والاستخدام.
في هذه الحلقة سنتعلم كيفية حل مشكلة اختلاف القيم المدخلة بين (input) و(string) عند تحويلها إلى (integer)، إضافة إلى كيفية التعامل مع مشكلة (error) التي قد تحدث أثناء تنفيذ الكود.
سنبدأ بشرح كيفية استخدام كود (try-except) لمعالجة الأخطاء، مع توضيح الطريقة الصحيحة لإدخال البيانات، وأهمية كتابة (try) و(except) قبل العناصر المطلوبة لضمان عمل الكود دون مشكلات. وسنتعرف على كيفية إضافة أرقام داخل النصوص بطريقة صحيحة.
وفي نهاية الحلقة سأشرح لك نوعًا آخر من الأخطاء (error) التي قد تواجهها أثناء البرمجة، وسأوضح لك كيف يمكن حلها أيضًا باستخدام (try-except).
في هذه الحلقة سنتحدث عن العمليات الرقمية في بايثون، وسنبدأ باستعراض (function) و(numbers) و(math) المستخدمة في التعامل مع الأرقام. سنبدأ بكتابة البيانات وشرح كيفية إدخال العمليات الحسابية بطرق مختلفة وأكثر سهولة.
أول طريقة سنتعلمها هي إدخال الأرقام مباشرة في النص وإجراء عمليات الجمع والطرح وغيرها. بعد ذلك، سنتعرف على كيفية إدخال أنواع مختلفة من الأرقام باستخدام كود "type". ثم ننتقل إلى الطريقة الثانية وهي round التي تُستخدم لتقريب الأرقام العشرية.
وبعد ذلك سأوضح كيفية استدعاء مكتبة بايثون لاستخدام floor، والفرق بينها وبين round. ثم سنتعرف على ceil التي تعمل بعكس floor. وكيفية استخدام power لرفع العدد إلى قوة معينة، وسأوضح البديل عن هذه الطريقة.
وفي نهاية الحلقة سنتعرف على absolute number ومعناه، ثم سأوضح كيفية استخدام min وmax لاستخراج القيم الصغرى والكبرى في مجموعة من الأرقام.
في هذه الحلقة سنتعرف على مفهوم files ووظيفتها في بايثون، وسأبدأ بشرح كيفية التعامل مع الملفات، بدءًا من إنشائها وتسمية الملف بطريقة صحيحة.
وبعد ذلك سنتعلم بعض الأوامر الأساسية التي تتيح لنا التعديل على الملفات وإضافة بيانات جديدة إليها.
وسأوضح لك كيفية جعل البرنامج يقرأ الملفات، إضافة إلى طريقة طباعة أكثر من سطر واحد، أو طباعة جميع السطور الموجودة في الملف دفعة واحدة. وسنتعرف معًا على كيفية عرض شكل السطور كما هي باستخدام for loop.
وبعد ذلك، سنتحدث عن الفرق بين أنواع الملفات المختلفة مثل read، read+، write، write+، append، append+، وسأوضح الحروف التي تعبر عن كل نوع.
وفي نهاية الحلقة سنتعلم كيفية استخدام بعضٍ من هذه الأنواع وتوضيح وظيفتها في التعامل مع الملفات داخل بايثون.
في هذه الحلقة سنتعرف على formatting، وسنتناول مشكلة الجمع بين نوعين مختلفين من البيانات، مثل النصوص والأرقام، وسأوضح كيفية حلها باستخدام عمليات التحويل المناسبة.
ثم سأشرح لك طريقة جديدة تسهل عملية تحويل البيانات، مع تقديم بعض الطرائق المختلفة التي تساعدك على تنفيذ ذلك بسهولة. وسنبدأ بالطريقة الأولى، وهي استخدام (str) مع علامة (%) لتحويل النصوص إلى أرقام والعكس.
وبعد ذلك سأشرح الطريقة الثانية التي تعتمد على استخدام (format) مع علامة (:) قبل إدخال البيانات، ما يجعل عملية التحويل أكثر بساطة وسهولة. ثم سنتعلم كيفية تغيير مكان البيانات داخل النصوص دون أي تعقيد.
وفي نهاية الحلقة سأوضح الطريقة الأخيرة للتحويل باستخدام حرف (f) قبل التفاصيل التي تتيح تنسيق البيانات دون الحاجة إلى استخدام الأقواس، ما يجعل الكود أكثر وضوحًا وسهولة في الكتابة.
لقد وصلنا إلى الحلقة الأخيرة من رحلتنا في تعلم أساسيات بايثون!
في هذه الحلقة سأعرفك على الموديولات (modules)، وهي أدوات قوية تتيح لك استدعاء أكواد جاهزة داخل برامجك دون الحاجة إلى كتابتها من الصفر.
وسأبدأ بشرح معنى الموديولات وكيف تدعمها لغة بايثون، ثم سنتعلم كيفية استدعائها باستخدام (import)، إضافة إلى طريقة أخرى باستخدام (from) متبوعة باسم الملف (file) لاستيراد أجزاء محددة من الموديول فقط.
وسأذكّرك أيضًا ببعض الموديولات التي استخدمناها خلال هذه السلسلة، مع ذكر أمثلة عملية عليها.
وفي نهاية الحلقة سأشارك معك بعض المصادر المفيدة التي يمكنك بالاطلاع عليها التعمق أكثر في عالم بايثون.
لقد كانت رحلة ممتلئة بالتعلم والتجربة، وآمل أن تكون قد استفدت منها ووجدت طريقك إلى عالم البرمجة بثقة أكبر.
شكرًا لانضمامك إليَّ في هذه الدورة على منصة تعلَّم، وأتمنى لك مزيدًا من النجاح في رحلتك مع بايثون!
Reply to Comment