Python

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Πήδηση στην πλοήγηση Πήδηση στην αναζήτηση
Το λογότυπο της Python.

Η Python είναι μια υψηλού επιπέδου γλώσσα προγραμματισμού[1][2] η οποία δημιουργήθηκε από τον Ολλανδό Γκίντο βαν Ρόσσουμ (Guido van Rossum) το 1990. Ο κύριος στόχος της είναι η αναγνωσιμότητα του κώδικά της και η ευκολία χρήσης της και το συντακτικό της επιτρέπει στους προγραμματιστές να εκφράσουν έννοιες σε λιγότερες γραμμές κώδικα απ'ότι θα ήταν δυνατόν σε γλώσσες όπως η C++ ή η Java.[3][4] Διακρίνεται λόγω του ότι έχει πολλές βιβλιοθήκες που διευκολύνουν ιδιαίτερα αρκετές συνηθισμένες εργασίες και για την ταχύτητα εκμάθησης της.

Οι διερμηνευτές της Python είναι διαθέσιμοι για εγκατάσταση σε πολλά λειτουργικά συστήματα, επιτρέποντας στην Python την εκτέλεση κώδικα σε ευρεία γκάμα συστημάτων. Χρησιμοποιώντας εργαλεία τρίτων, όπως το Py2exe ή το Pyinstaller,[5] ο κώδικας της Python μπορεί να πακεταριστεί σε αυτόνομα εκτελέσιμα προγράμματα για μερικά από τα πιο δημοφιλή λειτουργικά συστήματα, επιτρέποντας τη διανομή του βασισμένου σε Python λογισμικού για χρήση σε αυτά τα περιβάλλοντα χωρίς να απαιτείται εγκατάσταση του διερμηνευτή της Python.

Η Python αναπτύσσεται ως ανοιχτό λογισμικό (open source) και η διαχείρισή της γίνεται από τον μη κερδοσκοπικό οργανισμό Python Software Foundation. Ο κώδικας διανέμεται με την άδεια Python Software Foundation License η οποία είναι συμβατή με την GPL. Το όνομα της γλώσσας προέρχεται από την ομάδα άγγλων κωμικών Μόντυ Πάιθον.

Ιστορικό[Επεξεργασία | επεξεργασία κώδικα]

Python 3. The standard type hierarchy.png

Αρχικά, η Python ήταν γλώσσα σεναρίων που χρησιμοποιούνταν στο λειτουργικό σύστημα Amoeba, ικανή και για κλήσεις συστήματος.

Η Python 2.0 κυκλοφόρησε στις 16 Οκτωβρίου του 2000. Στις 3 Δεκεμβρίου 2008 κυκλοφόρησε η έκδοση 3.0 (γνωστή και ως py3k ή python 3000). Πολλά από τα καινούργια χαρακτηριστικά αυτής της έκδοσης έχουν μεταφερθεί στις εκδόσεις 2.6 και 2.7 που είναι προς τα πίσω συμβατές.

Η Python 3.0 είναι ιστορικά η πρώτη γλώσσα προγραμματισμού που σπάει την προς τα πίσω συμβατότητα με προηγούμενες εκδόσεις ώστε να διορθωθούν κάποια λάθη που υπήρχαν σε προγενέστερες εκδόσεις και να καταστεί ακόμα πιο σαφής ο απλός τρόπος με τον οποίο μπορούν να γίνουν κάποια πράγματα.

IDLE[Επεξεργασία | επεξεργασία κώδικα]

Για τη συγγραφή προγραμμάτων είναι απαραίτητος ένας κειμενογράφος ή ακόμα καλύτερα ένα ολοκληρωμένο περιβάλλον ανάπτυξης (Integrated Development Environment - IDE), το οποίο είναι ένα ειδικό λογισμικό για την ανάπτυξη εφαρμογών. Η Python έρχεται μαζί με ένα εύχρηστο περιβάλλον ανάπτυξης με την ονομασία ΙDLE[6]. Τα αρχικά του έρχονται από τις λέξεις Interactive DeveLopment Environment και είναι γραμμένο σε Python από τον Guido van Rossum. Χρησιμοποιεί τη βιβλιοθήκη γραφικών Tkinter, οπότε μπορεί να εκτελεσθεί σε περιβάλλον Linux, Windows και Mac OS X. Το IDLE μας δίνει τη δυνατότητα να χρησιμοποιήσουμε διαδραστικά τον διερμηνευτή της γλώσσας, να γράψουμε και να επεξεργαστούμε προγράμματα, να τα αποθηκεύσουμε σε αρχεία, να τα εκτελέσουμε, να κάνουμε αποσφαλμάτωση.

