# Αρχές Γλωσσών Προγραμματισμού (εργαστήριο 4)
### 24/3/2021 (προσοχή, Τετάρτη 12:00 - 14:00 αντί για Πέμπτη)
:::danger
Η συγκεκριμένη σελίδα μπορεί να χρησιμοποιηθεί για ερωτήσεις στην ώρα του μαθήματος.
:::
## Πρόγραμμα μαθήματος
| Ώρα | Θέμα |
| --- | ---- |
|10:00-10:30| Χειρισμός αρχείων CSV και Excel [14-csv.ipynb](https://github.com/chgogos/dituoi_agp/blob/main/pl/python/notebooks/14-csv.ipynb), [15-excel.ipynb](https://github.com/chgogos/dituoi_agp/blob/main/pl/python/notebooks/15-excel.ipynb) |
|10:30-11:00| [Άσκηση 1](#Άσκηση-1) |
|11:00-11:10| Διάλειμμα |
|11:10-11:40| Χειρισμός αρχείων XML, JSON, YAML [16-xml.ipynb](https://github.com/chgogos/dituoi_agp/blob/main/pl/python/notebooks/16-xml.ipynb), [17-json.ipynb](https://github.com/chgogos/dituoi_agp/blob/main/pl/python/notebooks/17-json.ipynb), [18-yaml.ipynb](https://github.com/chgogos/dituoi_agp/blob/main/pl/python/notebooks/18-yaml.ipynb)|
|11:40-12:00| [Άσκηση 2](#Άσκηση-2) |
### Άσκηση 1
Κατεβάστε το MovieLens 100K Dataset [ml-100k.zip](https://grouplens.org/datasets/movielens/100k/).
Εντοπίστε το αρχείο u.data που περιέχει 100000 αξιολογήσεις από 943 χρήστες για 1682 ταινίες.
Εντοπίστε το αρχείο u.item που περιέχει στοιχεία 1682 ταινιών.
Hint: Δείτε το αρχείο README στο ml-100k.zip για περιγραφή των περιεχομένων των αρχείων.
* Εντοπίστε τις 10 ταινίες με τις καλύτερες αξιολογήσεις κατά μέσο όρο λαμβάνοντας υπόψη μόνο ταινίες που έχουν λάβει τουλάχιστον 50 αξιολογήσεις η κάθε μια. Εμφανίστε τους τίτλους αυτών των ταινιών.
### Άσκηση 2
Κατεβάστε το ακόλουθο XML αρχείο που περιέχει το πρόγραμμα αγώνων ενός πρωταθλήματος.
[ITC2021_Test8_SolGenMethodA.xml](https://www.sportscheduling.ugent.be/RobinX/Repository/ITC2021/Solutions/ITC2021_Test8_SolGenMethodA.xml)
Για κάθε αγώνα εμφανίστε την απόσταση ανάμεσα στον αγώνα και στον επαναληπτικό του. Για παράδειγμα για τις ομάδες 0 και 1 ο αγώνας 0-1 γίνεται στην περίοδο 33 και ο επαναληπτικός αγώνας 1-0 γίνεται στην περίοδο 14, άρα η απόσταση των δύο αγώνων είναι 33-14=19 αγωνιστικές.
Προαιρετικά: μετατρέψτε το XML αρχείο σε JSON και σε YAML.
* [XML to JSON](https://jsonformatter.org/xml-to-json).
* [XML to YAML](https://jsonformatter.org/xml-to-yaml).
Λύστε την άσκηση 2 ξανά διαβάζοντας τα δεδομένα α) από το αρχείο JSON και β) από το αρχείο YAML.
## Ερωτήσεις και απαντήσεις
- Με αυτό τον τρόπο κάνουμε ερωτήσεις;
- Ναι, και αυτό είναι μια απάντηση
---
:::info
*Πάντα, κάνετε ερωτήσεις στο κάτω μέρος του εγγράφου, ακριβώς πάνω από εδώ
:::