Πρώτα βήματα στην Python

Τα πρώτα βήματα στην Python τα κάνω εδώ: https://www.w3schools.com/python/default.asp

 Πολύ εύκολος τρόπος να μάθω Python αντιγράφοντας μικρές εφαρμογές από τη σελίδα των hackr και των edureka.

Πρώτα κατεβάζω στον υπολογιστή αυτό

https://www.python.org/downloads/


Μπορώ να δουλέψω και στο κινητό κατεβάζοντας το  Pydroid 3



Για αρχή διάλεξα το "Μάντεψε ένα αριθμό" (Number Guessing) από εδώ https://hackr.io/blog/python-projects

 Ανοίγω το Python IDLE (integrated development environment) και πατάω file / new file


Copy - paste τον κώδικα και πατάω Run module (F5), μπορώ και να το σώσω σε φάκελο οπότε αργότερα τον ανοίγω και για να τρέξει πατάω Run module (F5).

Ο κώδικας δε θα τρέξει γιατί βγάζει λάθος τις δύο κάθετες. Είτε θα διαγράψετε τελείως την κάθε γραμμή που ξεκινάει με δυο κάθετες, είτε θα αλλάξετε τις δύο κάθετες με το χαρακτήρα δίεση #. Σε κάθε περίπτωση διαβάζουμε εδώ https://www.w3schools.com/python/python_comments.asp τι ισχύει για τα σχόλια (comments).  Επίσης θανατηφόρο είναι αν δεν προσέξουμε τις εσοχές (indentation) για τις οποίες διαβάζουμε εδώ https://www.w3schools.com/python/python_syntax.asp

Αν τα καταφέρετε και παίξετε, βλέπετε κάτι τέτοιο



Το παιχνίδι αυτό μας έδειξε μεταξύ άλλων τρία πράγματα