Δομή και σύνταξη[Επεξεργασία | επεξεργασία κώδικα]

Η γλώσσα χρησιμοποιεί μεταγλωττιστή (compiler) για την δημιουργία του εκτελέσιμου κώδικα και σχετίζεται με τις γλώσσες προγραμματισμού Tcl, Perl, Scheme, Java και Ruby, καθώς και με την ABC η οποία υπήρξε η αρχική πηγή έμπνευσης για τη δημιουργία της.

Ένα από τα πιο απλά προγράμματα στην γλώσσα Python είναι η εμφάνιση ενός γραπτού αποτελέσματος (π.χ. Γεια σου, κόσμε!):

>>> print("Γεια σου, κόσμε!")
Γεια σου, κόσμε!

Ένα ιδιαίτερο χαρακτηριστικό της γλώσσας είναι η χρήση κενών διαστημάτων (whitespace) για τον διαχωρισμό των συντακτικών δομών που προγράμματος, σε αντίθεση με την πρακτική σε άλλες γλώσσες όπου για τον ίδιο σκοπό χρησιμοποιούνται ειδικά σύμβολα (πχ αγκύλες). Αυτό, σε συνδυασμό με το ότι χρησιμοποιεί πλήρεις αγγλικές λέξεις στη θέση συμβόλων, καθιστούν τον κώδικα της Python ευανάγνωστο από όσους έχουν βασική γνώση των αγγλικών.

age = 21
if age >= 18:
    print("You vote")
else:
    print("You don't vote")

Για παράδειγμα, ο παρακάτω γεννήτορας (generator) generate_primes παράγει πρώτους αριθμούς:

from itertools import count
def generate_primes(stop_at=None):
  primes = []
  for n in count(2):
    if stop_at is not None and n > stop_at:
      return
    composite = False
    for p in primes:
      if not n % p:
        composite = True
        break
      elif p**2 > n: 
        break
    if not composite:
      primes.append(n)
      yield n

Και για να καλέσουμε τη συνάρτηση, υπολογίζοντας τους πρώτους αριθμούς από το 1 στο 100:

for i in generate_primes(): 
  if i > 100: break
  print(i)

Πηγές για διδασκαλία της Python[Επεξεργασία | επεξεργασία κώδικα]

H Python ενδείκνυται ως γλώσσα εισαγωγική στον προγραμματισμό και στην επιστήμη των υπολογιστών γενικότερα, με δεδομένη την απλότητα στη σύνταξή της. Διεθνώς πολλά πανεπιστημία αλλά και η δευτεροβάθμια εκπαίδευση σε πολλές χώρες, υιοθετούν μια python first προσέγγιση εισαγωγής στον προγραμματισμό. Στη δευτεροβάθμια εκπαίδευση της χώρας μας το πρώτο βήμα έγινε με τα Επαγγελματικά Λύκεια στα οποία έχει εισαχθεί στο σχετικό μάθημα (πηγή: Αράπογλου, κ.α.2017). Η Python χρησιμοποιείται επίσης ως εργαλείο για εισαγωγή σε βασικές έννοιες των υπολογιστών, (βλέπε για παράδειγμα: Avouris et al. 2017[7]), ενώ η Python έχει με επιτυχία υποστηρίξει οικοδομιστικές προσεγγίσεις στη μάθηση, σε επί μέρους αντικείμενα, όπως σε media studies (βλέπε Guzdial, 2004). Άλλες προτεινόμενες προσεγγίσεις είναι η χρήση της Python για διαχείριση δεδομένων, για μελέτες σε ανθρωπιστικές σπουδές, για γεωγραφικά συστήματα πληροφοριών, κλπ.

