Εισαγωγή
Αυτό το μάθημα αποτελεί μια εξαιρετική ευκαιρία για να μάθεις τη γλώσσα που χρησιμοποιούν οι επαγγελματίες προγραμματιστές. Μέσα από την εκμάθηση της γλώσσας προγραμματισμού Python, οι μαθητές εξοικειώνονται με την ορολογία που χρησιμοποιείται συχνά στον χώρο της πληροφορικής, μαθαίνουν να γράφουν τον δικό τους κώδικα και δημιουργούν τα δικά τους προγράμματα και παιχνίδια χρησιμοποιώντας τη βιβλιοθήκη Pygame. Κατά την διάρκεια του προγράμματος, θα χρησιμοποιήσουμε διάφορα εργαλεία τεχνητής νοημοσύνης (ΑΙ), τα οποία θα μας βοηθήσουν στην εξοικείωση των πιο σύγχρονων τεχνολογιών.
Πρόγραμμα μαθήματος
1Lesson 1. Introduction to Python
In this lesson we’ll create our first program in Python and get to know the Visual
Studio Code IDE (Integrated Development Environment).
2Lesson 2. Variables and mathematical operations part 1
In this lesson we’ll learn basic data types (int, float, bool, string) and the term
variable. We’ll also learn the most commonly used mathematical and logical
operators.
3Lesson 3. Variables and mathematical operations part 2
In this lesson we’ll get to know basic mathematical operations on variables and
built-in Python maths functions.
4Lesson 4. Relational and logical operators, boolean data type
In this lesson we’ll dive into the world of relational and logical operations:
>, >=, <, <=, ==, !=, ‘and’, ‘or’, ‘not’.
5Lesson 5. Conditional statements pt. 1
In this lesson we’ll learn what conditional statements are and how to use them.
6Lesson 6. Conditional statements pt. 2
In this lesson we’ll reinforce our knowledge about conditional statements and use
them in different exercises.
7Lesson 7. Loops pt. 1
In this lesson we’ll introduce loops. We’ll get to know the "while" loop and its use cases based on examples.
8Lesson 8. Loops pt. 2
In this lesson we’ll deepen our knowledge about loops. We’ll learn the "for" loop. We’ll find out how to choose a proper loop for a given task and how to nest loops.
9Lesson 9. Lists
In this lesson we’ll learn Python Lists and deepen our knowledge about strings.
10Lesson 10. Functions pt. 1
In this lesson we’ll learn functions.
11Lesson 11. Functions pt. 2
In this lesson we’ll reinforce our knowledge about functions and add some new
interesting information.
12 Lesson 12. Introduction to pygame
In this lesson we’ll learn the pygame module and create our first application with
graphics.
13Lesson 13. Pygame advanced
In this lesson we’ll introduce advanced features of the pygame module and create a
graphical application.
14Lesson 14. Revision
In this lesson we’ll revise our knowledge gained over this course.
15Lesson 15. Introduction to object-oriented programming (classes, objects)
In this lesson, you will learn what classes and objects are, and in what cases it is worth
using them in programming. We will learn how to create your own objects, their
functions and variables.
16 Lesson 16. Constructor
The purpose of this lesson is to discuss the constructor in the classes and to explain the
difference between the variable associated with the object and the class.
17Lesson 17. Inheritance
In this lesson, you will learn how to inherit classes and how to use them.
18Lesson 18. Repetition of object-oriented programming
We will create a simple RPG text game, where by using classes we will add to it opponents with unique abilities.
19Lesson 19. Character Creator part 1
The aim of the project will be to write a mini game using the Pygame library where the
player will be able to create his own character from various smaller elements, such as
the appearance of the face, hairstyle or equipment.
20Lesson 20. Character Creator part 2
The classes are a continuation of the topic carried out in the previous lesson.
21Lesson 21. Snake game part 1
The aim of the lesson will be to recreate the cult game Snake. In this project, we will use
class knowledge to create a snake game using the Pygame library.
22Lesson 22. Snake game part 2
The classes are a continuation of the topic carried out in the previous lesson.
23Lesson 23. Snake game part 3
The class is a continuation of the topic carried out in the previous lesson.
24Lesson 24. Dictionaries and JSON
The aim of the class is to learn about dictionaries. In addition, methods that can be
used when working with dictionaries will be presented. The .json file format will also
be presented, and how to switch from dictionary to json and vice versa.
25Lesson 25. List methods
The aim of the course is to reiterate the issues concerning lists, and to learn methods
to modify them.
26Lesson 26. Other data structures
The aim of the class was to learn about tuple and set structures and to present the
similarities and differences between the learned data structures (dictionaries, lists,
sets, tuples).
27Lesson 27. List comprehensions and exception handling
In this class, participants will be introduced to the issue of comprehensions lists. The
concept of exceptions will also be explained and how they are handled will be
presented.
28Lesson 28. Travel agency offer - generating pdf
The aim of the course is to familiarise participants with the concept of virtual
environments and to learn how to generate .pdf files using the fpdf2 library.
29Lesson 29. Numeric python - numpy library
The aim of the class is to familiarise students with the basic library for numerical
calculations - numpy.
30Lesson 30. Image processing
The aim of this course is to introduce students to image processing and to familiarize
them with the most popular libraries used in this process.
31Lesson 31. Regex - regular expressions
The class will introduce the topic of regular expressions and the re library.
32Lesson 32. Travelinator - intelligent travel assistant part 1
In this class, students will learn about REST APIs, and using the free APIs to create
an intelligent travel assistant.
33Lesson 33. Travelinator - intelligent travel assistant part 2
In this class we will complete the creation of Travelinator and modify its form into an
interactive chatbot.
34Lesson 34. Pokedex
During the class, students will be introduced to the concept of web scraping and will
prepare a pdf file containing a pokedex of pokemons from the Kanto region. They will
use the data available on the Pokelife website for this purpose.
35Lesson 35. Python Pulp function
The goal of the lesson is to familiarize students with selected advanced programming
topics in Python. The knowledge gained will be useful both in the implementation of
their own projects, during recruitment interviews, and during the performance of
competition tasks.
36Lesson 36. Introduction to Artificial intelligence
In class, we will introduce students to the specialization they have the
opportunity to go after the current course.