import random (περισσότερα εδώ https://www.w3schools.com/python/module_random.asp)

user input

replay

Καλή διασκέδαση





Εισαγωγή στην prolog και ένα δένρο

 Η prolog είναι γλώσσα προγραμματισμού που χρησιμοποιείται στην τεχνητή νοημοσύνη και στη γλωσσολογία. Ξεκινάμε εγκαθιστώντας την SWI Prolog στο σύστημά μας και διαβάζουμε απλά παραδείγματα εδώ.

Σε ένα απλό κειμενογράφο γράφω κώδικα και σώζω το αρχείο ως ***.pl

Για το παράδειγμά μας θα χρησιμοποιήσω το παρακάτω δένδρο 

 


και θα δημιουργήσω αυτό το αρχείο: tree.pl

που μέσα του έχει αυτόν τον κώδικα

Magic 8 ball in Python on Ubuntu

Γράφουμε λίγες κατανοητές γραμμές κώδικα για να παίξουμε!

Αφού έχουμε εγκαταστήσει σωστά την Ubuntu στο σύστημά μας (εγώ έχω την έκδοση 20.04 LTS) την ανοίγουμε και βρισκόμαστε εδω: (θα αγαπήσετε το $)


Θα γράψουμε τον κώδικα σε ένα αρχείο που πρέπει να τελειώνει σε .py

Θα τρέξουμε το αρχείο ***.py σε Ubuntu.

Χρήσιμες συντομεύσεις:

mkdir (make directory) [π.χ. mkdir magic_eight_ball ]

cd (change directory)

ls (list)

περισσότερα εδώ

 

 Για την εφαρμογή θα χρειαστούμε:

1 μια εντολή τυχαίας επιλογής (random)

Ubuntu on Windows 10

 Για να τρέχω Ubuntu στον υπολογιστή μου σε Windows 10 διαβάζω και εκτελώ βήμα βήμα αυτή την υποστήριξη της Microsoft είτε αυτή της Canonical. Αμέσως μετά τρέχω σε αυτό το άρθρο να γράψω κάτι εύκολο που μπορεί να φανεί και εντυπωσιακό! (magic 8 ball)

Βάση δεδομένων στο PythonAnywhere - Mysql on PyrhonAnywhere

 

Στην πρώτη έκδοση της εφαρμογής scratchpad για να αποθηκεύονται τα σχόλια είχαμε δημιουργήσει ένα αντικείμενο (comments) μέσα στον κώδικα. Αυτό όμως «καθάριζε» κάθε φορά που αλλάζαμε τον κώδικα, δεν ήταν μόνιμο, οι εγγραφές των χρηστών χάνονταν. Τώρα πρέπει να στήσουμε μια βάση δεδομένων για αυτή τη δουλειά με το πλεονέκτημα ότι μπορούμε να τη διαχειριστούμε αργότερα όπως κάνουμε με ένα φύλλο excel!

Υπάρχουν αρκετοί τρόποι να στήσουμε βάση δεδομένων

  • SQLite, απλή και ελαφριά βάση που αποθηκεύει τα πάντα σε ένα σημείο στο δίσκο μας.
  • MySQL, τρέχει σε κάποιο server και αποθηκεύει τα πάντα εκεί με το πλεονέκτημα ότι διαφορετικά προγράμματα σε διαφορετικές μηχανές έχουν ταυτόχρονα πρόσβαση σε αυτή!
  • PostgreSQL (ή σκέτο Postgres), λειτουργεί όπως η MySQL, χειρίζεται μεγαλύτερα πακέτα και προφανώς απαιτεί περισσότερους πόρους.
  • MongoDB, νέα, μοδάτη, λειτουργεί ως server αλλά με πιο χαλαρή δομή.

IaaS, Caas, PaaS, FaaS, SaaS

Μπορούμε να απολαμβάνουμε υπηρεσίες στον ιστό χωρίς να έχουμε ιδιόκτητα μηχανήματα και δίκτυο. Για παράδειγμα το pythonanywhere είναι μια πλατφόρμα σαν υπηρεσία (PaaS - Platform as a Service) . Προσφέρει ένα έτοιμο περιβάλλον python και ο άνθρωπος (είτε αρχάριος, είτε επαγγελματίας) δεν ασχολείται καθόλου με την υποδομή (infrastructure) ούτε με τη συντήρησή της (maintenance). 

Τα τέσσερα βασικά μοντέλα φιλοξενίας (hosting models) που υπάρχουν σήμερα:



 

.
 
On premises: Σημαίνει ότι για όλα τα επίπεδα είμαστε υπεύθυνοι εμείς (γαλάζιο χρώμα). Δικοί μας hypervisors, virtual machines, operating system, κλπ

Δημιουργία λογαριασμού στο PythonAnywhere


 

Το PythonAnywhere είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE = Integrated Development Environment) και ταυτόχρονα μια υπηρεσία φιλοξενίας στον ιστό (web hosting) με βάση τη γλώσσα προγραμματισμού Python. 

Παρέχει πρόσβαση (μέσω οποιουδήποτε προγράμματος περιήγησης –browser-) σε διεπαφές (interfaces) που βασίζονται σε διακομιστή (web-server), μαζί με ένα πρόγραμμα επεξεργασίας κώδικα με βοηθό επισήμανσης σύνταξης. Τα αρχεία του προγράμματος μπορούν να μεταφερθούν από και προς την υπηρεσία χρησιμοποιώντας το αγαπημένο μας πρόγραμμα περιήγησης. Οι εφαρμογές Web που φιλοξενούνται από την υπηρεσία μπορούν να γραφτούν χρησιμοποιώντας οποιοδήποτε πλαίσιο εφαρμογής που βασίζεται σε WSGI (Web Server Gateway Interface - διάβαζε: «ουίσκι»)! 

Εφάμιλλο είναι και το Google App Engine και πολλά άλλα, όμως εδώ το εγχειρίδιο είναι για το PythonAnywhere.

5 έργα για να εξοικειωθώ με τη Linux

  Επειδή στην αρχή η Linux φαίνεται δύσχρηστη και αποκαρδιωτική, ορίστε 5 εύκολα πρότζεκτ για να εξοικειωθούμε μαζί της. Desktop Drive...