- Week 1: Εισαγωγή στη python, γιατί python; anaconda installation, περιβάλλον ανάπτυξης jupyter, markdown, social coding, primitive data types and operations, strings, boolean logic, slicing
- Week 2: Lists, tuples, for, while, if_then_else, continue, break. Whitespaces for indentation
- Week 3: List comprehensions
- Week 4: functions, variable scope, map/reduce, functional programming, recursive functions
- Week 5: Dictionaries, complex data types, dictionary comprehensions, sets, set comprehensions
- Week 6: Sorting, Counting, Filtering, lambda functions, generators, generator comprehensions
- Week 7: Working with files, JSON, data serialization
- Week 8: Regular expressions, Exceptions
- Week 9: Import, unpacking variables, the “is” operator, ternary operator, default dictionaries
- Week 10: numpy
- Week 11: Data visualization, interactive plots, matplotlib, bokeh, seaborn
- Week 12: pandas with real data examples from GWAS catalogue
- Week 13: Object Oriented Programming: Classes, Inheritance, Initializers, member functions, static/class functions.
- Practical Python Programming from David Beazley
- Beginner's Python Cheat Sheets
- Non-beginner's python cheat sheet
- NumPy
- The official Python Tutorial
- Automate the Boring Stuff with Python Practical programming for total beginners. Written by Al Sweigart. Free to read under a Creative Commons license.
- A beginner's python tutorial
- EbookFoundation free-programming-books on python
- Jupyter notebooks for teaching/learning Python 3
- A Python course that takes beginners seriously
- Python Computing for Data Science
- Γιατί jupyter; https://www.nature.com/articles/d41586-018-07196-1
- pythoncheatsheet . Πολύ καλό και "συμπαγές" σημείο αναφοράς. Χρήσιμο όταν έχεις ξεχάσει πως γίνεται κάτι.
- 28 Jupyter Notebook tips, tricks and shortcuts - Dataquest. From Thimo. Thanks!
- Scipy
- Paper στο Nature για το scipy published: 3 February 2020
- scipy lectures
- Challenges: https://www.hackerrank.com/dashboard
- Scientific Python Cheatsheet
- Matplotlib Cheatsheet
- Pandas:
- Θα δωθούν 5 σειρές ασκήσεων, μία κάθε 2 εβδομάδες περίπου. Η κάθε σειρά μετράει στο 20% του βαθμού. Δηλαδή θα δοθούν 100 ασκήσεις, η κάθε άσκηση μετράει στο 1% του βαθμού.
- 12 Οκτωβρίου 2020 . Σημειώσεις σε jupyter notebook, html, pdf. Επίσης οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 20 Οκτωβρίου 2020 . Σημειώσεις σε jupyter notebook, html, pdf. Επίσης οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 26 Οκτωβρίου 2020 . Σημειώσεις σε jupyter notebook, html, pdf. Επίσης οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 2 Νοεμβρίου 2020 . Οι Σημειώσεις είναι ίδιες με του προηγούμενου μαθήματος. Οι πρόχειρες σημειώσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 9 Νοεμβρίου 2020 . Σημειώσεις σε jupyter notebook, html, pdf. Επίσης οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 16 Νοεμβρίου 2020. Σημειώσεις σε jupyter notebook, html, pdf. Επίσης οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 23 Νοεμβρίου 2020. Σε αυτό το μάθημα λύσαμε κάποιες από τις ασκήσεις της 2ης σειράς τους 2019. Οι λύσεις βρίσκονται εδώ σε jupyter notebook, html, pdf
- 30 Νοεμβρίου 2020. Διαβάζουμε:
- Άνοιγμα, διαβασμα και σώσιμο αρχείων: jupyter notebook, html, pdf
- Import & Regular Expressions : jupyter notebook, html, pdf
- οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 7 Δεκεμβρίου 2020. Διαβάζουμε:
- Exceptions jupyter notebook, html, pdf
- Generators jupyter notebook, html, pdf
- Προσοχή! Δεν είπαμε τα generator comprehensions! Θα τα πούμε την επόμενη φορά
- Numpy jupyter notebook, html, pdf
- οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 14 Δεκεμβρίου 2020/. Διαβάζουμε:
- Γραφικές παραστάσεις jupyter notebook, html, pdf
- pandas jupyter notebook, html, pdf
- οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 11 Ιανουαρίου 2021 . Διαβάζουμε:
- Classes : jupyter notebook, html, pdf
- Serialization (JSON): jupyter notebook, html, pdf
- API : jupyter notebook, html, pdf
- οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
- 18 Ιανουαρίου 2021. Διαβάζουμε:
- Hypothesis Testing: jupyter notebook, html, pdf
- BioPython: jupyter notebook, html, pdf
- Decorators : https://realpython.com/primer-on-python-decorators/ (+ παράδειγμα στις πρόχειρες σημειώσεις)
- Interactive Plots with:
- οι πρόχειρες σημείωσεις του μαθήματος βρίσκονται σε jupyter notebook, html, pdf
Κάθε σειρά ασκήσεων έχει 20 ερωτήσεις/ασκήσεις. Για κάθε μία παίρνετε βαθμό: από 1 μέχρι 10. Όλες οι ερωτήσεις/ασκήσεις θεωρούνται ισοδύναμες.
- Η άσκηση βγάζει λάθος αποτέλεσμα και κάποια ψήγματα υλοποίησης έχουν γίνει.
- Η άσκηση βγάζει λάθος αποτέλεσμα αλλά έχει υλοποιηθεί ένα μικρό κομμάτι της λύσης.
- Η άσκηση βγάζει λάθος αποτέλεσμα αλλά έχει υλοποιηθεί ένα σημαντικό κομμάτι της λύσης.
- Η άσκηση βγάζει λάθος αποτελέσματα λόγω πολύ σημαντικών λαθών στη λογική.
- Η άσκηση βγάζει λάθος αποτέλεσμα λογω λαθών στη λογική
- Η άσκηση βγάζει λάθος αποτέλεσμα λόγω μικρών λαθών στη λογική.
- H άσκηση βγάζει σωστό αποτέλεσμα, αλλά όχι για όλα τα πιθανά σενάρια/inputs.
- Η άσκηση βγάζει σωστό αποτέλεσμα, αλλά η λογική σας έχει κάποιο λάθος (συμβαίνει πολλές φορές..).
- Η άσκηση βγάζει σωστό αποτέλεσμα, αλλά υπάρχει μία προφανής πιο γρήγορη/σύντομη λύση.
- Η άσκηση είναι αλάνθαστη. Μπράβο!
Οι ασκήσεις μπορούν να παραδοθούν στέλνοντας τις λύσεις με email στο kantale@ics.forth.gr με έναν από τους παρακάτω τρόπους:
- Στείλτε ένα .ipynb (jupyter notebook) αρχείο ως attachment με τις λύσεις.
- Στείλτε ένα .py (python) αρχείο ως attachment με τις λύσεις.
- Στείλτε ένα link στο gist με το jupyter notebook με τις λύσεις.
- Στείλτε ένα link στο gist με τον python κώδικα με τις λύσεις.
Σε κάθε περίπτωση βάζετε σε σχόλια (ή σε markdown) τον αριθμό της άσκησης που λύνετε
- ΠΡΟΣΟΧΗ! Πριν κάνετε κάποια άσκηση (και πριν τη παραδόσετε), διαβάστε λίγο αυτή τη λίστα με κοινά λάθη που κάνουν οι νέοι προγραμματιστές κυρίως στη python.
- Επίσης καλό θα ήταν να ρίξετε μια ματιά στις λύσεις των ασκήσεων 2018, σειρά 1η, 2η, 3η και 4η και στις λύσεις των ασκήσεων 2019
- Σειρά ασκήσεων 1. Ημερομηνία παράδοσης: 9 Νοεμβρίου 2020, 23:59.
- Σειρά ασκήσεων 2. Ημερομηνία παράδοσης: 23 Νοεμβρίου 2020, 23:59.
- Σειρά ασκήσεων 3. Ημερομηνία παράδοσης: 14 Δεκεμβρίου 2020, 23:59
- Σειρά ασκήσεων 4. Ημερομηνία παράδοσης: 31 Δεκεμβρίου 2020, 23:59 (!)
- Σειρά ασκήσεων 5. Ημερομηνία παράδοσης: 28 Φεβρουαρίου 2021