Υπάρχει διαθέσιμο πλούσιο υλικό και στην Ελληνική γλώσσα, πέραν της διεθνούς βιβλιογραφίας και πηγών. Για παράδειγμα σε ιστοσελίδες διαδικτυακών μαθημάτων mathesis.cup.gr και courcity gr υπάρχουν διαδικτυακά μαθήματα εισαγωγής στον προγραμματισμό με την Python το περιχόμενο των οποίων διατίθεται ελεύθερα. Επίσης και προηγμένα θέματα προγραμματισμού με την Python έχει δημιουργηθεί διαδικτυακό μάθημα στην πλατφόρμα mathesis.cup.gr.

Επίσης οργανώνονται από σύμπραξη Ελληνικών Πανεπιστημίων και την υποστήριξη της ΕΛΛΑΚ θερινά σχολεία στην Python.

Παραπομπές[Επεξεργασία | επεξεργασία κώδικα]

  1. «Programming Language Trends - O'Reilly Radar». Radar.oreilly.com. 2 August 2006. Ανακτήθηκε στις 17 July 2013. 
  2. «The RedMonk Programming Language Rankings: January 2013 – tecosystems». Redmonk.com. 28 February 2013. Ανακτήθηκε στις 17 July 2013. 
  3. Summerfield, Mark. Rapid GUI Programming with Python and Qt. «Python is a very expressive language, which means that we can usually write far fewer lines of Python code than would be required for an equivalent application written in, say, C++ or Java» 
  4. McConnell, Steve (30 November 2009). Code Complete, p. 100. ISBN 9780735636972. http://books.google.com/books?id=3JfE7TGUwvgC&pg=PT100. 
  5. «PyInstaller Home Page». Ανακτήθηκε στις 27 January 2014. 
  6. «IDLE (Python)» (στα αγγλικά). Wikipedia, the free encyclopedia. 2016-04-13. https://en.wikipedia.org/w/index.php?title=IDLE_(Python)&oldid=715041940. 
  7. Avouris, Nikolaos; Sgarbas, Kyriakos; Paliouras, Vassilis; Koukias, Michalis (2017-04). «Work in progress: An introduction to computing course using a Python-based experiential approach». 2017 IEEE Global Engineering Education Conference (EDUCON) (IEEE). doi:10.1109/educon.2017.7943071. ISBN 9781509054671. http://dx.doi.org/10.1109/educon.2017.7943071. 

Βιβλία[Επεξεργασία | επεξεργασία κώδικα]

  • Αβούρης Ν., Μ. Κουκιάς, Β. Παλιουράς, Κ. Σγάρμπας, "PYTHON Εισαγωγή στους υπολογιστές"[1]. 3η αναθεωρημένη έκδοση, Πανεπιστημιακές Εκδόσεις Κρήτης, 2016.
  • Αγγελιδάκης, Ν. "Εισαγωγή στον προγραμματισμό με την Python", Ηράκλειο 2015. (διαθέσιμο διαδικτυακά)
  • Αράπογλου Α.,Βραχνός Ε.,Λέκκα Δ.,Κανίδης Ε.,Μακρυγιάννης Π., Μπελεσιώτης Β., Τζήμας Δ., Παπαδάκης Σπ., "Προγραμματισμός Υπολογιστών Γ΄ Τάξη ΕΠΑ.Λ.", Διδακτικό Υλικό, Εκδόσεις Διόφαντος, 2017. [1]
  • Καρολίδης Δ., "Μαθαίνετε εύκολα Python", 2η έκδοση, Εκδόσεις Άβακας, 2018.
  • J. Guttag, "Υπολογισμοί και προγραμματισμός με την Python", Εκδόσεις Κλειδάριθμος, 2015.
  • T. Gaddis, "Ξεκινώντας με την Python", Εκδόσεις DaVinci, 2015.
  • Guzdial, M. (2004). Introduction to media computation: A multimedia cookbook in Python. Pearson/Custom Pub.

Δείτε επίσης[Επεξεργασία | επεξεργασία κώδικα]

Εξωτερικοί σύνδεσμοι[Επεξεργασία | επεξεργασία κώδικα]


  1. «PYTHON». Πανεπιστημιακές Εκδόσεις Κρήτης. 2016-10-01. https://www.cup.gr/book/python/. Ανακτήθηκε στις 2018-07-06.