Y1. Programming in Python

Instructors: Antonis Dimakis, Spilios Spiliopoulos

Mandatory, Teaching Period A, ECTS: 6


This course serves as an introduction to the basic concepts of computer programming for students without prior programming experience. The subjects covered include: computers and computations, programs and programming, basic file management from the command line, functions, basic Python data types, expressions. Control structures and iteration, input / output, files, simple searching and sorting algorithms, algorithm design and complexity. Composite data types, strings, Python lists and dictionaries. Classes, objects and object-oriented programming.

Target Learning Outcomes

Upon successful completion of the course, students will be able to:

  • Understand fundamental concepts in computer programming, such as those of algorithm, data representation and program execution.
  • Develop simple programs according to the principles of structured programming.
  • Be familiar with basic searching, sorting and text manipulation algorithms.
  • Understand the basic programming paradigms, such as functional, procedural and object-oriented programming.
  • Know the key features of the Python programming language.


  • Υπολογισμοί και Προγραμματισμός με την Python, John V. Guttag, Εκδόσεις Κλειδάριθμος, 2015.
  • Εισαγωγή στον Προγραμματισμό με αρωγό τη γλώσσα Python, Γεώργιος Μανής, Ελληνικά Ακαδημαϊκά Ηλεκτρονικά Συγγράμματα & Βοηθήματα – Αποθετήριο «Κάλλιπος», https://repository.kallipos.gr/handle/11419/2745
  • Εισαγωγή στον Προγραμματισμό με την Python, Νικόλαος Α. Αγγελιδάκης, ηλεκτρονικό σύγγραμμα διαθέσιμο στο http://aggelid.mysch.gr/pythonbook/
  • Composing Programs, John DeNero, ηλεκτρονικό σύγγραμμα στα αγγλικά [διαθέσιμο στο http://composingprograms.com/]