From 269bc25b6a13f7a433354a5646a9a29a5111147c Mon Sep 17 00:00:00 2001 From: skpanagiotis Date: Wed, 25 Sep 2024 16:25:56 +0300 Subject: [PATCH 01/10] Add (WIP) translation for tutorial/controlflow --- tutorial/controlflow.po | 458 +++++++++++++++++++++++++++++++++++----- 1 file changed, 400 insertions(+), 58 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 73668d08..fe137653 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -10,31 +10,35 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-03-14 12:51+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Panagiotis Skias \n" +"Language-Team: PyGreece \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: tutorial/controlflow.rst:5 msgid "More Control Flow Tools" -msgstr "" +msgstr "Περισσότερα εργαλεία Ελέγχου Ροής" #: tutorial/controlflow.rst:7 msgid "" "As well as the :keyword:`while` statement just introduced, Python uses a few " "more that we will encounter in this chapter." msgstr "" +"Εκτός από τη πρόταση :keyword:`while` που μόλις εισήχθη, η Python χρησιμοποιεί μερικές ακόμη " +"που θα συναντήσουμε σε αυτό το κεφάλαιο." + #: tutorial/controlflow.rst:14 msgid ":keyword:`!if` Statements" -msgstr "" +msgstr "Προτάσεις :keyword:`!if`" #: tutorial/controlflow.rst:16 msgid "" "Perhaps the most well-known statement type is the :keyword:`if` statement. " "For example::" msgstr "" +"Ίσως ο πιο γνωστός τύπος δήλωσης είναι η πρόταση :keyword:`if`. Για παράδειγμα::" #: tutorial/controlflow.rst:33 msgid "" @@ -44,6 +48,11 @@ msgid "" "keyword:`!elif` ... :keyword:`!elif` ... sequence is a substitute for the " "``switch`` or ``case`` statements found in other languages." msgstr "" +"Μπορεί να υπάρχουν μηδέν ή περισσότερα μέρη :keyword:`elif` και το τμήμα " +":keyword:`else` είναι προαιρετικό. To keyword ':keyword:`!elif`' είναι συντομογραφία του " +"'else if', και είναι χρήσιμη για να αποφύγετε την υπερβολίκή εσοχή. Μια ακολουθία " +"keyword:`!if` ... :keyword:`!elif` ... :keyword:`!elif` ... είναι υποκατάστατο των δηλώσεων " +"``switch`` ή ``case`` που βρέθηκαν σε άλλες γλώσσες." #: tutorial/controlflow.rst:39 msgid "" @@ -51,10 +60,13 @@ msgid "" "specific types or attributes, you may also find the :keyword:`!match` " "statement useful. For more details see :ref:`tut-match`." msgstr "" +"Εάν συγκρίνετε την ίδια τιμή με πολλές σταθερές ή ελέγχετε για συγκεκριμένους τύπους ή χαρακτηριστικά, " +"μπορεί επίσης να βρείτε χρήσιμη τη δήλωση :keyword:`!match` " +"Για περισσότερες λεπτομέρειες, ανατρέξτε στο :ref:`tut-match`." #: tutorial/controlflow.rst:46 msgid ":keyword:`!for` Statements" -msgstr "" +msgstr "Προτάσεις :keyword:`!for`" #: tutorial/controlflow.rst:51 msgid "" @@ -66,6 +78,11 @@ msgid "" "a string), in the order that they appear in the sequence. For example (no " "pun intended):" msgstr "" +"Η δήλωση :keyword:`for` στην Python διαφέρει λίγο από αυτό που μπορεί να έχετε συνηθίσει " +"στη C ή στην Pascal. Αντί να επαναλαμβάνετε πάντα μια αριθμητική πρόοδο αριθμών (όπως στη " +"Pascal) ή να δίνετε στον χρήστη τη δυνατότητα να ορίσει τόσο το βήμα επανάληψης όσο και τη συνθήκη διακοπής " +"(όπως C),η δήλωση της Python :keyword:`!for` επαναλαμβάνεται πάνω από τα στοιχεία οποιασδήπτοε ακολουθίας " +"(λίστας ή συμβολοσειράς), με τη σειρά που εμφανίζονται στην ακολουθία. Για παράδειγμα (χωρίς λογοπαίγνιο)::" #: tutorial/controlflow.rst:72 msgid "" @@ -73,16 +90,21 @@ msgid "" "can be tricky to get right. Instead, it is usually more straight-forward to " "loop over a copy of the collection or to create a new collection::" msgstr "" +"Ο κώδικας που τροποποιεί μια συλλογή ενώ επαναλαμβάνεται πάνω από την ίδια συλλογή μπορεί να είναι δύσκολος " +"για να γίνει σωστός. Αντίθετα, είναι συνήθως πιο απλό να κάνετε loop πάνω από ένα αντίγραφο συλλογής ή να " +"δημιουργήσετε μια νέα συλλογή::" #: tutorial/controlflow.rst:94 msgid "The :func:`range` Function" -msgstr "" +msgstr "Η συνάρτηση :func:`range`" #: tutorial/controlflow.rst:96 msgid "" "If you do need to iterate over a sequence of numbers, the built-in function :" "func:`range` comes in handy. It generates arithmetic progressions::" msgstr "" +"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη συνάρτηση " +":func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές προόδους::" #: tutorial/controlflow.rst:108 msgid "" @@ -91,22 +113,30 @@ msgid "" "10. It is possible to let the range start at another number, or to specify " "a different increment (even negative; sometimes this is called the 'step')::" msgstr "" +"Το δεδομένο τελικό σημείο δεν αποτελεί ποτέ μέρος της παραγόμενης ακολουθίας· το " +"``range(10)`` δημιουργεί 10 τιμές, τους δείκτες για στοιχεία μιας ακολοθίας μήκους 10. " +"Είναι δυνατόν να αφήσουμε το εύρος να ξεκινά από άλλο αριθμό ή για να καθορίσετε μια διαφορετική " +"προσαύξηση (ακόμη και αρνητική, μερικές φορές αυτό ονομάζεται 'βήμα')::" #: tutorial/controlflow.rst:122 msgid "" "To iterate over the indices of a sequence, you can combine :func:`range` " "and :func:`len` as follows::" msgstr "" +"Για να γίνουν iterrate οι δείκτες μια ακολουθίας, μπορείτε να συνδυάσετε τις :func:`range` " +"και :func:`len` ως εξής::" #: tutorial/controlflow.rst:135 msgid "" "In most such cases, however, it is convenient to use the :func:`enumerate` " "function, see :ref:`tut-loopidioms`." msgstr "" +"Στις περισσότερες τέτοιες περιπτώσεις, ωστόσο, είναι βολικό να χρησιμοποιήσετε τη συνάρτηση " +":func:`enumerate`, δείτε :ref:`tut-loopidioms`." #: tutorial/controlflow.rst:138 msgid "A strange thing happens if you just print a range::" -msgstr "" +msgstr "Ένα περιέργο πράγμα συμβαίνει αν απλώς εκτυπώσετε ένα range::" #: tutorial/controlflow.rst:143 msgid "" @@ -115,6 +145,10 @@ msgid "" "items of the desired sequence when you iterate over it, but it doesn't " "really make the list, thus saving space." msgstr "" +"Με πολλούς τρόπους το αντικείμενο που επιστρέφεται από το :func:`range` συμπεριφέρεται σαν να είναι " +"μια λίστα, αλλά στην πραγματικότητα δεν είναι. Είναι ένα αντικείμενο που επιστρέφει τα διαδοχικά στοιχεία " +"της επιθυμητής ακολουθίας όταν κάνετε επανάληψη πάνω του, αλλά δεν μπαίνει πραγματικά στη λίστα, " +"εξοικονομώντας έτσι χώρο." #: tutorial/controlflow.rst:148 msgid "" @@ -124,6 +158,11 @@ msgid "" "keyword:`for` statement is such a construct, while an example of a function " "that takes an iterable is :func:`sum`::" msgstr "" +"Λέμε ότι ένα τέτοιο αντικείμενο είναι :term:`iterable`, δηλαδή, κατάλληλο ως " +"στόχος για συναρτήσεις και κατασκευές που περιμένουν κάτι από το οποίο μπορούν να λάβουν " +"διαδοχικά στοιχεία μέχρι να εξαντληθεί η προσφορά. Είδαμε ότι η δήλωση :" +"keyword:`for` είναι μια τέτοια κατασκευή, ενώ ένα παράδειγμα συνάρτησης που παίρνει ένα " +"iterable είναι :func:`sum`::" #: tutorial/controlflow.rst:157 msgid "" @@ -131,54 +170,71 @@ msgid "" "arguments. In chapter :ref:`tut-structures`, we will discuss in more detail " "about :func:`list`." msgstr "" +"Αργότερα θα δούμε περισσότερες συναρτήσεις που επιστρέφουν iterables και λαμβάνουν τους " +"iterables ως ορίσματα. Στο κεφάλαιο :ref:`tut-structures`, θα συζητήσουμε λεπτομερέστερα για το " +":func:`list`." #: tutorial/controlflow.rst:164 msgid "" ":keyword:`!break` and :keyword:`!continue` Statements, and :keyword:`!else` " "Clauses on Loops" msgstr "" +":keyword:`!break` και :keyword:`!continue` Προτάσεις, και :keyword:`!else` " +"Προτάσεις για Loops" #: tutorial/controlflow.rst:166 msgid "" "The :keyword:`break` statement breaks out of the innermost enclosing :" "keyword:`for` or :keyword:`while` loop." msgstr "" +"Η δήλωση :keyword:`break` ξεφεύγει από τον πιο εσωτερικό βρόχο :" +"keyword:`for` ή :keyword:`while`." #: tutorial/controlflow.rst:169 msgid "" "A :keyword:`!for` or :keyword:`!while` loop can include an :keyword:`!else` " "clause." msgstr "" +"Ένας βρόχος :keyword:`!for` ή :keyword:`!while` μπορεί να περιλαμβάνει μια πρόταση " +":keyword:`!else`." #: tutorial/controlflow.rst:171 msgid "" "In a :keyword:`for` loop, the :keyword:`!else` clause is executed after the " "loop reaches its final iteration." msgstr "" +"Σε έναν βρόχο :keyword:`for`, η πρόταση :keyword:`!else` εκτελείται αφού ο βρόχος φτάσει στην τελική του " +"επανάληψη." #: tutorial/controlflow.rst:174 msgid "" "In a :keyword:`while` loop, it's executed after the loop's condition becomes " "false." msgstr "" +"Σε έναν βρόχο :keyword:`while`, εκτελείται αφού η συνθήκη του βρόχου είναι ψευδής." #: tutorial/controlflow.rst:176 msgid "" "In either kind of loop, the :keyword:`!else` clause is **not** executed if " "the loop was terminated by a :keyword:`break`." msgstr "" +"Σε οποιοδήποτε είδος βρόχου, η πρόταση :keyword:`!else` **δεν** εκτελείται εάν ο βρόχος " +"τερματίστηκε με μια λέξη :keyword:`break`." #: tutorial/controlflow.rst:179 msgid "" "This is exemplified in the following :keyword:`!for` loop, which searches " "for prime numbers::" msgstr "" +"Αυτό αποδεικνύεται στον ακόλουθο βρόχο :keyword:`!for`, που αναζητά πρώτους αριθμούς::" #: tutorial/controlflow.rst:200 msgid "" "(Yes, this is the correct code. Look closely: the ``else`` clause belongs " "to the :keyword:`for` loop, **not** the :keyword:`if` statement.)" msgstr "" +"(Ναι, αυτός είναι ο σωστός κώδικας. Κοιτάξτε προσεκτικά: η πρόταση ``else`` ανήκει " +"στον βρόχο :keyword:`for`, **όχι** στη δήλωση :keyword:`if`.)" #: tutorial/controlflow.rst:203 msgid "" @@ -189,26 +245,34 @@ msgid "" "``break`` occurs. For more on the :keyword:`!try` statement and exceptions, " "see :ref:`tut-handling`." msgstr "" +"Όταν χρησιμοποιείται με έναν βρόχο, η πρόταση ``else`` έχει περισσότερα κοινά με την πρόταση " +"``else`` μιας πρότασης :keyword:`try` παρά με αυτήν των δηλώσεων keyword:`if`: η πρόταση " +"``else`` μιας δήλωσης :keyword:`try` εκτελείται όταν δεν υπάρχει εξαίρεση, και η πρόταση ``else`` " +"ενός βρόχου εκτελείται όταν δεν υπάρχει ``break``. Για περισσότερα με τη δήλωση :keyword:`!try` και τις εξαιρέσεις, " +"δείτε :ref:`tut-handling`." #: tutorial/controlflow.rst:210 msgid "" "The :keyword:`continue` statement, also borrowed from C, continues with the " "next iteration of the loop::" msgstr "" +"Η δήλωση :keyword:`continue`, επίσης δανεισμένη από τη C, συνεχίζεται με την επόμενη επανάληψη του βρόχου::" #: tutorial/controlflow.rst:231 msgid ":keyword:`!pass` Statements" -msgstr "" +msgstr "Προτάσεις :keyword:`!pass`" #: tutorial/controlflow.rst:233 msgid "" "The :keyword:`pass` statement does nothing. It can be used when a statement " "is required syntactically but the program requires no action. For example::" msgstr "" +"Η δήλωση :keyword:`pass` δεν κάνει τίποτα. Μπορεί να χρησιμοποιηθεί όταν απαιτείται συντακτικά μια πρόταση, αλλά " +"το πρόγραμμα δεν απαιτεί καμία ενέργεια. Για παράδειγμα::" #: tutorial/controlflow.rst:240 msgid "This is commonly used for creating minimal classes::" -msgstr "" +msgstr "Αυτό χρησιμοποιείται συνήθως για τη δημιουργία ελάχιστων κλάσεων::" #: tutorial/controlflow.rst:246 msgid "" @@ -217,10 +281,13 @@ msgid "" "to keep thinking at a more abstract level. The :keyword:`!pass` is silently " "ignored::" msgstr "" +"Ένα άλλο μέρος :keyword:`pass` που μπορεί να χρησιμοποιηθεί είναι ως place-holder για μια " +"συνάρτηση ή το σώμα υπό όρους όταν εργάζεστε σε νέο κώδικα, επιτρέποντας σας να συνεχίσετε " +"να σκέφτεστε σε ένα πιο αφηρημένο επίπεδο. Το :keyword:`!pass` αγνοείται σιωπηλά::" #: tutorial/controlflow.rst:258 msgid ":keyword:`!match` Statements" -msgstr "" +msgstr "Προτάσεις :keyword:`!match`" #: tutorial/controlflow.rst:260 msgid "" @@ -232,28 +299,38 @@ msgid "" "also extract components (sequence elements or object attributes) from the " "value into variables." msgstr "" +"Μια δήλωση :keyword:`match` παίρνει μια έκφραση και συγκρίνει την τιμή της με διαδοχικά μοτίβα " +"που δίνονται ως ένα ή περισσότερα μπλοκ πεζών-κεφαλαίων. Αυτή είναι επιφανειακά παρόμοια με μια πρόταση " +"switch στην C, Java ή JavaScript (και πολλές άλλες γλώσσες), αλλά είναι πιο παρόμοια με την αντιστοίχιση " +"προτύπων σε γλώσσες όπως η Rust ή η Haskell. Εκτελείται μόνο το πρώτο μοτίβο που ταιριάζει και μπορεί επίσης " +"να εξαγάγει στοιχεία (στοιχεία ακολουθίας ή ιδιότητες αντικειμένου) από την τιμή σε μεταβλητές." #: tutorial/controlflow.rst:268 msgid "" "The simplest form compares a subject value against one or more literals::" msgstr "" +"Η απλούστερη φόρμα συγκρίνει μια τιμή θέματος με ένα ή περισσότερα literals::" #: tutorial/controlflow.rst:281 msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match. If no case matches, none of the branches is executed." msgstr "" +"Σημειώστε το τελευταίο μπλοκ: το \"όνομα μεταβλητής\" ``_`` λειτουργεί ως *μπαλαντέρ* και δεν " +"αποτυγχάνει ποτέ να ταιριάζει. Εάν δεν ταιριάζει κανένα case, κανένας από τους κλάδους δεν εκτελείται." #: tutorial/controlflow.rst:284 msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" msgstr "" +"Μπορείτε να συνδυάσετε πολλά γράμματα σε ένα μόνο μοτίβο χρησιμοποιώντας το ``|`` (\"ή\")::" #: tutorial/controlflow.rst:289 msgid "" "Patterns can look like unpacking assignments, and can be used to bind " "variables::" msgstr "" +"Τα μοτίβα μπορεί να μοιάζουν με αναθέσεις unpacking, και μπορούν αν χρησιμοποιηθούν για τη σύνδεση μεταβλητών::" #: tutorial/controlflow.rst:305 msgid "" @@ -264,6 +341,11 @@ msgid "" "which makes it conceptually similar to the unpacking assignment ``(x, y) = " "point``." msgstr "" +"Μελετήστε το ένα προσεκτικά! Το πρώτο μοτίβο έχει δύο literals, και μπορεί να θεωρηθεί ως " +"επέκταση του literal μοτίβου που φαίνεται παραπάνω. Αλλά τα επόμενα δύο μοτίβα συνδυάζουν ένα " +"literal σε μια μεταβλητή, και η μεταβλητή *δεσμεύει* μια τιμή από το θέμα (``point``). Το τέταρτο " +"μοτίβο συλλαμβάνει δύο τιμές, γεγονός που το κάνει εννοιολογικά παρόμοιο με την ανάθεση unpacking " +"``(x, y) = point``." #: tutorial/controlflow.rst:312 msgid "" @@ -271,6 +353,9 @@ msgid "" "followed by an argument list resembling a constructor, but with the ability " "to capture attributes into variables::" msgstr "" +"Εάν χρησιμοποιείτε κλάσεις για τη δομή των δεδομένων σας, μπορείτε να χρησιμοποιήσετε το όνομα της κλάσης " +"ακολουθούμενο από μια λίστα ορισμάτων που μοιάζει με έναν κατασκευαστή, αλλά με τη δυνατότητα να συλλαμβάνει " +"χαρακτηριστικά σε μεταβλητές::" #: tutorial/controlflow.rst:334 msgid "" @@ -281,6 +366,11 @@ msgid "" "\"y\"), the following patterns are all equivalent (and all bind the ``y`` " "attribute to the ``var`` variable)::" msgstr "" +"Μπορείτε να χρησιμοποιήσετε παραμέτρους θέσης με ορισμένες ενσωματωμένες κλάσεις που παρέχουν " +"μια σειρά για τα χαρακτηριστικά τους (π.χ. κλάσεις δεδομένων). Μπορείτε επίσης να ορίσετε μια συγκεκριμένη θέση " +"για χαρακτηριστικά σε μοτίβα ορίζοντας το ειδικό χαρακτηριστικό ``__match_args__`` στις κλάσεις σας. Εάν έχει οριστεί " +"σε (\"x\", \"y\"), τα ακόλουθα μοτίβα είναι όλα ισοδύναμα (και όλα δεσμεύουν το χαρακτηριστικό ``y`` " +"στη μεταβλητή ``var``)::" #: tutorial/controlflow.rst:345 msgid "" @@ -292,12 +382,19 @@ msgid "" "(recognized by the \"(...)\" next to them like ``Point`` above) are never " "assigned to." msgstr "" +"Ένα συνιστώμενος τρόπος για να διαβάσετε τα μοτίβα είναι να τα δείτε ως μια εκτεταμένη μορφή αυτού που θα " +"βάλετε στα αριστερά μιας εργασίας, για να κατανοήσετε ποιες μεταβλητές θα οριστούν σε τι. Μόνο τα ανεξάρτητα ονόματα " +"(όπως ``var`` παραπάνω) εκχωρούνται από μια δήλωση αντιστοίχισης. Ονόματα με κουκκίδες (όπως ``foo." +"bar``), ονόματα χαρακτηριστικών (τα ``x=`` και ``y=`` παραπάνω) ή ονόματα κλάσεων " +"(αναγνωρίζονται από το \"(...)\" που βρίσκεται δίπλα όπως το ``Point`` παραπάνω) δεν ανατίθενται ποτέ." #: tutorial/controlflow.rst:352 msgid "" "Patterns can be arbitrarily nested. For example, if we have a short list of " "Points, with ``__match_args__`` added, we could match it like this::" msgstr "" +"Τα μοτίβα μπορούν να είναι αυθαίρετα ένθετα. Για παράδειγμα, εάν έχουμε μια σύντομη λίστα " +"με Points, με προσθήκη ``__match_args__``, θα μπορούσαμε να την αντιστοιχίσουμε ως εξής::" #: tutorial/controlflow.rst:373 msgid "" @@ -305,10 +402,13 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" +"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως \"guard\". Εάν το guard είναι " +"false, το ``match`` συνεχίζει για να δοκιμάσει το επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη " +"της τιμής γίνεται πριν ο guard αξιολογείθεί::" #: tutorial/controlflow.rst:383 msgid "Several other key features of this statement:" -msgstr "" +msgstr "Πολλά άλλα βασικά χαρακτηριστικά αυτής της δήλωσης:" #: tutorial/controlflow.rst:385 msgid "" @@ -316,6 +416,9 @@ msgid "" "meaning and actually match arbitrary sequences. An important exception is " "that they don't match iterators or strings." msgstr "" +"Όπως το unpacking αναθέσεων, τα μοτίβα πλειάδας (tuple) και λίστας έχουν ακριβώς την ίδια " +"σημασία και ταιριάζουν πραγματικά με αυθαίρετες ακολουθίες. Μια σημαντική εξαίρεση είναι ότι δεν ταιριάζουν " +"με iterators ή συμβολοσειρές." #: tutorial/controlflow.rst:389 msgid "" @@ -324,6 +427,10 @@ msgid "" "also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " "without binding the remaining items." msgstr "" +"Τα μοτίβα ακολουθίας υποστηρίζουν εκτεταμένο unpacking: ``[x, y, *rest]`` και ``(x, y, " +"*rest)`` λειτουργεί παρόμοια με το unpacing αναθέσεων. Το όνομα μετά το ``*`` μπορεί επίσης " +"να είναι ``_``, οπότε το ``(x, y, *_)`` αντιστοιχεί σε μια ακολουθία τουλάχιστον δύο στοιχείων " +"χωρίς να δεσμεύει τα υπόλοιπα στοιχεία." #: tutorial/controlflow.rst:394 msgid "" @@ -332,44 +439,59 @@ msgid "" "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" +"Μοτίβα αντιστοίχισης: ``{\"bandwidth\": b, \"latency\": l}`` καταγράφει τις τιμές " +"``\"bandwidth\"`` και ``\"latency\"`` από ένα λεξικό. Σε αντίθεση με τα μοτίβα ακολοθίας, " +"επιπλεόν κλειδιά αγνοούνται. Υποστηρίζεται επίσης ο unpacking όπως το ``**rest``. (Αλλά το " +"``**_`` θα ήταν περιττό, επομένως δεν επιτρέπεται.)" #: tutorial/controlflow.rst:399 msgid "Subpatterns may be captured using the ``as`` keyword::" -msgstr "" +msgstr "Τα δευτερεύονται μοτίβα μπορούν αν αποτυπωθούν χρησιμοποιώντας το " +"keyword ``as``::" #: tutorial/controlflow.rst:403 msgid "" "will capture the second element of the input as ``p2`` (as long as the input " "is a sequence of two points)" msgstr "" +"θα καταγράψει το δεύτερο στοιχείο της εισόδου ως ``p2`` (εφόσον η είσοδος είναι μια " +"ακολουθία δύο σημείων)" #: tutorial/controlflow.rst:406 msgid "" "Most literals are compared by equality, however the singletons ``True``, " "``False`` and ``None`` are compared by identity." msgstr "" +"Τα περισσότερα literals συγκρίνονται με ισότητα, ωστόσο τα singletons ``True``, " +"``False`` και ``None`` συγκρίνονται με ταυτότητα." #: tutorial/controlflow.rst:409 msgid "" "Patterns may use named constants. These must be dotted names to prevent " "them from being interpreted as capture variable::" msgstr "" +"Τα μοτίβα μπορούν να χρησιμοποιούν ονομασμένες σταθερές. Αυτά πρέπει να είναι ονόματα με " +"κουκκίδες για να μην ερμηνεύονται ως capture μεταβλητή::" #: tutorial/controlflow.rst:428 msgid "" "For a more detailed explanation and additional examples, you can look into :" "pep:`636` which is written in a tutorial format." msgstr "" +"Για πιο λεπτομερή επεξήγηση και πρόσθετα παραδείγματα, μπορείτε να δείτε το :" +"pep:`636` το οποίο είναι γραμμένο σε μορφή εκμάθησης." #: tutorial/controlflow.rst:434 msgid "Defining Functions" -msgstr "" +msgstr "Καθορισμός Συναρτήσεων" #: tutorial/controlflow.rst:436 msgid "" "We can create a function that writes the Fibonacci series to an arbitrary " "boundary::" msgstr "" +"Μπορούμε να δημιουργήσουμε μια συνάρτηση που γράφει τη σειρά Fibonacci σε ένα " +"αυθαίρετο όριο::" #: tutorial/controlflow.rst:456 msgid "" @@ -378,6 +500,9 @@ msgid "" "parameters. The statements that form the body of the function start at the " "next line, and must be indented." msgstr "" +"Το keyword :keyword:`def` εισάγει μια συνάρτηση *ορισμός*. Πρέπει να ακολουθείται από το " +"όνομα της συνάρτησης και τη λίστα των τυπικών παραμέτρων σε παρένθεση. Οι δηλώσεις που σχηματίζουν " +"το σώμα της συνάρτησης ξεκινούν από την επόμενη γρμμή και πρέπει να είναι εσοχές." #: tutorial/controlflow.rst:461 msgid "" @@ -389,6 +514,12 @@ msgid "" "through code; it's good practice to include docstrings in code that you " "write, so make a habit of it." msgstr "" +"Η πρώτη δήλωση του σώματος της συνάρτησης μπορεί προαιρετικά να είναι ένα literal " +"συμβολοσειράς· αυτό το literal συμβολοσειράς είναι η συμβολοσειρά τεκμηρίωσης της συνάρτησης " +"ή :dfn:`docstring`. (Περισσότερα για τα docstring μπορείτε να βρείτε στην ενότητα :ref:`tut-" +"docstrings`.) Υπάρχουν εργαλεία που χρησιμοποιούν docstrings για την αυτόματη παραγωγή διαδικτυακής ή " +"έντυπης τεκμηρίωσης ή για να αφήσουν τον χρήστη να περιηγηθεί διαδραστικά στον κώδικα· είναι καλή " +"πρακτική να συμπεριλαμβάνονται docstrings στον κώδικα που γράφετε, για αυτό κάντε το συνήθεια." #: tutorial/controlflow.rst:468 msgid "" @@ -403,6 +534,15 @@ msgid "" "for variables of enclosing functions, named in a :keyword:`nonlocal` " "statement), although they may be referenced." msgstr "" +"Η *εκτέλεση* μιας συνάρτησης εισάγει έναν νέο πίνακα συμβόλων που χρησιμοποιείται " +"για τις τοπικές μεταβλητές της συνάρτησης. Πιο συγκεκριμένα, όλες οι εκχωρήσεις μεταβλητών " +"σε μια συνάρτηση αποθηκεύουν την τιμή στον πίνακα τοπικών συμβόλων, ενώ οι αναφορές μεταβλητών " +"κοιτάζονται πρώτα στον πίνακα τοπικών συμβόλων, στη συνέχιας στους πίνακες τοπικών συμβόλων των " +"συναρτήσεων που περικλείουν, μετά στον πίνακα καθολικών συμβόλων και, τέλος, στον πίνακα ενσωματωμένων " +"ονομάτων. Έτσι, οι καθολικές μεταβλητές και οι μεταβλητές των συναρτήσεων που περικλείουν δεν μπορούν " +"να εκχωρηθούν ως μια τιμή μέσα σε μια συνάρτηση (εκτός εάν, για καθολικές μεταβλητές, που ονομάζονται σε " +"μια δήλωση :keyword:`global` ή, για μεταβλητές συναρτήσεων που περικλείουν, ονομάζονται ως μια δήλωση " +":keyword:`nonlocal`), αν και μπορεί να αναφέρονται." #: tutorial/controlflow.rst:479 msgid "" @@ -413,6 +553,11 @@ msgid "" "another function, or calls itself recursively, a new local symbol table is " "created for that call." msgstr "" +"Οι πραγματικές παράμετροι (ορίσματα) σε μια κλήση συνάρτησης εισάγονται στον τοπικό πίνακα " +"συμβόλων ης καλούμενης συνάρτησης όταν αυτή καλείται· έτσι, τα ορίσματα μεταβιβάζονται χρησιμοποιώντας " +"*call by value* (όπου η *value* είναι πάντα ένα αντικείμενο *reference*, όχι την τιμή του αντικειμένου). " +"[#]_ Όταν μια συνάρτηση καλεί μια άλλη συνάρτηση ή καλεί τον εαυτό της αναδρομικά, δημιουργείται ένας νέος πίνακας " +"τοπικών συμβόλων για αυτήν την κλήση." #: tutorial/controlflow.rst:486 msgid "" @@ -421,6 +566,10 @@ msgid "" "to by that name as a user-defined function. Other names can also point to " "that same function object and can also be used to access the function::" msgstr "" +"Ένας ορισμός συνάρτησης συσχετίζει το όνομα της συνάρτησης με το αντικείμενο συνάρτησης στον " +"τρέχοντα πίνακα συμβόλων. Ο διερμηνέας αναγνωρίζει το αντικείμενο στο οποίο επισημαίνεται αυτό το " +"όνομα ως συνάρτηση που ορίζεται από τον χρήστη. Άλλα όνοματα μπορούν επίσης να δείχνουν το ίδιο αντικείμενο " +"συνάρτησης και μπορούν επίσης να χρησιμοποιηθούν για πρόσβαση στη συνάρτηση::" #: tutorial/controlflow.rst:497 msgid "" @@ -432,16 +581,24 @@ msgid "" "the only value written. You can see it if you really want to using :func:" "`print`::" msgstr "" +"Προερχόμενοι από άλλες γλώσσες, μπορεί να αντιταχθείτε ότι το ``fib`` δεν είναι μια " +"συνάρτηση αλλά μια διαδικασία, καθώς δεν επιστρέφει μια τιμή. Στην πραγματικότητα, ακόμη και " +"συναρτήσεις χωρίς δήλωση :keyword:`return` επιστρέφουν μια τιμή, αν και μάλλον βαρετό. Αυτή η τιμή " +"ονομάζεται ``None``. Η εγγραφή της τιμής ``None`` από τον διερμηνέα, εάν θα ήταν η μόνη τιμή " +"που γράφεται. Μπορείτε να το δείτε αν το θέλετε πραγματικά χρησιμοποιώντας τη :func:" +"`print`::" #: tutorial/controlflow.rst:508 msgid "" "It is simple to write a function that returns a list of the numbers of the " "Fibonacci series, instead of printing it::" msgstr "" +"Είανι απλό να γράψετε μια συνάρτηση που επιστρέφει μια λίστα με τους αριθμούς της σειράς " +"Fibonacci, αντί να την εκτυπώσετε::" #: tutorial/controlflow.rst:524 msgid "This example, as usual, demonstrates some new Python features:" -msgstr "" +msgstr "Αυτό το παράδειγμα, ως συνήθως, δείχνει μερικά νέα χαρακτηριστικά Python:" #: tutorial/controlflow.rst:526 msgid "" @@ -449,6 +606,9 @@ msgid "" "keyword:`!return` without an expression argument returns ``None``. Falling " "off the end of a function also returns ``None``." msgstr "" +"Η δήλωση :keyword:`return` επιστρέφει με μια τιμή από μια συνάρτηση. Το :" +"keyword:`!return` χωρίς όρισμα έκφρασης, επιστρέφει το ``None``. Η πτώση " +"του τέλους μιας συνάρτησης επιστρέφει επίσης ``None``." #: tutorial/controlflow.rst:530 msgid "" @@ -464,20 +624,31 @@ msgid "" "this example it is equivalent to ``result = result + [a]``, but more " "efficient." msgstr "" +"Η δήλωση ``result.append(a)`` καλεί μια *μέθοδο* του αντικειμένου της λίστας " +"``result``. Μια μέθοδος είναι μια συνάρτηση που 'ανήκει' σε ένα αντικείμενο και ονομάζεται " +"``obj.methodname``, όπου ``obj`` είναι κάποιο αντικείμενο (αυτό μπορεί να έιναι μια έκφραση), " +"και το ``methodname`` είναι το όνομα μιας μεθόδου που ορίζεται από τον τύπο του αντικειμένου. " +"Διαφορετικοί τύποι ορίζουν διαφορετικές μεθόδους. Μέθοδοι διαφορετικών τύπων μπορεί να έχουν " +"το ίδιο όνομα χωρίς να προκαλούν ασάφεια. (Είναι δυνατό να ορίσετε τους δικούς σας τύπους αντικειμένων και " +"μεθόδους, χρησιμοποιώντας *classes*, δείτε :ref:`tut-classes`) Η μέθοδος :meth:`!append` που εμφανίζεται " +"στο παράδειγμα ορίζεται για αντικείμενα λίστας· προσθέτει ένα νέο στοιχείο στο τέλος της λίστας. Σε " +"αυτό το παράδειγμα είναι ισοδύναμο με ``result = result + [a]``, αλλά πιο αποτελεσματικό." #: tutorial/controlflow.rst:545 msgid "More on Defining Functions" -msgstr "" +msgstr "Περισσότερο για τον Καθορισμό Συναρτήσεων" #: tutorial/controlflow.rst:547 msgid "" "It is also possible to define functions with a variable number of arguments. " "There are three forms, which can be combined." msgstr "" +"Είναι επίσης δυνατός ο ορισμός συναρτήσεων με μεταβλητό αριθμό ορισμάτων. " +"Υπάρχουν τρεις μορφές, που μπορούν να συνδυαστούν." #: tutorial/controlflow.rst:554 msgid "Default Argument Values" -msgstr "" +msgstr "Προεπιλεγμένες Τιμές Ορίσματος" #: tutorial/controlflow.rst:556 msgid "" @@ -485,43 +656,55 @@ msgid "" "arguments. This creates a function that can be called with fewer arguments " "than it is defined to allow. For example::" msgstr "" +"Η πιο χρήσιμη φόρμα είναι να καθορίσετε μια προεπιλεγμένη τιμή για ένα ή περισσότερα ορίσματα. " +"Αυτό δημιουργεί μια συνάρτηση που μπορεί να κληθεί με λιγότερα ορίσματα από αυτά που έχει ορίσει ότι " +"επιτρέπει. Για παράδειγμα::" #: tutorial/controlflow.rst:572 msgid "This function can be called in several ways:" -msgstr "" +msgstr "Αυτή η συνάρτηση μπορεί να κληθεί με διάφορους τρόπους:" #: tutorial/controlflow.rst:574 msgid "" "giving only the mandatory argument: ``ask_ok('Do you really want to quit?')``" msgstr "" +"δίνοτνας μόνο το υποχρεωικκό όρισμα: ``ask_ok('Do you really want to quit?')``" #: tutorial/controlflow.rst:576 msgid "" "giving one of the optional arguments: ``ask_ok('OK to overwrite the file?', " "2)``" msgstr "" +"δίνοντας ένα από τα προαιρετικά ορίσματα: ``ask_ok('OK to overwrite the file?', " +"2)``" #: tutorial/controlflow.rst:578 msgid "" "or even giving all arguments: ``ask_ok('OK to overwrite the file?', 2, 'Come " "on, only yes or no!')``" msgstr "" +"ή δίνοντας όλα τα ορίσματα: ``ask_ok('OK to overwrite the file?', 2, 'Come " +"on, only yes or no!')``" #: tutorial/controlflow.rst:581 msgid "" "This example also introduces the :keyword:`in` keyword. This tests whether " "or not a sequence contains a certain value." msgstr "" +"Αυτό το παράδειγμα εισάγει επίσης το keyword :keyword:`in`. Αυτό ελέγχει εάν μια " +"ακολουθία περιέχει ή όχι μια συγκεκριμένη τιμή." #: tutorial/controlflow.rst:584 msgid "" "The default values are evaluated at the point of function definition in the " "*defining* scope, so that ::" msgstr "" +"Οι προεπιλεγμένες τιμές αξιολογούνται στο σημείο του ορισμού της συνάρτησης στο " +"πεδίο που *ορίζεται*, έτσι ώστε ::" #: tutorial/controlflow.rst:595 msgid "will print ``5``." -msgstr "" +msgstr "θα εκτυπώσει ``5``." #: tutorial/controlflow.rst:597 msgid "" @@ -530,20 +713,26 @@ msgid "" "dictionary, or instances of most classes. For example, the following " "function accumulates the arguments passed to it on subsequent calls::" msgstr "" +"**Σημαντική προειδοποίηση:** Η προεπιλεγμένη τιμή αξιολογείται μόνο μία φορά. Αυτό " +"κάνει τη διαφορά όταν η προεπιλογή είναι ένα μεταβλητό αντικείμενο, όπως μια λίστα, λεξικό ή " +"στιγμιότυπα των περισσότερων κλάσεων. Για παράδειγμα, η ακόλουθη συνάρτηση συσσωρεύει " +"τα ορίσματα που διαβάζονται σε αυτό σε επόμενες κλήσεις::" #: tutorial/controlflow.rst:610 msgid "This will print ::" -msgstr "" +msgstr "Αυτό θα εκτυπώσει ::" #: tutorial/controlflow.rst:616 msgid "" "If you don't want the default to be shared between subsequent calls, you can " "write the function like this instead::" msgstr "" +"Εάν δεν θέλετε να γίνεται κοινή χρήση της προεπιλογής μεταξύ των επόμενων κλήσεων, μπορείτε " +"να γράψετε τη συνάρτηση ως εξής::" #: tutorial/controlflow.rst:629 msgid "Keyword Arguments" -msgstr "" +msgstr "Ορίσματα Keyword" #: tutorial/controlflow.rst:631 msgid "" @@ -551,6 +740,8 @@ msgid "" "argument>` of the form ``kwarg=value``. For instance, the following " "function::" msgstr "" +"Οι συναρτήσεις μπορούν επίσης να κληθούν χρησιμοποιώντας το :term:`keyword arguments ` της μορφής ``kwarg=value``. Για παράδειγμα, την ακόλουθη συνάρτηση::" #: tutorial/controlflow.rst:640 msgid "" @@ -558,10 +749,13 @@ msgid "" "(``state``, ``action``, and ``type``). This function can be called in any " "of the following ways::" msgstr "" +"δέχεται ένα απαιτούμενο όρισμα (``voltage``) και τρία προαιρετικά ορίσματα " +"(``state``, ``action``, και ``type``). Αυτή η συνάρτηση μπορεί να κληθεί με οποιονδήποτε " +"από τους ακόλουθους τρόπους::" #: tutorial/controlflow.rst:651 msgid "but all the following calls would be invalid::" -msgstr "" +msgstr "αλλά όλες οι ακόλουθες κλήσεις θα ήταν άκυρες::" #: tutorial/controlflow.rst:658 msgid "" @@ -573,6 +767,13 @@ msgid "" "may receive a value more than once. Here's an example that fails due to this " "restriction::" msgstr "" +"Σε μια κλήση συνάρτησης, τα keyword ορίσματα πρέπει να ακολουθούν ορίσματα θέσης. Όλα " +"τα keyword ορίσματα που διαβάζονται πρέπει να ταιριάζουν με ένα από τα ορίσματα που γίνονται " +"δεκτά από τη συνάρτηση (π.χ. το ``actor`` δεν είναι έγκυρο όρισμα για τη συνάρτηση ``parrot``), " +"και η διάταξη τους δεν είναι σημαντική. Αυτό περιλαμβάνει επίσης μη " +"προαιρετικά ορίσματα (π.χ. ``parrot(voltage=1000)`` είναι επίσης έγκυρο). Κανένα όρισμα " +"δεν μπορεί να λάβει μια τιμή περισσότερες από μία φορές. Ακολουθεί ένα παράδειγμα που αποτυγχάνει " +"λόγω αυτού του περιορισμού::" #: tutorial/controlflow.rst:674 msgid "" @@ -584,24 +785,33 @@ msgid "" "positional arguments beyond the formal parameter list. (``*name`` must " "occur before ``**name``.) For example, if we define a function like this::" msgstr "" +"Όταν υπάρχει μια τελική επίσημη παράμετρος της μορφής ``**name``, λαμάνει ένα λεξικό " +"(δείτε :ref:`typesmapping`) που περιέχει όλα τα keyword ορίσματα εκτός από αυτά που " +"αντιστοιχούν σε μια επίσημη παράμετρο. Αυτό μπορεί να συνδυαστεί με μια επίσημη παράμετρος " +"της μοφής ``*name`` (που περιγράφεται στην επόμενη υποενότητα) η οποία λαμβάνει ένα " +":ref:`tuple ` που περιέχει τα ορίσματα θέσης πέρα από την επίσημη λίστα παραμέτρων. " +"(Το ``*name`` πρέπει να εφμανίζεται πριν από το ``**name``.) Για παράδειγμα, αν ορίσουμε μια " +"συνάρτηση όπως αυτή::" #: tutorial/controlflow.rst:691 msgid "It could be called like this::" -msgstr "" +msgstr "Μπορεί να καλεστεί κάπως έτσι::" #: tutorial/controlflow.rst:699 msgid "and of course it would print:" -msgstr "" +msgstr "και φυσικά θα εκτυπώσει:" #: tutorial/controlflow.rst:712 msgid "" "Note that the order in which the keyword arguments are printed is guaranteed " "to match the order in which they were provided in the function call." msgstr "" +"Λάβετε υπόψη ότι η σειρά με την οποία εκτυπώνονται τα keyword ορίσματα είναι εγγυημένη " +"ότι ταιριάζει με τη σειρά με την οποία δόθηκαν στην κλήση της συνάρτησης." #: tutorial/controlflow.rst:716 msgid "Special parameters" -msgstr "" +msgstr "Ειδικές παράμετροι" #: tutorial/controlflow.rst:718 msgid "" @@ -611,10 +821,15 @@ msgid "" "at the function definition to determine if items are passed by position, by " "position or keyword, or by keyword." msgstr "" +"Από προεπιλογή, τα ορίσματα μπορούν να μεταβιβαστούν σε μια συνάρτηση Python είτε με βάση " +"τη θέση είτε ρητά με το keyword. Για αναγνωσιμότητα και απόδοση, ειναι λογικό να περιοριστεί " +"ο τρόπος με τον οποίο μπορούν να περάσουν τα ορίσματα, έτσι ώστε ένας προγραμματιστής να μην " +"χρειάζεται να κοιτάξει το ορισμό της συνάρτησης για να προσδιορίσει εάν τα στοιχεία μεταβιβάζονται " +"κατά θέση, κατά θέση ή keyword, ή κατά keyword." #: tutorial/controlflow.rst:724 msgid "A function definition may look like:" -msgstr "" +msgstr "Ένας ορισμός συνάρτησης μπορεί να μοιάζει με αυτό:" #: tutorial/controlflow.rst:735 msgid "" @@ -623,20 +838,26 @@ msgid "" "only, positional-or-keyword, and keyword-only. Keyword parameters are also " "referred to as named parameters." msgstr "" +"όπου τα ``/`` και ``*`` είναι προαιρτικά. Εάν χρησιμοποιούνται, αυτά τα σύμβολα υποδεικνύουν " +"το είδος της παραμέτρους με τον τρόπο που τα ορίσματα μπορούν να μεταβιβαστούν στη συνάρτηση: " +"μόνο θέσης (positional-only), θέσης ή keyword (positional-or-keyword), και μόνο keyword (keyword-only). " +"Οι keyword παράμετροι αναφέρονται επίσης ως ονομασμένες παράμετροι." #: tutorial/controlflow.rst:742 msgid "Positional-or-Keyword Arguments" -msgstr "" +msgstr "Παράμετροι Θέσης ή Keyword" #: tutorial/controlflow.rst:744 msgid "" "If ``/`` and ``*`` are not present in the function definition, arguments may " "be passed to a function by position or by keyword." msgstr "" +"Εάν τα ``/`` και ``*`` δεν υπάρχουν στον ορισμό της συνάρτησης, τα ορίσματα μπορούν να μεταβιβαστούν " +"σε μια συνάρτηση ανά θέση ή κατά keyword." #: tutorial/controlflow.rst:749 msgid "Positional-Only Parameters" -msgstr "" +msgstr "Παράμετροι Μόνο-Θέσης" #: tutorial/controlflow.rst:751 msgid "" @@ -648,16 +869,23 @@ msgid "" "parameters. If there is no ``/`` in the function definition, there are no " "positional-only parameters." msgstr "" +"Επανεξετάζοντας αυτό το θέμα λίγο πιο λεπτομερώς, είναι δυνατό να επισημάνετε " +"ορισμένες παραμέτρους ως *μόνο θέσης*.Εάν *μόνο θέσης*, η σειρά των παραμέτρων έχει σημασία " +"και οι παράμετροι δεν μπορούν να μεταβιβαστούν με keyword. Οι παράμετροι μόνο θέσης τοποθετούνται " +"πριν από ένα ``/`` (προς τα εμπρός-κάθετος). Το ``/``χρησιμοποιείται για να διαχωρίσει λογικά τις " +"παραμέτρους μόνο θέσης από τις υπόλοιπες παραμέτρους. Εάν δεν υπάερχει το ``/`` στον ορισμό της " +"συνάρτησης, δεν υπάρχουν παράμετροι μόνο θέσης." #: tutorial/controlflow.rst:759 msgid "" "Parameters following the ``/`` may be *positional-or-keyword* or *keyword-" "only*." msgstr "" +"Οι παράμετροι που ακολουθούν το ``/`` μπορεί να είναι *θέσης ή keyword* ή *μόνο keyword*." #: tutorial/controlflow.rst:763 msgid "Keyword-Only Arguments" -msgstr "" +msgstr "Ορίσματα μόνο Keyword" #: tutorial/controlflow.rst:765 msgid "" @@ -665,16 +893,21 @@ msgid "" "passed by keyword argument, place an ``*`` in the arguments list just before " "the first *keyword-only* parameter." msgstr "" +"Για να επισημάνετε τις παραμέτρους ως *μόνο keyword*, υποδεικνύοντας ότι οι παράμετροι πρέπει " +"να περάσουν από το keyword όρισμα, τοποθετήσετε ένα ``*`` στη λίστα ορισμάτων ακριβώς πριν " +"από την πρώτη παράμετρο *μόνο keyword*." #: tutorial/controlflow.rst:771 msgid "Function Examples" -msgstr "" +msgstr "Παραδείγματα Συναρτήσεων" #: tutorial/controlflow.rst:773 msgid "" "Consider the following example function definitions paying close attention " "to the markers ``/`` and ``*``::" msgstr "" +"Σκεφτείτε τα ακόλουθα παραδείγματα ορισμών συναρτήσεων δίνοντας ιδιαίτερη " +"προσοχή στους δείκτες ``/`` και ``*``::" #: tutorial/controlflow.rst:789 msgid "" @@ -682,24 +915,32 @@ msgid "" "places no restrictions on the calling convention and arguments may be passed " "by position or keyword::" msgstr "" +"Ο πρώτος ορισμός συνάρτησης, ``standard_arg``, η πιο οικεία μορφή, δεν θέτει περιορισμούς " +"στη σύμβαση κλήσης και τα ορίσματα μπορούν να περάσουν από θέση ή από keyword::" #: tutorial/controlflow.rst:799 msgid "" "The second function ``pos_only_arg`` is restricted to only use positional " "parameters as there is a ``/`` in the function definition::" msgstr "" +"Η δεύτερη συνάρτηση ``pos_only_arg`` περιορίζεται στη χρήση μόνο παραμέτρων θέσης καθώς " +"υπάρχει ένα ``/`` στον ορισμός της συνάρτησης::" #: tutorial/controlflow.rst:810 msgid "" "The third function ``kwd_only_args`` only allows keyword arguments as " "indicated by a ``*`` in the function definition::" msgstr "" +"Η τρίτη συνάρτηση ``kwd_only_args`` επιτρέπει μόνο keyword ορίσματα όπως " +"υποδεικνύεται από ένα ``*`` στον ορισμός της συνάρτησης::" #: tutorial/controlflow.rst:821 msgid "" "And the last uses all three calling conventions in the same function " "definition::" msgstr "" +"Και το τελευταίο χρησιμοποιεί και τις τρεις συμβάσεις κλήσης στον ίδιο ορισμό " +"συνάρτησης::" #: tutorial/controlflow.rst:841 msgid "" @@ -707,12 +948,16 @@ msgid "" "between the positional argument ``name`` and ``**kwds`` which has ``name`` " "as a key::" msgstr "" +"Τέλος, εξετάστε αυτόν τον ορισμό συνάρτησης που έχει μια πιθανή σύγκρουση μεταξύ " +"του ορίσματος θέσης ``name`` και ``**kwds`` που έχει ως κλειδί το ``name``::" #: tutorial/controlflow.rst:846 msgid "" "There is no possible call that will make it return ``True`` as the keyword " "``'name'`` will always bind to the first parameter. For example::" msgstr "" +"Δεν υπάρχει καμία πιθανή κλήση που θα την κάνεινα επιστρέψει ``True`` καθώς το keyword " +"``'name'`` θα συνδέεται πάντα με την πρώτη παράμετρο. Για παράδειγμα::" #: tutorial/controlflow.rst:855 msgid "" @@ -720,26 +965,31 @@ msgid "" "``name`` as a positional argument and ``'name'`` as a key in the keyword " "arguments::" msgstr "" +"Αλλά χρησιμοποιώντας ``/`` (ορίσματα μόνο θέσης), είναι δυνατό καθώς επιτρέπει το ``name`` " +"ως όρισμα θέσης και το ``'name'`` ως κλειδί στα keyword ορίσματα::" #: tutorial/controlflow.rst:863 msgid "" "In other words, the names of positional-only parameters can be used in " "``**kwds`` without ambiguity." msgstr "" +"Με άλλα λόγια, τα ονόματα των παραμέτρων μόνο θέσης μπορούν να χρησιμοποιηθούν σε ``**kwds`` " +"χωρίς ασάφεια." #: tutorial/controlflow.rst:868 msgid "Recap" -msgstr "" +msgstr "Ανακεφαλαίωση" #: tutorial/controlflow.rst:870 msgid "" "The use case will determine which parameters to use in the function " "definition::" msgstr "" +"Η περίπτωση χρήσης θα καθορίσει ποιες παραμέτρους θα χρησιμοποιηθούν στον ορισμό της συνάρτησης::" #: tutorial/controlflow.rst:874 msgid "As guidance:" -msgstr "" +msgstr "Ως καθοδήγηση:" #: tutorial/controlflow.rst:876 msgid "" @@ -749,6 +999,10 @@ msgid "" "is called or if you need to take some positional parameters and arbitrary " "keywords." msgstr "" +"Χρησιμοποιήστε τη θέση μόνο εάν θέλετε το όνομα των παραμέτρων να μην είναι διαθέσιμο στο χρήστη. " +"Αυτό είναι χρήσιμο όταν τα ονόματα παραμέτρων δεν έχουν πραγματικό νόημα, εάν δεν θέλετε να " +"επιβάλετε τη σειρά των ορισμάτων όταν καλείται η συνάρτηση ή εάν πρέπει να ληφθούν ορισμένες παράμετροι " +"θέσης και αυθαίρετα keywords." #: tutorial/controlflow.rst:881 msgid "" @@ -756,16 +1010,21 @@ msgid "" "understandable by being explicit with names or you want to prevent users " "relying on the position of the argument being passed." msgstr "" +"Χρησιμοποιήστε keyword μόνο όταν τα ονόματα έχουν νόημα και ο ορισμός της συνάρτησης " +"είναι πιο κατανοητός όταν είναι ρητός με ονόματα ή θέλετε να αποτρέψετε τους χρήστες να βασίζονται " +"στη θέση του επιχειρήματος που μεταβιβάζεται." #: tutorial/controlflow.rst:884 msgid "" "For an API, use positional-only to prevent breaking API changes if the " "parameter's name is modified in the future." msgstr "" +"Για ένα API, χρησιμοποιήστε το μόνο θέσης για να αποτρέψετε τη διακοπή των αλλαγών " +"τους API, εάν το όνομα της παραμέτρου τροποποιηθεί στο μέλλον." #: tutorial/controlflow.rst:890 msgid "Arbitrary Argument Lists" -msgstr "" +msgstr "Λίστες Αυθαίρετων Ορισμάτων" #: tutorial/controlflow.rst:895 msgid "" @@ -774,6 +1033,10 @@ msgid "" "wrapped up in a tuple (see :ref:`tut-tuples`). Before the variable number " "of arguments, zero or more normal arguments may occur. ::" msgstr "" +"Τέλος, η λιγότερο συχνά χρησιμοποιούμενη επιλογή είναι να ορίσετε ότι μια συνάρτηση " +"μπορεί να κληθεί μεέναν αυθαίρετο αριθμός ορισμάτων. Αυτά τα ορίσματα θα τυλιχθούν σε μια " +"πλειάδα (tuple) (βλ. :ref:`tut-tuples`). Πριν από τον μεταβλητό αριθμό ορισμάτων ενδέχεται " +"να προκύψουν μηδέν ή περισσότερα κανονικά ορίσματα. ::" #: tutorial/controlflow.rst:904 msgid "" @@ -783,10 +1046,15 @@ msgid "" "``*args`` parameter are 'keyword-only' arguments, meaning that they can only " "be used as keywords rather than positional arguments. ::" msgstr "" +"Κανονικά, αυτά τα *variadic* ορίσματα θα είναι τελευταία στη λίστα των επίσημων " +"παραμέτρων, επειδή συλλέγουν όλα τα υπόλοιπα ορίσματα εισόδου που μεταβιβάζονται στη " +"συνάρτηση. Οποιεσδήποτε τυπικές παράμετροι που εμφανίζονται μετά την παράμετρο " +"``*args`` είναι 'μόνο keyword' ορίσματα, που σημαίνει ότι μπορούν να χρησιμοποιηθούν μόνο ως " +"λέξεις-κλειδιά και όχι ως ορίσματα θέσης. ::" #: tutorial/controlflow.rst:921 msgid "Unpacking Argument Lists" -msgstr "" +msgstr "Unpacking Λίστες Ορισμάτων" #: tutorial/controlflow.rst:923 msgid "" @@ -797,16 +1065,24 @@ msgid "" "separately, write the function call with the ``*``\\ -operator to unpack " "the arguments out of a list or tuple::" msgstr "" +"Η αντίστροφη κατάσταση συμβαίνει όταν τα ορίσματα βρίσκονται ήδη σε μια λίστα ή " +"πλειάδα (tuple), αλλά πρέπει να αποσυμπιεστούν για μια κλήση συνάρτησης που απαιτεί " +"ξεχωριστά ορίσματα θέσης. Για παράδειγμα, η ενσωματωμένη (built-in) συνάρτηση :func:`range` " +"αναμένει ξεχωριστά *start* και *stop* ορισματα. Εάν δεν είναι διαθέσιμα ξεχωριστά, γράψτε την κλήση " +"συνάρτησης με τον ``*``\\ -τελεστή για να αποσυμπιέσετε τα ορίσματα από μια λίστα ή " +"πλειάδα (tuple)::" #: tutorial/controlflow.rst:939 msgid "" "In the same fashion, dictionaries can deliver keyword arguments with the " "``**``\\ -operator::" msgstr "" +"Με τον ίδιο τρόπο, τα λεξικά μπορούν αν παραδίδουν keyword ορίσματα με τον " +"``**``\\ -τελεστη::" #: tutorial/controlflow.rst:955 msgid "Lambda Expressions" -msgstr "" +msgstr "Εκφράσεις Lambda" #: tutorial/controlflow.rst:957 msgid "" @@ -818,22 +1094,31 @@ msgid "" "definitions, lambda functions can reference variables from the containing " "scope::" msgstr "" +"Μπορούν αν δημιουργηθούν μικρές ανώνυμες συναρτήσεις με το keyword :keyword:`lambda`. " +"Αυτή η συνάρτηση επιστρέφει το άθροισμα των δύο ορισμάτων της: ``lambda a, b: a+b``. " +"Οι συναρτήσεις Lambda μπορούν να χρησιμοποιηθούν όπου απαιτούνται αντικείμενα συνάρτησης. " +"Περιορίζονται συντακικά σε μία μόνο έκφραση. Σημασιολογικά, είναι απλώς syntactic sugar " +"για έναν ορισμό κανονικής συνάρτησης. Όπως οι ορισμοί ένθετων συναρτήσεων, οι συναρτήσεις " +"lambda μπορούν να παραπέμπουν σε μεταβλητές από το πεδίο που περιέχει::" #: tutorial/controlflow.rst:974 msgid "" "The above example uses a lambda expression to return a function. Another " "use is to pass a small function as an argument::" msgstr "" +"Το παραπάνω παράδειγμα χρησιμοποιεί μια έκφραση lambda για να επιστρέψει μια συνάρτηση. Μια άλλη " +"χρήση είναι η μετάδοση μιας μικρής συνάρτησης ως όρισμα::" #: tutorial/controlflow.rst:986 msgid "Documentation Strings" -msgstr "" +msgstr "Συμβολοσειρές Τεκμηρίωσης" #: tutorial/controlflow.rst:993 msgid "" "Here are some conventions about the content and formatting of documentation " "strings." msgstr "" +"Ακολουθούν ορισμένες συμβάσεις σχετικάμε το περιεχόμενο και τη μορφοποίηση των συμβολοσειρών τεκμηρίωσης." #: tutorial/controlflow.rst:996 msgid "" @@ -851,6 +1136,10 @@ msgid "" "The following lines should be one or more paragraphs describing the object's " "calling conventions, its side effects, etc." msgstr "" +"Εάν υπάρχουν περισσότερες γραμμές στη συμβολοσειρά τεκμηρίωσης, η δεύτερη γραμμήθα πρέπει " +"να είναι κενή, διαχωρίζοντας οπτικά τη σύνοψη από την υπόλοιπη περιγραφή. Οι ακόλουθες γραμμές " +"πρέπει να είναι μία ή περισσότερες παραγράφοι που περιγράφουν τις συμβάσεις κλήσης του αντικειμένου, " +"τις παρενέργειές του κ.λπ.." #: tutorial/controlflow.rst:1007 msgid "" @@ -866,14 +1155,25 @@ msgid "" "they occur all their leading whitespace should be stripped. Equivalence of " "whitespace should be tested after expansion of tabs (to 8 spaces, normally)." msgstr "" +"Ο parser της Python δεν αφαιρεί την εσοχή από τα literals της συμβολοσειράς πολλών " +"γραμμών στην Python, επομένως τα εργαλεία που επεξεργάζονται την τεκμηρίωση πρέπει " +"να αφαιρέσουν την εσοχή εάν είναι επιθυμητό. Αυτό γίνεται χρησιμοπιοώντας την ακόλουθη " +"σύμβαση. Η πρώτη μη κενή γραμμή *μετά* την πρώτη γραμμή της συμβολοσειράς καθορίζει το " +"μέγεθος της εσοχής για ολόκληρη τη συμβολοσειρά τεκμηρίωσης. (Δεν μπορούμε να χρησιμοποιήσουμε " +"την πρώτη γραμμή αφού είναι γενικά δίπλα στα εισαγωγικά της συμβολοσειράς, επομένως η εσοχή της δεν " +"είναι εμφανής στο literal της συμβολοσειράς.) Το κενό διάστημα " +"\"ισοδύναμο\" σε αυτήν την εσοχή αφαιρείται στη συνέχεια από την αρχή όλων των γραμμών της " +"συμβολοσειράς. Οι γραμμές που έχουν μικρότερη εσοχή δεν θα πρέπει να εμφανίζονται, αλλά αν εμφανιστούν " +"θα πρέπει να αφαιρεθεί όλο το αρχικό κενό τους. Η ισοδυναμία των κενών διαστημάτων θα πρέπει να " +"ελέγχεται μετά την επέκταση των καρτελών (σε 8 κενά, κανονικά)." #: tutorial/controlflow.rst:1019 msgid "Here is an example of a multi-line docstring::" -msgstr "" +msgstr "Ακολουθεί ένα παράδειγμα νεός πολλαπλών γραμμών docstring::" #: tutorial/controlflow.rst:1037 msgid "Function Annotations" -msgstr "" +msgstr "Annotations Συναρτήσεων" #: tutorial/controlflow.rst:1045 msgid "" @@ -881,6 +1181,10 @@ msgid "" "information about the types used by user-defined functions (see :pep:`3107` " "and :pep:`484` for more information)." msgstr "" +"Το :ref:`Function annotations ` είναι εντελώς προαιρετικές πληροφοριές " +"μεταδεδομένων σχετικά με τους τύπους χρησιμοποιούνται από συναρτήσεις που καθορίζονται " +"από το χρήστη (δείτε :pep:`3107` " +"και :pep:`484` για περισσότερες πληροφορίες)." #: tutorial/controlflow.rst:1049 msgid "" @@ -893,10 +1197,18 @@ msgid "" "denoting the end of the :keyword:`def` statement. The following example has " "a required argument, an optional argument, and the return value annotated::" msgstr "" +"Το :term:`Annotations ` αποθηκεύονται στο χαρακτηριστικό " +":attr:`!__annotations__` της συνάρτησης ως λεξικό και δεν έχουνε καμία επίδραση σε κανένα άλλο " +"μέρος της συνάρτησης. Τα annotations των παραμέτρων ορίζονται με άνω και κάτω τελεία " +"μετά το όνομα παραμέτρου, ακολουθούμενη από μια έκφραση που αξιλογεί την τιμή του annotation. " +"Τα annotaions επιστροφής ορίζονται από ένα literal ``->``, ακολοθούμενο από μια έκφραση, μεταξύ " +"της λίστας παραμέτρων και της άνω και κάτω τελείας που υποδηλώνει το τέλος της δήλωσης :keyword:`def`. " +"Το ακόλουθο παράδειγμα έχει ένα απαιτούμενο όρισμα, ένα προαιρετικό όρισμα και την επιστρεφόμενη τιμή σε " +"annotations::" #: tutorial/controlflow.rst:1071 msgid "Intermezzo: Coding Style" -msgstr "" +msgstr "Intermezzo: Στυλ Κώδικα" #: tutorial/controlflow.rst:1076 msgid "" @@ -906,6 +1218,11 @@ msgid "" "others. Making it easy for others to read your code is always a good idea, " "and adopting a nice coding style helps tremendously for that." msgstr "" +"Τώρα που πρόκειται να γράψετε μεγαλύτερα, και πιο σύνθετα κομμάτια της Python, είνι η " +"κατάλληλη στιγμή να μιλήσετε για *στυλ κώδικα*. Οι περισσότερες γλώσσες μπορούν να γραφτούν " +"(ή πιο συνοπτικές, *μοροφοποιημένες*) σε διαφορετικά στυλ· μερικές είναι πιο ευανάγνωστες από άλλες. " +"Το να διευκολύνετε τους άλλους να διαβάσουν τον κώδικα σας είναι πάντα μια καλή ιδέα και η υιοθέτηση ενός " +"ωραίου στυλ κώδικα βοηθάει πάρα πολύ σε αυτό." #: tutorial/controlflow.rst:1082 msgid "" @@ -914,10 +1231,13 @@ msgid "" "Python developer should read it at some point; here are the most important " "points extracted for you:" msgstr "" +"Για την Python, το :pep:`8` έχει αναδειχθεί ως οδηγός στηλ στον οποίο τηρούν τα περισσότερα έργα· " +"προωθεί ένα πολύ ευανάγνωστο και ευχάριστο στυλ κώδικα. Κάθε προγραμματιστής Python θα πρέπει να το " +"διαβάσει κάποια στιγμή· εδώ είναι τα πιο σημαντικό σημεία που εξάγονται για εσάς:" #: tutorial/controlflow.rst:1087 msgid "Use 4-space indentation, and no tabs." -msgstr "" +msgstr "Χρησιμοποιήστε εσοχή 4 διαστημάτων και όχι tabs." #: tutorial/controlflow.rst:1089 msgid "" @@ -925,36 +1245,45 @@ msgid "" "nesting depth) and large indentation (easier to read). Tabs introduce " "confusion, and are best left out." msgstr "" +"Τα 4 κενά είναι ένας καλό συμβιβασμό μεταξύ της μικρής εσοχής (επιτρέπει μεγαλύτερο " +"βάθος εμφώλευσης) και της μεγάλης εσοχής (ευκολότερη στην ανάγνωση). Τα tabs δημιουργούν " +"σύγχυση, και είναι καλύτερο να παραμείνουν απέξω." #: tutorial/controlflow.rst:1093 msgid "Wrap lines so that they don't exceed 79 characters." -msgstr "" +msgstr "Τυλίξτε τις γραμμές έτσι ώστε να μην υπερβαίνουν τους 79 χαρακτήρες." #: tutorial/controlflow.rst:1095 msgid "" "This helps users with small displays and makes it possible to have several " "code files side-by-side on larger displays." msgstr "" +"Αυτό βοηθά του χρήστες με μικρές οθόνες και καθιστά δυνατή την ύπαρξη πολλών " +"αρχείων κώδικα δίπλα-δίπλα σε μεγαλύτερες οθόνες." #: tutorial/controlflow.rst:1098 msgid "" "Use blank lines to separate functions and classes, and larger blocks of code " "inside functions." msgstr "" +"Χρησιμοποιείστε κενές γραμμές για να διαχωρίσετε συναρτήσεις και κλάσεις και μεγαλύτερα " +"μπλοκ κώδικα μέσα συναρτήσεις." #: tutorial/controlflow.rst:1101 msgid "When possible, put comments on a line of their own." -msgstr "" +msgstr "Όταν είναι δυνατόν, βάλτε σχόλια σε μια δική τους γραμμή." #: tutorial/controlflow.rst:1103 msgid "Use docstrings." -msgstr "" +msgstr "Χρησιμοποιήστε docstrings." #: tutorial/controlflow.rst:1105 msgid "" "Use spaces around operators and after commas, but not directly inside " "bracketing constructs: ``a = f(1, 2) + g(3, 4)``." msgstr "" +"Χρησιμοποιήστε κενά γύρω από τελεστές και μετά από κόμματα, αλλά όχι απευθείας μέσα " +"δε δομές αγκύλων: ``a = f(1, 2) + g(3, 4)``." #: tutorial/controlflow.rst:1108 msgid "" @@ -963,6 +1292,10 @@ msgid "" "functions and methods. Always use ``self`` as the name for the first method " "argument (see :ref:`tut-firstclasses` for more on classes and methods)." msgstr "" +"Ονομάστε τις κλάσεις και τις συναρτήσεις σας με συνέπεια· η σύμβαση είναι " +"να χρησιμοποιείτε ``UpperCamelCase`` για τις κλάσεις και ``lowercase_with_underscores`` " +"για τις συναρτήσεις και τις μεθόδους. Χρησιμοποιείτε πάντα το ``self`` ως όνομα για το " +"πρώτο όρισμα μεθόδου (δείτε :ref:`tut-firstclasses` για περισσότερα σχετικά με τις κλάσεις και τις μεθόδους)." #: tutorial/controlflow.rst:1113 msgid "" @@ -970,6 +1303,9 @@ msgid "" "environments. Python's default, UTF-8, or even plain ASCII work best in any " "case." msgstr "" +"Μην χρησιμοποιείτε φανταχτερές κωδικοποιήσεις εάν ο κώδικας σας προορίζεται να χρησιμοποιηθεί " +"σε διεθνή περιβάλλοντα. Η προεπιλογή της Python, UTF-8, ή ακόμα και το απλό ASCII λειτουργούν " +"καλύτερα σε κάθε περίπτωση." #: tutorial/controlflow.rst:1117 msgid "" @@ -977,10 +1313,13 @@ msgid "" "slightest chance people speaking a different language will read or maintain " "the code." msgstr "" +"Ομοίως, μη χρησιμοποιείτε χαρακτήρες που δεν είναι ASCII σε αναγνωριστικά εάν υπάρχει " +"μόνο η παραμικρή πιθανότητα οι άνθρωποι που μιλούν διαφορετική γλώσσα να διαβάσουν ή να " +"διατηρήσουν τον κώδικα." #: tutorial/controlflow.rst:1123 msgid "Footnotes" -msgstr "" +msgstr "Υποσημειώσεις" #: tutorial/controlflow.rst:1124 msgid "" @@ -988,63 +1327,66 @@ msgid "" "a mutable object is passed, the caller will see any changes the callee makes " "to it (items inserted into a list)." msgstr "" +"Στην πραγματικότητα, η *κλήση με αναφορά αντικειμένου* θα ήταν μια καλύτερη περιγραφή, καθώς " +"εάν μεταβιβαστεί ένα μεταβλητό αντικείμενο, ο καλών θα δει τυχόν αλλαγές που κάνει ο καλών σε αυτό " +"(στοιχεία που εισάγονται σε μια λίστα)." #: tutorial/controlflow.rst:48 msgid "statement" -msgstr "" +msgstr "statement" #: tutorial/controlflow.rst:48 msgid "for" -msgstr "" +msgstr "for" #: tutorial/controlflow.rst:988 msgid "documentation strings" -msgstr "" +msgstr "documentation strings" #: tutorial/controlflow.rst:988 msgid "docstrings" -msgstr "" +msgstr "docstrings" #: tutorial/controlflow.rst:988 msgid "strings, documentation" -msgstr "" +msgstr "strings, documentation" #: tutorial/controlflow.rst:892 msgid "* (asterisk)" -msgstr "" +msgstr "* (αστερίσκος)" #: tutorial/controlflow.rst:936 msgid "in function calls" -msgstr "" +msgstr "in function calls" #: tutorial/controlflow.rst:936 msgid "**" -msgstr "" +msgstr "**" #: tutorial/controlflow.rst:1040 msgid "function" -msgstr "" +msgstr "function" #: tutorial/controlflow.rst:1040 msgid "annotations" -msgstr "" +msgstr "annotations" #: tutorial/controlflow.rst:1040 msgid "->" -msgstr "" +msgstr "->" #: tutorial/controlflow.rst:1040 msgid "function annotations" -msgstr "" +msgstr "function annotations" #: tutorial/controlflow.rst:1040 msgid ": (colon)" -msgstr "" +msgstr ": (colon)" #: tutorial/controlflow.rst:1074 msgid "coding" -msgstr "" +msgstr "coding" #: tutorial/controlflow.rst:1074 msgid "style" -msgstr "" +msgstr "style" From 090d1b698ad60b4fe1de8471a0f5aaeb2f269c9c Mon Sep 17 00:00:00 2001 From: skpanagiotis Date: Thu, 26 Sep 2024 11:01:05 +0300 Subject: [PATCH 02/10] Update translation for tutorial/controlflow --- dictionaries/main.txt | 25 ++ tutorial/controlflow.po | 732 ++++++++++++++++++++++------------------ 2 files changed, 434 insertions(+), 323 deletions(-) diff --git a/dictionaries/main.txt b/dictionaries/main.txt index 8ff61e18..34a24c27 100644 --- a/dictionaries/main.txt +++ b/dictionaries/main.txt @@ -32,6 +32,7 @@ Index Initiatives Input Insert +Intermezzo Intra L Linux @@ -40,6 +41,7 @@ Local Look Looking Looping +Loops Ltd M Marek @@ -61,6 +63,7 @@ Readline Reilly Research Reston +Rust Search Sets Shop @@ -108,9 +111,12 @@ bytecode bytecodes bytes c +cache +cached callable callables callbacks +case cfg chomp class @@ -142,12 +148,15 @@ decorator decorators del delegation +delimiters descriptor descriptors dict dispatch dll doc +docstring +docstrings doctest dots dotted @@ -156,12 +165,14 @@ dtoa duck editor editors +else email exe expat expressions extension f +false finder finders first @@ -176,9 +187,11 @@ gdb generator hash hints +holder home hot i +if import importer importing @@ -232,6 +245,7 @@ linking linters list literal +literals loader loaders looks @@ -272,13 +286,18 @@ path pdb pip pipes +place +positional project prompt prompts +provisional py pyc pyd quacks +raise +range raw re read @@ -311,6 +330,7 @@ switch switches symlink symlinks +syntactic tab tabs tag @@ -362,11 +382,13 @@ zlib αντ αντικειμενοστρεφής αντικειμενοστρεφείς +αντιταχθείτε βλ γλωσσαρίου δηλ διαχειρίζοντας διεπαφών +εμφώλευσης εντοπιστές επαναχρησιμοποιηθούν επανεισάγω @@ -384,6 +406,7 @@ zlib μακροεντολές μακροεντολή μετα +μεταδεδομένων μετακλάσεων οκταδική οκταδικής @@ -414,11 +437,13 @@ zlib συντηρησιμότητα συσχετιστικές συσχετιστικοί +τυλιχθούν υ υποακολουθία υποακολουθίας υποαντικείμενα υποεντολών +υποενότητα υποενότητες υποκατάλογος υποκλάσεις diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index fe137653..b8db6cf5 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -9,12 +9,14 @@ msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-03-14 12:51+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"PO-Revision-Date: 2024-09-26 09:49+0300\n" "Last-Translator: Panagiotis Skias \n" "Language-Team: PyGreece \n" +"Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.5\n" #: tutorial/controlflow.rst:5 msgid "More Control Flow Tools" @@ -25,9 +27,8 @@ msgid "" "As well as the :keyword:`while` statement just introduced, Python uses a few " "more that we will encounter in this chapter." msgstr "" -"Εκτός από τη πρόταση :keyword:`while` που μόλις εισήχθη, η Python χρησιμοποιεί μερικές ακόμη " -"που θα συναντήσουμε σε αυτό το κεφάλαιο." - +"Εκτός από τη πρόταση :keyword:`while` που μόλις εισήχθη, η Python " +"χρησιμοποιεί μερικές ακόμη που θα συναντήσουμε σε αυτό το κεφάλαιο." #: tutorial/controlflow.rst:14 msgid ":keyword:`!if` Statements" @@ -38,7 +39,8 @@ msgid "" "Perhaps the most well-known statement type is the :keyword:`if` statement. " "For example::" msgstr "" -"Ίσως ο πιο γνωστός τύπος δήλωσης είναι η πρόταση :keyword:`if`. Για παράδειγμα::" +"Ίσως ο πιο γνωστός τύπος δήλωσης είναι η πρόταση :keyword:`if`. Για " +"παράδειγμα::" #: tutorial/controlflow.rst:33 msgid "" @@ -48,11 +50,12 @@ msgid "" "keyword:`!elif` ... :keyword:`!elif` ... sequence is a substitute for the " "``switch`` or ``case`` statements found in other languages." msgstr "" -"Μπορεί να υπάρχουν μηδέν ή περισσότερα μέρη :keyword:`elif` και το τμήμα " -":keyword:`else` είναι προαιρετικό. To keyword ':keyword:`!elif`' είναι συντομογραφία του " -"'else if', και είναι χρήσιμη για να αποφύγετε την υπερβολίκή εσοχή. Μια ακολουθία " -"keyword:`!if` ... :keyword:`!elif` ... :keyword:`!elif` ... είναι υποκατάστατο των δηλώσεων " -"``switch`` ή ``case`` που βρέθηκαν σε άλλες γλώσσες." +"Μπορεί να υπάρχουν μηδέν ή περισσότερα μέρη :keyword:`elif` και το τμήμα :" +"keyword:`else` είναι προαιρετικό. To keyword ':keyword:`!elif`' είναι " +"συντομογραφία του 'else if', και είναι χρήσιμη για να αποφύγετε την " +"υπερβολική εσοχή. Μια ακολουθία keyword:`!if` ... :keyword:`!elif` ... :" +"keyword:`!elif` ... είναι υποκατάστατο των δηλώσεων ``switch`` ή ``case`` " +"που βρέθηκαν σε άλλες γλώσσες." #: tutorial/controlflow.rst:39 msgid "" @@ -60,9 +63,10 @@ msgid "" "specific types or attributes, you may also find the :keyword:`!match` " "statement useful. For more details see :ref:`tut-match`." msgstr "" -"Εάν συγκρίνετε την ίδια τιμή με πολλές σταθερές ή ελέγχετε για συγκεκριμένους τύπους ή χαρακτηριστικά, " -"μπορεί επίσης να βρείτε χρήσιμη τη δήλωση :keyword:`!match` " -"Για περισσότερες λεπτομέρειες, ανατρέξτε στο :ref:`tut-match`." +"Εάν συγκρίνετε την ίδια τιμή με πολλές σταθερές ή ελέγχετε για " +"συγκεκριμένους τύπους ή χαρακτηριστικά, μπορεί επίσης να βρείτε χρήσιμη τη " +"δήλωση :keyword:`!match` Για περισσότερες λεπτομέρειες, ανατρέξτε στο :ref:" +"`tut-match`." #: tutorial/controlflow.rst:46 msgid ":keyword:`!for` Statements" @@ -78,11 +82,13 @@ msgid "" "a string), in the order that they appear in the sequence. For example (no " "pun intended):" msgstr "" -"Η δήλωση :keyword:`for` στην Python διαφέρει λίγο από αυτό που μπορεί να έχετε συνηθίσει " -"στη C ή στην Pascal. Αντί να επαναλαμβάνετε πάντα μια αριθμητική πρόοδο αριθμών (όπως στη " -"Pascal) ή να δίνετε στον χρήστη τη δυνατότητα να ορίσει τόσο το βήμα επανάληψης όσο και τη συνθήκη διακοπής " -"(όπως C),η δήλωση της Python :keyword:`!for` επαναλαμβάνεται πάνω από τα στοιχεία οποιασδήπτοε ακολουθίας " -"(λίστας ή συμβολοσειράς), με τη σειρά που εμφανίζονται στην ακολουθία. Για παράδειγμα (χωρίς λογοπαίγνιο)::" +"Η δήλωση :keyword:`for` στην Python διαφέρει λίγο από αυτό που μπορεί να " +"έχετε συνηθίσει στη C ή στην Pascal. Αντί να επαναλαμβάνετε πάντα μια " +"αριθμητική πρόοδο αριθμών (όπως στη Pascal) ή να δίνετε στον χρήστη τη " +"δυνατότητα να ορίσει τόσο το βήμα επανάληψης όσο και τη συνθήκη διακοπής " +"(όπως C),η δήλωση της Python :keyword:`!for` επαναλαμβάνεται πάνω από τα " +"στοιχεία οποιασδήποτε ακολουθίας (λίστας ή συμβολοσειράς), με τη σειρά που " +"εμφανίζονται στην ακολουθία. Για παράδειγμα (χωρίς λογοπαίγνιο)::" #: tutorial/controlflow.rst:72 msgid "" @@ -90,8 +96,9 @@ msgid "" "can be tricky to get right. Instead, it is usually more straight-forward to " "loop over a copy of the collection or to create a new collection::" msgstr "" -"Ο κώδικας που τροποποιεί μια συλλογή ενώ επαναλαμβάνεται πάνω από την ίδια συλλογή μπορεί να είναι δύσκολος " -"για να γίνει σωστός. Αντίθετα, είναι συνήθως πιο απλό να κάνετε loop πάνω από ένα αντίγραφο συλλογής ή να " +"Ο κώδικας που τροποποιεί μια συλλογή ενώ επαναλαμβάνεται πάνω από την ίδια " +"συλλογή μπορεί να είναι δύσκολος για να γίνει σωστός. Αντίθετα, είναι " +"συνήθως πιο απλό να κάνετε loop πάνω από ένα αντίγραφο συλλογής ή να " "δημιουργήσετε μια νέα συλλογή::" #: tutorial/controlflow.rst:94 @@ -103,8 +110,8 @@ msgid "" "If you do need to iterate over a sequence of numbers, the built-in function :" "func:`range` comes in handy. It generates arithmetic progressions::" msgstr "" -"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη συνάρτηση " -":func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές προόδους::" +"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη " +"συνάρτηση :func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές προόδους::" #: tutorial/controlflow.rst:108 msgid "" @@ -113,30 +120,31 @@ msgid "" "10. It is possible to let the range start at another number, or to specify " "a different increment (even negative; sometimes this is called the 'step')::" msgstr "" -"Το δεδομένο τελικό σημείο δεν αποτελεί ποτέ μέρος της παραγόμενης ακολουθίας· το " -"``range(10)`` δημιουργεί 10 τιμές, τους δείκτες για στοιχεία μιας ακολοθίας μήκους 10. " -"Είναι δυνατόν να αφήσουμε το εύρος να ξεκινά από άλλο αριθμό ή για να καθορίσετε μια διαφορετική " -"προσαύξηση (ακόμη και αρνητική, μερικές φορές αυτό ονομάζεται 'βήμα')::" +"Το δεδομένο τελικό σημείο δεν αποτελεί ποτέ μέρος της παραγόμενης " +"ακολουθίας· το ``range(10)`` δημιουργεί 10 τιμές, τους δείκτες για στοιχεία " +"μιας ακολουθίας μήκους 10. Είναι δυνατόν να αφήσουμε το εύρος να ξεκινά από " +"άλλο αριθμό ή για να καθορίσετε μια διαφορετική προσαύξηση (ακόμη και " +"αρνητική, μερικές φορές αυτό ονομάζεται 'βήμα')::" #: tutorial/controlflow.rst:122 msgid "" "To iterate over the indices of a sequence, you can combine :func:`range` " "and :func:`len` as follows::" msgstr "" -"Για να γίνουν iterrate οι δείκτες μια ακολουθίας, μπορείτε να συνδυάσετε τις :func:`range` " -"και :func:`len` ως εξής::" +"Για να γίνουν iterate οι δείκτες μια ακολουθίας, μπορείτε να συνδυάσετε τις :" +"func:`range` και :func:`len` ως εξής::" #: tutorial/controlflow.rst:135 msgid "" "In most such cases, however, it is convenient to use the :func:`enumerate` " "function, see :ref:`tut-loopidioms`." msgstr "" -"Στις περισσότερες τέτοιες περιπτώσεις, ωστόσο, είναι βολικό να χρησιμοποιήσετε τη συνάρτηση " -":func:`enumerate`, δείτε :ref:`tut-loopidioms`." +"Στις περισσότερες τέτοιες περιπτώσεις, ωστόσο, είναι βολικό να " +"χρησιμοποιήσετε τη συνάρτηση :func:`enumerate`, δείτε :ref:`tut-loopidioms`." #: tutorial/controlflow.rst:138 msgid "A strange thing happens if you just print a range::" -msgstr "Ένα περιέργο πράγμα συμβαίνει αν απλώς εκτυπώσετε ένα range::" +msgstr "Ένα περίεργο πράγμα συμβαίνει αν απλώς εκτυπώσετε ένα range::" #: tutorial/controlflow.rst:143 msgid "" @@ -145,10 +153,11 @@ msgid "" "items of the desired sequence when you iterate over it, but it doesn't " "really make the list, thus saving space." msgstr "" -"Με πολλούς τρόπους το αντικείμενο που επιστρέφεται από το :func:`range` συμπεριφέρεται σαν να είναι " -"μια λίστα, αλλά στην πραγματικότητα δεν είναι. Είναι ένα αντικείμενο που επιστρέφει τα διαδοχικά στοιχεία " -"της επιθυμητής ακολουθίας όταν κάνετε επανάληψη πάνω του, αλλά δεν μπαίνει πραγματικά στη λίστα, " -"εξοικονομώντας έτσι χώρο." +"Με πολλούς τρόπους το αντικείμενο που επιστρέφεται από το :func:`range` " +"συμπεριφέρεται σαν να είναι μια λίστα, αλλά στην πραγματικότητα δεν είναι. " +"Είναι ένα αντικείμενο που επιστρέφει τα διαδοχικά στοιχεία της επιθυμητής " +"ακολουθίας όταν κάνετε επανάληψη πάνω του, αλλά δεν μπαίνει πραγματικά στη " +"λίστα, εξοικονομώντας έτσι χώρο." #: tutorial/controlflow.rst:148 msgid "" @@ -159,10 +168,10 @@ msgid "" "that takes an iterable is :func:`sum`::" msgstr "" "Λέμε ότι ένα τέτοιο αντικείμενο είναι :term:`iterable`, δηλαδή, κατάλληλο ως " -"στόχος για συναρτήσεις και κατασκευές που περιμένουν κάτι από το οποίο μπορούν να λάβουν " -"διαδοχικά στοιχεία μέχρι να εξαντληθεί η προσφορά. Είδαμε ότι η δήλωση :" -"keyword:`for` είναι μια τέτοια κατασκευή, ενώ ένα παράδειγμα συνάρτησης που παίρνει ένα " -"iterable είναι :func:`sum`::" +"στόχος για συναρτήσεις και κατασκευές που περιμένουν κάτι από το οποίο " +"μπορούν να λάβουν διαδοχικά στοιχεία μέχρι να εξαντληθεί η προσφορά. Είδαμε " +"ότι η δήλωση :keyword:`for` είναι μια τέτοια κατασκευή, ενώ ένα παράδειγμα " +"συνάρτησης που παίρνει ένα iterable είναι η :func:`sum`::" #: tutorial/controlflow.rst:157 msgid "" @@ -170,9 +179,9 @@ msgid "" "arguments. In chapter :ref:`tut-structures`, we will discuss in more detail " "about :func:`list`." msgstr "" -"Αργότερα θα δούμε περισσότερες συναρτήσεις που επιστρέφουν iterables και λαμβάνουν τους " -"iterables ως ορίσματα. Στο κεφάλαιο :ref:`tut-structures`, θα συζητήσουμε λεπτομερέστερα για το " -":func:`list`." +"Αργότερα θα δούμε περισσότερες συναρτήσεις που επιστρέφουν iterables και " +"λαμβάνουν τους iterables ως ορίσματα. Στο κεφάλαιο :ref:`tut-structures`, " +"θα συζητήσουμε λεπτομερέστερα για το :func:`list`." #: tutorial/controlflow.rst:164 msgid "" @@ -187,54 +196,56 @@ msgid "" "The :keyword:`break` statement breaks out of the innermost enclosing :" "keyword:`for` or :keyword:`while` loop." msgstr "" -"Η δήλωση :keyword:`break` ξεφεύγει από τον πιο εσωτερικό βρόχο :" -"keyword:`for` ή :keyword:`while`." +"Η δήλωση :keyword:`break` ξεφεύγει από τον πιο εσωτερικό βρόχο :keyword:" +"`for` ή :keyword:`while`." #: tutorial/controlflow.rst:169 msgid "" "A :keyword:`!for` or :keyword:`!while` loop can include an :keyword:`!else` " "clause." msgstr "" -"Ένας βρόχος :keyword:`!for` ή :keyword:`!while` μπορεί να περιλαμβάνει μια πρόταση " -":keyword:`!else`." +"Ένας βρόχος :keyword:`!for` ή :keyword:`!while` μπορεί να περιλαμβάνει μια " +"πρόταση :keyword:`!else`." #: tutorial/controlflow.rst:171 msgid "" "In a :keyword:`for` loop, the :keyword:`!else` clause is executed after the " "loop reaches its final iteration." msgstr "" -"Σε έναν βρόχο :keyword:`for`, η πρόταση :keyword:`!else` εκτελείται αφού ο βρόχος φτάσει στην τελική του " -"επανάληψη." +"Σε έναν βρόχο :keyword:`for`, η πρόταση :keyword:`!else` εκτελείται αφού ο " +"βρόχος φτάσει στην τελική του επανάληψη." #: tutorial/controlflow.rst:174 msgid "" "In a :keyword:`while` loop, it's executed after the loop's condition becomes " "false." msgstr "" -"Σε έναν βρόχο :keyword:`while`, εκτελείται αφού η συνθήκη του βρόχου είναι ψευδής." +"Σε έναν βρόχο :keyword:`while`, εκτελείται αφού η συνθήκη του βρόχου είναι " +"ψευδής." #: tutorial/controlflow.rst:176 msgid "" "In either kind of loop, the :keyword:`!else` clause is **not** executed if " "the loop was terminated by a :keyword:`break`." msgstr "" -"Σε οποιοδήποτε είδος βρόχου, η πρόταση :keyword:`!else` **δεν** εκτελείται εάν ο βρόχος " -"τερματίστηκε με μια λέξη :keyword:`break`." +"Σε οποιοδήποτε είδος βρόχου, η πρόταση :keyword:`!else` **δεν** εκτελείται " +"εάν ο βρόχος τερματίστηκε με μια λέξη :keyword:`break`." #: tutorial/controlflow.rst:179 msgid "" "This is exemplified in the following :keyword:`!for` loop, which searches " "for prime numbers::" msgstr "" -"Αυτό αποδεικνύεται στον ακόλουθο βρόχο :keyword:`!for`, που αναζητά πρώτους αριθμούς::" +"Αυτό αποδεικνύεται στον ακόλουθο βρόχο :keyword:`!for`, που αναζητά πρώτους " +"αριθμούς::" #: tutorial/controlflow.rst:200 msgid "" "(Yes, this is the correct code. Look closely: the ``else`` clause belongs " "to the :keyword:`for` loop, **not** the :keyword:`if` statement.)" msgstr "" -"(Ναι, αυτός είναι ο σωστός κώδικας. Κοιτάξτε προσεκτικά: η πρόταση ``else`` ανήκει " -"στον βρόχο :keyword:`for`, **όχι** στη δήλωση :keyword:`if`.)" +"(Ναι, αυτός είναι ο σωστός κώδικας. Κοιτάξτε προσεκτικά: η πρόταση ``else`` " +"ανήκει στον βρόχο :keyword:`for`, **όχι** στη δήλωση :keyword:`if`.)" #: tutorial/controlflow.rst:203 msgid "" @@ -245,18 +256,20 @@ msgid "" "``break`` occurs. For more on the :keyword:`!try` statement and exceptions, " "see :ref:`tut-handling`." msgstr "" -"Όταν χρησιμοποιείται με έναν βρόχο, η πρόταση ``else`` έχει περισσότερα κοινά με την πρόταση " -"``else`` μιας πρότασης :keyword:`try` παρά με αυτήν των δηλώσεων keyword:`if`: η πρόταση " -"``else`` μιας δήλωσης :keyword:`try` εκτελείται όταν δεν υπάρχει εξαίρεση, και η πρόταση ``else`` " -"ενός βρόχου εκτελείται όταν δεν υπάρχει ``break``. Για περισσότερα με τη δήλωση :keyword:`!try` και τις εξαιρέσεις, " -"δείτε :ref:`tut-handling`." +"Όταν χρησιμοποιείται με έναν βρόχο, η πρόταση ``else`` έχει περισσότερα " +"κοινά με την πρόταση ``else`` μιας πρότασης :keyword:`try` παρά με αυτήν των " +"δηλώσεων keyword:`if`: η πρόταση ``else`` μιας δήλωσης :keyword:`try` " +"εκτελείται όταν δεν υπάρχει εξαίρεση, και η πρόταση ``else`` ενός βρόχου " +"εκτελείται όταν δεν υπάρχει ``break``. Για περισσότερα με τη δήλωση :keyword:" +"`!try` και τις εξαιρέσεις, δείτε :ref:`tut-handling`." #: tutorial/controlflow.rst:210 msgid "" "The :keyword:`continue` statement, also borrowed from C, continues with the " "next iteration of the loop::" msgstr "" -"Η δήλωση :keyword:`continue`, επίσης δανεισμένη από τη C, συνεχίζεται με την επόμενη επανάληψη του βρόχου::" +"Η δήλωση :keyword:`continue`, επίσης δανεισμένη από τη C, συνεχίζεται με την " +"επόμενη επανάληψη του βρόχου::" #: tutorial/controlflow.rst:231 msgid ":keyword:`!pass` Statements" @@ -267,8 +280,9 @@ msgid "" "The :keyword:`pass` statement does nothing. It can be used when a statement " "is required syntactically but the program requires no action. For example::" msgstr "" -"Η δήλωση :keyword:`pass` δεν κάνει τίποτα. Μπορεί να χρησιμοποιηθεί όταν απαιτείται συντακτικά μια πρόταση, αλλά " -"το πρόγραμμα δεν απαιτεί καμία ενέργεια. Για παράδειγμα::" +"Η δήλωση :keyword:`pass` δεν κάνει τίποτα. Μπορεί να χρησιμοποιηθεί όταν " +"απαιτείται συντακτικά μια πρόταση, αλλά το πρόγραμμα δεν απαιτεί καμία " +"ενέργεια. Για παράδειγμα::" #: tutorial/controlflow.rst:240 msgid "This is commonly used for creating minimal classes::" @@ -281,9 +295,10 @@ msgid "" "to keep thinking at a more abstract level. The :keyword:`!pass` is silently " "ignored::" msgstr "" -"Ένα άλλο μέρος :keyword:`pass` που μπορεί να χρησιμοποιηθεί είναι ως place-holder για μια " -"συνάρτηση ή το σώμα υπό όρους όταν εργάζεστε σε νέο κώδικα, επιτρέποντας σας να συνεχίσετε " -"να σκέφτεστε σε ένα πιο αφηρημένο επίπεδο. Το :keyword:`!pass` αγνοείται σιωπηλά::" +"Ένα άλλο μέρος :keyword:`pass` που μπορεί να χρησιμοποιηθεί είναι ως place-" +"holder για μια συνάρτηση ή το σώμα υπό όρους όταν εργάζεστε σε νέο κώδικα, " +"επιτρέποντας σας να συνεχίσετε να σκέφτεστε σε ένα πιο αφηρημένο επίπεδο. " +"Το :keyword:`!pass` αγνοείται σιωπηλά::" #: tutorial/controlflow.rst:258 msgid ":keyword:`!match` Statements" @@ -299,11 +314,13 @@ msgid "" "also extract components (sequence elements or object attributes) from the " "value into variables." msgstr "" -"Μια δήλωση :keyword:`match` παίρνει μια έκφραση και συγκρίνει την τιμή της με διαδοχικά μοτίβα " -"που δίνονται ως ένα ή περισσότερα μπλοκ πεζών-κεφαλαίων. Αυτή είναι επιφανειακά παρόμοια με μια πρόταση " -"switch στην C, Java ή JavaScript (και πολλές άλλες γλώσσες), αλλά είναι πιο παρόμοια με την αντιστοίχιση " -"προτύπων σε γλώσσες όπως η Rust ή η Haskell. Εκτελείται μόνο το πρώτο μοτίβο που ταιριάζει και μπορεί επίσης " -"να εξαγάγει στοιχεία (στοιχεία ακολουθίας ή ιδιότητες αντικειμένου) από την τιμή σε μεταβλητές." +"Μια δήλωση :keyword:`match` παίρνει μια έκφραση και συγκρίνει την τιμή της " +"με διαδοχικά μοτίβα που δίνονται ως ένα ή περισσότερα μπλοκ πεζών-" +"κεφαλαίων. Αυτή είναι επιφανειακά παρόμοια με μια πρόταση switch στην C, " +"Java ή JavaScript (και πολλές άλλες γλώσσες), αλλά είναι πιο παρόμοια με την " +"αντιστοίχιση προτύπων σε γλώσσες όπως η Rust ή η Haskell. Εκτελείται μόνο το " +"πρώτο μοτίβο που ταιριάζει και μπορεί επίσης να εξαγάγει στοιχεία (στοιχεία " +"ακολουθίας ή ιδιότητες αντικειμένου) από την τιμή σε μεταβλητές." #: tutorial/controlflow.rst:268 msgid "" @@ -316,21 +333,24 @@ msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match. If no case matches, none of the branches is executed." msgstr "" -"Σημειώστε το τελευταίο μπλοκ: το \"όνομα μεταβλητής\" ``_`` λειτουργεί ως *μπαλαντέρ* και δεν " -"αποτυγχάνει ποτέ να ταιριάζει. Εάν δεν ταιριάζει κανένα case, κανένας από τους κλάδους δεν εκτελείται." +"Σημειώστε το τελευταίο μπλοκ: το \"όνομα μεταβλητής\" ``_`` λειτουργεί ως " +"*μπαλαντέρ* και δεν αποτυγχάνει ποτέ να ταιριάζει. Εάν δεν ταιριάζει κανένα " +"case, κανένας από τους κλάδους δεν εκτελείται." #: tutorial/controlflow.rst:284 msgid "" "You can combine several literals in a single pattern using ``|`` (\"or\")::" msgstr "" -"Μπορείτε να συνδυάσετε πολλά γράμματα σε ένα μόνο μοτίβο χρησιμοποιώντας το ``|`` (\"ή\")::" +"Μπορείτε να συνδυάσετε πολλά γράμματα σε ένα μόνο μοτίβο χρησιμοποιώντας το " +"``|`` (\"ή\")::" #: tutorial/controlflow.rst:289 msgid "" "Patterns can look like unpacking assignments, and can be used to bind " "variables::" msgstr "" -"Τα μοτίβα μπορεί να μοιάζουν με αναθέσεις unpacking, και μπορούν αν χρησιμοποιηθούν για τη σύνδεση μεταβλητών::" +"Τα μοτίβα μπορεί να μοιάζουν με αναθέσεις unpacking, και μπορούν να " +"χρησιμοποιηθούν για τη σύνδεση μεταβλητών::" #: tutorial/controlflow.rst:305 msgid "" @@ -341,11 +361,12 @@ msgid "" "which makes it conceptually similar to the unpacking assignment ``(x, y) = " "point``." msgstr "" -"Μελετήστε το ένα προσεκτικά! Το πρώτο μοτίβο έχει δύο literals, και μπορεί να θεωρηθεί ως " -"επέκταση του literal μοτίβου που φαίνεται παραπάνω. Αλλά τα επόμενα δύο μοτίβα συνδυάζουν ένα " -"literal σε μια μεταβλητή, και η μεταβλητή *δεσμεύει* μια τιμή από το θέμα (``point``). Το τέταρτο " -"μοτίβο συλλαμβάνει δύο τιμές, γεγονός που το κάνει εννοιολογικά παρόμοιο με την ανάθεση unpacking " -"``(x, y) = point``." +"Μελετήστε το ένα προσεκτικά! Το πρώτο μοτίβο έχει δύο literals, και μπορεί " +"να θεωρηθεί ως επέκταση του literal μοτίβου που φαίνεται παραπάνω. Αλλά τα " +"επόμενα δύο μοτίβα συνδυάζουν ένα literal σε μια μεταβλητή, και η μεταβλητή " +"*δεσμεύει* μια τιμή από το θέμα (``point``). Το τέταρτο μοτίβο συλλαμβάνει " +"δύο τιμές, γεγονός που το κάνει εννοιολογικά παρόμοιο με την ανάθεση " +"unpacking ``(x, y) = point``." #: tutorial/controlflow.rst:312 msgid "" @@ -353,8 +374,9 @@ msgid "" "followed by an argument list resembling a constructor, but with the ability " "to capture attributes into variables::" msgstr "" -"Εάν χρησιμοποιείτε κλάσεις για τη δομή των δεδομένων σας, μπορείτε να χρησιμοποιήσετε το όνομα της κλάσης " -"ακολουθούμενο από μια λίστα ορισμάτων που μοιάζει με έναν κατασκευαστή, αλλά με τη δυνατότητα να συλλαμβάνει " +"Εάν χρησιμοποιείτε κλάσεις για τη δομή των δεδομένων σας, μπορείτε να " +"χρησιμοποιήσετε το όνομα της κλάσης ακολουθούμενο από μια λίστα ορισμάτων " +"που μοιάζει με έναν κατασκευαστή, αλλά με τη δυνατότητα να συλλαμβάνει " "χαρακτηριστικά σε μεταβλητές::" #: tutorial/controlflow.rst:334 @@ -366,11 +388,13 @@ msgid "" "\"y\"), the following patterns are all equivalent (and all bind the ``y`` " "attribute to the ``var`` variable)::" msgstr "" -"Μπορείτε να χρησιμοποιήσετε παραμέτρους θέσης με ορισμένες ενσωματωμένες κλάσεις που παρέχουν " -"μια σειρά για τα χαρακτηριστικά τους (π.χ. κλάσεις δεδομένων). Μπορείτε επίσης να ορίσετε μια συγκεκριμένη θέση " -"για χαρακτηριστικά σε μοτίβα ορίζοντας το ειδικό χαρακτηριστικό ``__match_args__`` στις κλάσεις σας. Εάν έχει οριστεί " -"σε (\"x\", \"y\"), τα ακόλουθα μοτίβα είναι όλα ισοδύναμα (και όλα δεσμεύουν το χαρακτηριστικό ``y`` " -"στη μεταβλητή ``var``)::" +"Μπορείτε να χρησιμοποιήσετε παραμέτρους θέσης με ορισμένες ενσωματωμένες " +"κλάσεις που παρέχουν μια σειρά για τα χαρακτηριστικά τους (π.χ. κλάσεις " +"δεδομένων). Μπορείτε επίσης να ορίσετε μια συγκεκριμένη θέση για " +"χαρακτηριστικά σε μοτίβα, ορίζοντας το ειδικό χαρακτηριστικό " +"``__match_args__`` στις κλάσεις σας. Εάν έχει οριστεί σε (\"x\", \"y\"), τα " +"ακόλουθα μοτίβα είναι όλα ισοδύναμα (και όλα δεσμεύουν το χαρακτηριστικό " +"``y`` στη μεταβλητή ``var``)::" #: tutorial/controlflow.rst:345 msgid "" @@ -382,19 +406,22 @@ msgid "" "(recognized by the \"(...)\" next to them like ``Point`` above) are never " "assigned to." msgstr "" -"Ένα συνιστώμενος τρόπος για να διαβάσετε τα μοτίβα είναι να τα δείτε ως μια εκτεταμένη μορφή αυτού που θα " -"βάλετε στα αριστερά μιας εργασίας, για να κατανοήσετε ποιες μεταβλητές θα οριστούν σε τι. Μόνο τα ανεξάρτητα ονόματα " -"(όπως ``var`` παραπάνω) εκχωρούνται από μια δήλωση αντιστοίχισης. Ονόματα με κουκκίδες (όπως ``foo." -"bar``), ονόματα χαρακτηριστικών (τα ``x=`` και ``y=`` παραπάνω) ή ονόματα κλάσεων " -"(αναγνωρίζονται από το \"(...)\" που βρίσκεται δίπλα όπως το ``Point`` παραπάνω) δεν ανατίθενται ποτέ." +"Ένας συνιστώμενος τρόπος για να διαβάσετε τα μοτίβα είναι να τα δείτε ως μια " +"εκτεταμένη μορφή αυτού που θα βάλετε στα αριστερά μιας ανάθεσης, για να " +"κατανοήσετε ποιες μεταβλητές θα οριστούν σε τι. Μόνο τα ανεξάρτητα ονόματα " +"(όπως ``var`` παραπάνω) εκχωρούνται από μια δήλωση αντιστοίχισης. Ονόματα με " +"κουκκίδες (όπως ``foo.bar``), ονόματα χαρακτηριστικών (τα ``x=`` και ``y=`` " +"παραπάνω) ή ονόματα κλάσεων (αναγνωρίζονται από το \"(...)\" που βρίσκεται " +"δίπλα όπως το ``Point`` παραπάνω) δεν ανατίθενται ποτέ." #: tutorial/controlflow.rst:352 msgid "" "Patterns can be arbitrarily nested. For example, if we have a short list of " "Points, with ``__match_args__`` added, we could match it like this::" msgstr "" -"Τα μοτίβα μπορούν να είναι αυθαίρετα ένθετα. Για παράδειγμα, εάν έχουμε μια σύντομη λίστα " -"με Points, με προσθήκη ``__match_args__``, θα μπορούσαμε να την αντιστοιχίσουμε ως εξής::" +"Τα μοτίβα μπορούν να είναι αυθαίρετα ένθετα. Για παράδειγμα, εάν έχουμε μια " +"σύντομη λίστα με πόντους, με προσθήκη ``__match_args__``, θα μπορούσαμε να " +"την αντιστοιχίσουμε ως εξής::" #: tutorial/controlflow.rst:373 msgid "" @@ -402,9 +429,10 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" -"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως \"guard\". Εάν το guard είναι " -"false, το ``match`` συνεχίζει για να δοκιμάσει το επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη " -"της τιμής γίνεται πριν ο guard αξιολογείθεί::" +"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως " +"\"guard\". Εάν το guard είναι false, το ``match`` συνεχίζει για να " +"δοκιμάσει το επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη της " +"τιμής γίνεται πριν ο guard αξιολογηθεί::" #: tutorial/controlflow.rst:383 msgid "Several other key features of this statement:" @@ -416,9 +444,10 @@ msgid "" "meaning and actually match arbitrary sequences. An important exception is " "that they don't match iterators or strings." msgstr "" -"Όπως το unpacking αναθέσεων, τα μοτίβα πλειάδας (tuple) και λίστας έχουν ακριβώς την ίδια " -"σημασία και ταιριάζουν πραγματικά με αυθαίρετες ακολουθίες. Μια σημαντική εξαίρεση είναι ότι δεν ταιριάζουν " -"με iterators ή συμβολοσειρές." +"Όπως το unpacking αναθέσεων, τα μοτίβα πλειάδας (tuple) και λίστας έχουν " +"ακριβώς την ίδια σημασία και ταιριάζουν πραγματικά με αυθαίρετες " +"ακολουθίες. Μια σημαντική εξαίρεση είναι ότι δεν ταιριάζουν με iterators ή " +"συμβολοσειρές." #: tutorial/controlflow.rst:389 msgid "" @@ -427,10 +456,11 @@ msgid "" "also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items " "without binding the remaining items." msgstr "" -"Τα μοτίβα ακολουθίας υποστηρίζουν εκτεταμένο unpacking: ``[x, y, *rest]`` και ``(x, y, " -"*rest)`` λειτουργεί παρόμοια με το unpacing αναθέσεων. Το όνομα μετά το ``*`` μπορεί επίσης " -"να είναι ``_``, οπότε το ``(x, y, *_)`` αντιστοιχεί σε μια ακολουθία τουλάχιστον δύο στοιχείων " -"χωρίς να δεσμεύει τα υπόλοιπα στοιχεία." +"Τα μοτίβα ακολουθίας υποστηρίζουν εκτεταμένο unpacking: ``[x, y, *rest]`` " +"και ``(x, y, *rest)`` λειτουργεί παρόμοια με το unpacking αναθέσεων. Το " +"όνομα μετά το ``*`` μπορεί επίσης να είναι ``_``, οπότε το ``(x, y, *_)`` " +"αντιστοιχεί σε μια ακολουθία τουλάχιστον δύο στοιχείων χωρίς να δεσμεύει τα " +"υπόλοιπα στοιχεία." #: tutorial/controlflow.rst:394 msgid "" @@ -439,39 +469,41 @@ msgid "" "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" -"Μοτίβα αντιστοίχισης: ``{\"bandwidth\": b, \"latency\": l}`` καταγράφει τις τιμές " -"``\"bandwidth\"`` και ``\"latency\"`` από ένα λεξικό. Σε αντίθεση με τα μοτίβα ακολοθίας, " -"επιπλεόν κλειδιά αγνοούνται. Υποστηρίζεται επίσης ο unpacking όπως το ``**rest``. (Αλλά το " -"``**_`` θα ήταν περιττό, επομένως δεν επιτρέπεται.)" +"Μοτίβα αντιστοίχισης: ``{\"bandwidth\": b, \"latency\": l}`` καταγράφει τις " +"τιμές ``\"bandwidth\"`` και ``\"latency\"`` από ένα λεξικό. Σε αντίθεση με " +"τα μοτίβα ακολουθίας, επιπλέον κλειδιά αγνοούνται. Υποστηρίζεται επίσης το " +"unpacking όπως το ``**rest``. (Αλλά το ``**_`` θα ήταν περιττό, επομένως " +"δεν επιτρέπεται.)" #: tutorial/controlflow.rst:399 msgid "Subpatterns may be captured using the ``as`` keyword::" -msgstr "Τα δευτερεύονται μοτίβα μπορούν αν αποτυπωθούν χρησιμοποιώντας το " -"keyword ``as``::" +msgstr "" +"Τα δευτερεύοντα μοτίβα μπορούν να αποτυπωθούν χρησιμοποιώντας το keyword " +"``as``::" #: tutorial/controlflow.rst:403 msgid "" "will capture the second element of the input as ``p2`` (as long as the input " "is a sequence of two points)" msgstr "" -"θα καταγράψει το δεύτερο στοιχείο της εισόδου ως ``p2`` (εφόσον η είσοδος είναι μια " -"ακολουθία δύο σημείων)" +"θα καταγράψει το δεύτερο στοιχείο της εισόδου ως ``p2`` (εφόσον η είσοδος " +"είναι μια ακολουθία δύο σημείων)" #: tutorial/controlflow.rst:406 msgid "" "Most literals are compared by equality, however the singletons ``True``, " "``False`` and ``None`` are compared by identity." msgstr "" -"Τα περισσότερα literals συγκρίνονται με ισότητα, ωστόσο τα singletons ``True``, " -"``False`` και ``None`` συγκρίνονται με ταυτότητα." +"Τα περισσότερα literals συγκρίνονται με ισότητα, ωστόσο τα singletons " +"``True``, ``False`` και ``None`` συγκρίνονται με ταυτότητα." #: tutorial/controlflow.rst:409 msgid "" "Patterns may use named constants. These must be dotted names to prevent " "them from being interpreted as capture variable::" msgstr "" -"Τα μοτίβα μπορούν να χρησιμοποιούν ονομασμένες σταθερές. Αυτά πρέπει να είναι ονόματα με " -"κουκκίδες για να μην ερμηνεύονται ως capture μεταβλητή::" +"Τα μοτίβα μπορούν να χρησιμοποιούν ονομασμένες σταθερές. Αυτά πρέπει να " +"είναι ονόματα με κουκκίδες για να μην ερμηνεύονται ως capture μεταβλητή::" #: tutorial/controlflow.rst:428 msgid "" @@ -490,8 +522,8 @@ msgid "" "We can create a function that writes the Fibonacci series to an arbitrary " "boundary::" msgstr "" -"Μπορούμε να δημιουργήσουμε μια συνάρτηση που γράφει τη σειρά Fibonacci σε ένα " -"αυθαίρετο όριο::" +"Μπορούμε να δημιουργήσουμε μια συνάρτηση που γράφει τη σειρά Fibonacci σε " +"ένα αυθαίρετο όριο::" #: tutorial/controlflow.rst:456 msgid "" @@ -500,9 +532,10 @@ msgid "" "parameters. The statements that form the body of the function start at the " "next line, and must be indented." msgstr "" -"Το keyword :keyword:`def` εισάγει μια συνάρτηση *ορισμός*. Πρέπει να ακολουθείται από το " -"όνομα της συνάρτησης και τη λίστα των τυπικών παραμέτρων σε παρένθεση. Οι δηλώσεις που σχηματίζουν " -"το σώμα της συνάρτησης ξεκινούν από την επόμενη γρμμή και πρέπει να είναι εσοχές." +"Το keyword :keyword:`def` εισάγει μια συνάρτηση *ορισμός*. Πρέπει να " +"ακολουθείται από το όνομα της συνάρτησης και τη λίστα των τυπικών παραμέτρων " +"σε παρένθεση. Οι δηλώσεις που σχηματίζουν το σώμα της συνάρτησης ξεκινούν " +"από την επόμενη γραμμή και πρέπει να είναι εσοχές." #: tutorial/controlflow.rst:461 msgid "" @@ -514,12 +547,14 @@ msgid "" "through code; it's good practice to include docstrings in code that you " "write, so make a habit of it." msgstr "" -"Η πρώτη δήλωση του σώματος της συνάρτησης μπορεί προαιρετικά να είναι ένα literal " -"συμβολοσειράς· αυτό το literal συμβολοσειράς είναι η συμβολοσειρά τεκμηρίωσης της συνάρτησης " -"ή :dfn:`docstring`. (Περισσότερα για τα docstring μπορείτε να βρείτε στην ενότητα :ref:`tut-" -"docstrings`.) Υπάρχουν εργαλεία που χρησιμοποιούν docstrings για την αυτόματη παραγωγή διαδικτυακής ή " -"έντυπης τεκμηρίωσης ή για να αφήσουν τον χρήστη να περιηγηθεί διαδραστικά στον κώδικα· είναι καλή " -"πρακτική να συμπεριλαμβάνονται docstrings στον κώδικα που γράφετε, για αυτό κάντε το συνήθεια." +"Η πρώτη δήλωση του σώματος της συνάρτησης μπορεί προαιρετικά να είναι ένα " +"literal συμβολοσειράς· αυτό το literal συμβολοσειράς είναι η συμβολοσειρά " +"τεκμηρίωσης της συνάρτησης ή :dfn:`docstring`. (Περισσότερα για τα docstring " +"μπορείτε να βρείτε στην ενότητα :ref:`tut-docstrings`.) Υπάρχουν εργαλεία " +"που χρησιμοποιούν docstrings για την αυτόματη παραγωγή διαδικτυακής ή " +"έντυπης τεκμηρίωσης ή για να αφήσουν τον χρήστη να περιηγηθεί διαδραστικά " +"στον κώδικα· είναι καλή πρακτική να συμπεριλαμβάνονται docstrings στον " +"κώδικα που γράφετε, για αυτό κάντε το συνήθεια." #: tutorial/controlflow.rst:468 msgid "" @@ -534,15 +569,18 @@ msgid "" "for variables of enclosing functions, named in a :keyword:`nonlocal` " "statement), although they may be referenced." msgstr "" -"Η *εκτέλεση* μιας συνάρτησης εισάγει έναν νέο πίνακα συμβόλων που χρησιμοποιείται " -"για τις τοπικές μεταβλητές της συνάρτησης. Πιο συγκεκριμένα, όλες οι εκχωρήσεις μεταβλητών " -"σε μια συνάρτηση αποθηκεύουν την τιμή στον πίνακα τοπικών συμβόλων, ενώ οι αναφορές μεταβλητών " -"κοιτάζονται πρώτα στον πίνακα τοπικών συμβόλων, στη συνέχιας στους πίνακες τοπικών συμβόλων των " -"συναρτήσεων που περικλείουν, μετά στον πίνακα καθολικών συμβόλων και, τέλος, στον πίνακα ενσωματωμένων " -"ονομάτων. Έτσι, οι καθολικές μεταβλητές και οι μεταβλητές των συναρτήσεων που περικλείουν δεν μπορούν " -"να εκχωρηθούν ως μια τιμή μέσα σε μια συνάρτηση (εκτός εάν, για καθολικές μεταβλητές, που ονομάζονται σε " -"μια δήλωση :keyword:`global` ή, για μεταβλητές συναρτήσεων που περικλείουν, ονομάζονται ως μια δήλωση " -":keyword:`nonlocal`), αν και μπορεί να αναφέρονται." +"Η *εκτέλεση* μιας συνάρτησης εισάγει έναν νέο πίνακα συμβόλων που " +"χρησιμοποιείται για τις τοπικές μεταβλητές της συνάρτησης. Πιο " +"συγκεκριμένα, όλες οι εκχωρήσεις μεταβλητών σε μια συνάρτηση αποθηκεύουν την " +"τιμή στον πίνακα τοπικών συμβόλων∙ ενώ οι αναφορές μεταβλητών κοιτάζονται " +"πρώτα στον πίνακα τοπικών συμβόλων, στη συνέχεια στους πίνακες τοπικών " +"συμβόλων των συναρτήσεων που περικλείουν, μετά στον πίνακα καθολικών " +"συμβόλων και, τέλος, στον πίνακα ενσωματωμένων ονομάτων. Έτσι, οι καθολικές " +"μεταβλητές και οι μεταβλητές των συναρτήσεων που περικλείουν δεν μπορούν να " +"εκχωρηθούν ως μια τιμή μέσα σε μια συνάρτηση (εκτός εάν, για καθολικές " +"μεταβλητές, που ονομάζονται σε μια δήλωση :keyword:`global` ή, για " +"μεταβλητές συναρτήσεων που περικλείουν, ονομάζονται ως μια δήλωση :keyword:" +"`nonlocal`), αν και μπορεί να αναφέρονται." #: tutorial/controlflow.rst:479 msgid "" @@ -553,11 +591,13 @@ msgid "" "another function, or calls itself recursively, a new local symbol table is " "created for that call." msgstr "" -"Οι πραγματικές παράμετροι (ορίσματα) σε μια κλήση συνάρτησης εισάγονται στον τοπικό πίνακα " -"συμβόλων ης καλούμενης συνάρτησης όταν αυτή καλείται· έτσι, τα ορίσματα μεταβιβάζονται χρησιμοποιώντας " -"*call by value* (όπου η *value* είναι πάντα ένα αντικείμενο *reference*, όχι την τιμή του αντικειμένου). " -"[#]_ Όταν μια συνάρτηση καλεί μια άλλη συνάρτηση ή καλεί τον εαυτό της αναδρομικά, δημιουργείται ένας νέος πίνακας " -"τοπικών συμβόλων για αυτήν την κλήση." +"Οι πραγματικές παράμετροι (ορίσματα) σε μια κλήση συνάρτησης εισάγονται στον " +"τοπικό πίνακα συμβόλων της καλούμενης συνάρτησης όταν αυτή καλείται· έτσι, " +"τα ορίσματα μεταβιβάζονται χρησιμοποιώντας *call by value* (όπου η *value* " +"είναι πάντα ένα αντικείμενο *reference*, όχι την τιμή του αντικειμένου). " +"[#]_ Όταν μια συνάρτηση καλεί μια άλλη συνάρτηση ή καλεί τον εαυτό της " +"αναδρομικά, δημιουργείται ένας νέος πίνακας τοπικών συμβόλων για αυτήν την " +"κλήση." #: tutorial/controlflow.rst:486 msgid "" @@ -566,9 +606,10 @@ msgid "" "to by that name as a user-defined function. Other names can also point to " "that same function object and can also be used to access the function::" msgstr "" -"Ένας ορισμός συνάρτησης συσχετίζει το όνομα της συνάρτησης με το αντικείμενο συνάρτησης στον " -"τρέχοντα πίνακα συμβόλων. Ο διερμηνέας αναγνωρίζει το αντικείμενο στο οποίο επισημαίνεται αυτό το " -"όνομα ως συνάρτηση που ορίζεται από τον χρήστη. Άλλα όνοματα μπορούν επίσης να δείχνουν το ίδιο αντικείμενο " +"Ένας ορισμός συνάρτησης συσχετίζει το όνομα της συνάρτησης με το αντικείμενο " +"συνάρτησης στον τρέχοντα πίνακα συμβόλων. Ο διερμηνέας αναγνωρίζει το " +"αντικείμενο στο οποίο επισημαίνεται αυτό το όνομα ως συνάρτηση που ορίζεται " +"από τον χρήστη. Άλλα ονόματα μπορούν επίσης να δείχνουν το ίδιο αντικείμενο " "συνάρτησης και μπορούν επίσης να χρησιμοποιηθούν για πρόσβαση στη συνάρτηση::" #: tutorial/controlflow.rst:497 @@ -581,24 +622,26 @@ msgid "" "the only value written. You can see it if you really want to using :func:" "`print`::" msgstr "" -"Προερχόμενοι από άλλες γλώσσες, μπορεί να αντιταχθείτε ότι το ``fib`` δεν είναι μια " -"συνάρτηση αλλά μια διαδικασία, καθώς δεν επιστρέφει μια τιμή. Στην πραγματικότητα, ακόμη και " -"συναρτήσεις χωρίς δήλωση :keyword:`return` επιστρέφουν μια τιμή, αν και μάλλον βαρετό. Αυτή η τιμή " -"ονομάζεται ``None``. Η εγγραφή της τιμής ``None`` από τον διερμηνέα, εάν θα ήταν η μόνη τιμή " -"που γράφεται. Μπορείτε να το δείτε αν το θέλετε πραγματικά χρησιμοποιώντας τη :func:" -"`print`::" +"Προερχόμενοι από άλλες γλώσσες, μπορεί να αντιταχθείτε ότι το ``fib`` δεν " +"είναι μια συνάρτηση αλλά μια διαδικασία, καθώς δεν επιστρέφει μια τιμή. " +"Στην πραγματικότητα, ακόμη και συναρτήσεις χωρίς δήλωση :keyword:`return` " +"επιστρέφουν μια τιμή, αν και μάλλον βαρετή. Αυτή η τιμή ονομάζεται " +"``None``. Η εγγραφή της τιμής ``None`` από τον διερμηνέα, εάν θα ήταν η " +"μόνη τιμή που γράφεται. Μπορείτε να το δείτε αν το θέλετε πραγματικά " +"χρησιμοποιώντας τη :func:`print`::" #: tutorial/controlflow.rst:508 msgid "" "It is simple to write a function that returns a list of the numbers of the " "Fibonacci series, instead of printing it::" msgstr "" -"Είανι απλό να γράψετε μια συνάρτηση που επιστρέφει μια λίστα με τους αριθμούς της σειράς " -"Fibonacci, αντί να την εκτυπώσετε::" +"Είναι απλό να γράψετε μια συνάρτηση που επιστρέφει μια λίστα με τους " +"αριθμούς της σειράς Fibonacci, αντί να την εκτυπώσετε::" #: tutorial/controlflow.rst:524 msgid "This example, as usual, demonstrates some new Python features:" -msgstr "Αυτό το παράδειγμα, ως συνήθως, δείχνει μερικά νέα χαρακτηριστικά Python:" +msgstr "" +"Αυτό το παράδειγμα, ως συνήθως, δείχνει μερικά νέα χαρακτηριστικά Python:" #: tutorial/controlflow.rst:526 msgid "" @@ -607,8 +650,8 @@ msgid "" "off the end of a function also returns ``None``." msgstr "" "Η δήλωση :keyword:`return` επιστρέφει με μια τιμή από μια συνάρτηση. Το :" -"keyword:`!return` χωρίς όρισμα έκφρασης, επιστρέφει το ``None``. Η πτώση " -"του τέλους μιας συνάρτησης επιστρέφει επίσης ``None``." +"keyword:`!return` χωρίς όρισμα έκφρασης, επιστρέφει το ``None``. Η πτώση του " +"τέλους μιας συνάρτησης επιστρέφει επίσης ``None``." #: tutorial/controlflow.rst:530 msgid "" @@ -625,14 +668,17 @@ msgid "" "efficient." msgstr "" "Η δήλωση ``result.append(a)`` καλεί μια *μέθοδο* του αντικειμένου της λίστας " -"``result``. Μια μέθοδος είναι μια συνάρτηση που 'ανήκει' σε ένα αντικείμενο και ονομάζεται " -"``obj.methodname``, όπου ``obj`` είναι κάποιο αντικείμενο (αυτό μπορεί να έιναι μια έκφραση), " -"και το ``methodname`` είναι το όνομα μιας μεθόδου που ορίζεται από τον τύπο του αντικειμένου. " -"Διαφορετικοί τύποι ορίζουν διαφορετικές μεθόδους. Μέθοδοι διαφορετικών τύπων μπορεί να έχουν " -"το ίδιο όνομα χωρίς να προκαλούν ασάφεια. (Είναι δυνατό να ορίσετε τους δικούς σας τύπους αντικειμένων και " -"μεθόδους, χρησιμοποιώντας *classes*, δείτε :ref:`tut-classes`) Η μέθοδος :meth:`!append` που εμφανίζεται " -"στο παράδειγμα ορίζεται για αντικείμενα λίστας· προσθέτει ένα νέο στοιχείο στο τέλος της λίστας. Σε " -"αυτό το παράδειγμα είναι ισοδύναμο με ``result = result + [a]``, αλλά πιο αποτελεσματικό." +"``result``. Μια μέθοδος είναι μια συνάρτηση που 'ανήκει' σε ένα αντικείμενο " +"και ονομάζεται ``obj.methodname``, όπου ``obj`` είναι κάποιο αντικείμενο " +"(αυτό μπορεί να είναι μια έκφραση), και το ``methodname`` είναι το όνομα " +"μιας μεθόδου που ορίζεται από τον τύπο του αντικειμένου. Διαφορετικοί τύποι " +"ορίζουν διαφορετικές μεθόδους. Μέθοδοι διαφορετικών τύπων μπορεί να έχουν " +"το ίδιο όνομα χωρίς να προκαλούν ασάφεια. (Είναι δυνατό να ορίσετε τους " +"δικούς σας τύπους αντικειμένων και μεθόδους, χρησιμοποιώντας *classes*, " +"δείτε :ref:`tut-classes`) Η μέθοδος :meth:`!append` που εμφανίζεται στο " +"παράδειγμα ορίζεται για αντικείμενα λίστας· προσθέτει ένα νέο στοιχείο στο " +"τέλος της λίστας. Σε αυτό το παράδειγμα είναι ισοδύναμο με ``result = " +"result + [a]``, αλλά πιο αποτελεσματικό." #: tutorial/controlflow.rst:545 msgid "More on Defining Functions" @@ -656,9 +702,9 @@ msgid "" "arguments. This creates a function that can be called with fewer arguments " "than it is defined to allow. For example::" msgstr "" -"Η πιο χρήσιμη φόρμα είναι να καθορίσετε μια προεπιλεγμένη τιμή για ένα ή περισσότερα ορίσματα. " -"Αυτό δημιουργεί μια συνάρτηση που μπορεί να κληθεί με λιγότερα ορίσματα από αυτά που έχει ορίσει ότι " -"επιτρέπει. Για παράδειγμα::" +"Η πιο χρήσιμη φόρμα είναι να καθορίσετε μια προεπιλεγμένη τιμή για ένα ή " +"περισσότερα ορίσματα. Αυτό δημιουργεί μια συνάρτηση που μπορεί να κληθεί με " +"λιγότερα ορίσματα από αυτά που έχει ορίσει ότι επιτρέπει. Για παράδειγμα::" #: tutorial/controlflow.rst:572 msgid "This function can be called in several ways:" @@ -668,15 +714,16 @@ msgstr "Αυτή η συνάρτηση μπορεί να κληθεί με δι msgid "" "giving only the mandatory argument: ``ask_ok('Do you really want to quit?')``" msgstr "" -"δίνοτνας μόνο το υποχρεωικκό όρισμα: ``ask_ok('Do you really want to quit?')``" +"δίνοντας μόνο το υποχρεωτικό όρισμα: ``ask_ok('Do you really want to " +"quit?')``" #: tutorial/controlflow.rst:576 msgid "" "giving one of the optional arguments: ``ask_ok('OK to overwrite the file?', " "2)``" msgstr "" -"δίνοντας ένα από τα προαιρετικά ορίσματα: ``ask_ok('OK to overwrite the file?', " -"2)``" +"δίνοντας ένα από τα προαιρετικά ορίσματα: ``ask_ok('OK to overwrite the " +"file?', 2)``" #: tutorial/controlflow.rst:578 msgid "" @@ -691,16 +738,16 @@ msgid "" "This example also introduces the :keyword:`in` keyword. This tests whether " "or not a sequence contains a certain value." msgstr "" -"Αυτό το παράδειγμα εισάγει επίσης το keyword :keyword:`in`. Αυτό ελέγχει εάν μια " -"ακολουθία περιέχει ή όχι μια συγκεκριμένη τιμή." +"Αυτό το παράδειγμα εισάγει επίσης το keyword :keyword:`in`. Αυτό ελέγχει εάν " +"μια ακολουθία περιέχει ή όχι μια συγκεκριμένη τιμή." #: tutorial/controlflow.rst:584 msgid "" "The default values are evaluated at the point of function definition in the " "*defining* scope, so that ::" msgstr "" -"Οι προεπιλεγμένες τιμές αξιολογούνται στο σημείο του ορισμού της συνάρτησης στο " -"πεδίο που *ορίζεται*, έτσι ώστε ::" +"Οι προεπιλεγμένες τιμές αξιολογούνται στο σημείο του ορισμού της συνάρτησης " +"στο πεδίο που *ορίζεται*, έτσι ώστε ::" #: tutorial/controlflow.rst:595 msgid "will print ``5``." @@ -713,10 +760,11 @@ msgid "" "dictionary, or instances of most classes. For example, the following " "function accumulates the arguments passed to it on subsequent calls::" msgstr "" -"**Σημαντική προειδοποίηση:** Η προεπιλεγμένη τιμή αξιολογείται μόνο μία φορά. Αυτό " -"κάνει τη διαφορά όταν η προεπιλογή είναι ένα μεταβλητό αντικείμενο, όπως μια λίστα, λεξικό ή " -"στιγμιότυπα των περισσότερων κλάσεων. Για παράδειγμα, η ακόλουθη συνάρτηση συσσωρεύει " -"τα ορίσματα που διαβάζονται σε αυτό σε επόμενες κλήσεις::" +"**Σημαντική προειδοποίηση:** Η προεπιλεγμένη τιμή αξιολογείται μόνο μία " +"φορά. Αυτό κάνει τη διαφορά όταν η προεπιλογή είναι ένα μεταβλητό " +"αντικείμενο, όπως μια λίστα, λεξικό ή στιγμιότυπα των περισσότερων κλάσεων. " +"Για παράδειγμα, η ακόλουθη συνάρτηση συσσωρεύει τα ορίσματα που διαβάζονται " +"σε αυτό σε επόμενες κλήσεις::" #: tutorial/controlflow.rst:610 msgid "This will print ::" @@ -727,8 +775,8 @@ msgid "" "If you don't want the default to be shared between subsequent calls, you can " "write the function like this instead::" msgstr "" -"Εάν δεν θέλετε να γίνεται κοινή χρήση της προεπιλογής μεταξύ των επόμενων κλήσεων, μπορείτε " -"να γράψετε τη συνάρτηση ως εξής::" +"Εάν δεν θέλετε να γίνεται κοινή χρήση της προεπιλογής μεταξύ των επόμενων " +"κλήσεων, μπορείτε να γράψετε τη συνάρτηση ως εξής::" #: tutorial/controlflow.rst:629 msgid "Keyword Arguments" @@ -740,8 +788,9 @@ msgid "" "argument>` of the form ``kwarg=value``. For instance, the following " "function::" msgstr "" -"Οι συναρτήσεις μπορούν επίσης να κληθούν χρησιμοποιώντας το :term:`keyword arguments ` της μορφής ``kwarg=value``. Για παράδειγμα, την ακόλουθη συνάρτηση::" +"Οι συναρτήσεις μπορούν επίσης να κληθούν χρησιμοποιώντας το :term:`keyword " +"arguments ` της μορφής ``kwarg=value``. Για παράδειγμα, " +"την ακόλουθη συνάρτηση::" #: tutorial/controlflow.rst:640 msgid "" @@ -750,8 +799,8 @@ msgid "" "of the following ways::" msgstr "" "δέχεται ένα απαιτούμενο όρισμα (``voltage``) και τρία προαιρετικά ορίσματα " -"(``state``, ``action``, και ``type``). Αυτή η συνάρτηση μπορεί να κληθεί με οποιονδήποτε " -"από τους ακόλουθους τρόπους::" +"(``state``, ``action``, και ``type``). Αυτή η συνάρτηση μπορεί να κληθεί με " +"οποιονδήποτε από τους ακόλουθους τρόπους::" #: tutorial/controlflow.rst:651 msgid "but all the following calls would be invalid::" @@ -767,13 +816,14 @@ msgid "" "may receive a value more than once. Here's an example that fails due to this " "restriction::" msgstr "" -"Σε μια κλήση συνάρτησης, τα keyword ορίσματα πρέπει να ακολουθούν ορίσματα θέσης. Όλα " -"τα keyword ορίσματα που διαβάζονται πρέπει να ταιριάζουν με ένα από τα ορίσματα που γίνονται " -"δεκτά από τη συνάρτηση (π.χ. το ``actor`` δεν είναι έγκυρο όρισμα για τη συνάρτηση ``parrot``), " -"και η διάταξη τους δεν είναι σημαντική. Αυτό περιλαμβάνει επίσης μη " -"προαιρετικά ορίσματα (π.χ. ``parrot(voltage=1000)`` είναι επίσης έγκυρο). Κανένα όρισμα " -"δεν μπορεί να λάβει μια τιμή περισσότερες από μία φορές. Ακολουθεί ένα παράδειγμα που αποτυγχάνει " -"λόγω αυτού του περιορισμού::" +"Σε μια κλήση συνάρτησης, τα keyword ορίσματα πρέπει να ακολουθούν ορίσματα " +"θέσης. Όλα τα keyword ορίσματα που διαβάζονται πρέπει να ταιριάζουν με ένα " +"από τα ορίσματα που γίνονται δεκτά από τη συνάρτηση (π.χ. το ``actor`` δεν " +"είναι έγκυρο όρισμα για τη συνάρτηση ``parrot``), και η διάταξη τους δεν " +"είναι σημαντική. Αυτό περιλαμβάνει επίσης μη προαιρετικά ορίσματα (π.χ. " +"``parrot(voltage=1000)`` είναι επίσης έγκυρο). Κανένα όρισμα δεν μπορεί να " +"λάβει μια τιμή περισσότερες από μία φορές. Ακολουθεί ένα παράδειγμα που " +"αποτυγχάνει λόγω αυτού του περιορισμού::" #: tutorial/controlflow.rst:674 msgid "" @@ -785,13 +835,14 @@ msgid "" "positional arguments beyond the formal parameter list. (``*name`` must " "occur before ``**name``.) For example, if we define a function like this::" msgstr "" -"Όταν υπάρχει μια τελική επίσημη παράμετρος της μορφής ``**name``, λαμάνει ένα λεξικό " -"(δείτε :ref:`typesmapping`) που περιέχει όλα τα keyword ορίσματα εκτός από αυτά που " -"αντιστοιχούν σε μια επίσημη παράμετρο. Αυτό μπορεί να συνδυαστεί με μια επίσημη παράμετρος " -"της μοφής ``*name`` (που περιγράφεται στην επόμενη υποενότητα) η οποία λαμβάνει ένα " -":ref:`tuple ` που περιέχει τα ορίσματα θέσης πέρα από την επίσημη λίστα παραμέτρων. " -"(Το ``*name`` πρέπει να εφμανίζεται πριν από το ``**name``.) Για παράδειγμα, αν ορίσουμε μια " -"συνάρτηση όπως αυτή::" +"Όταν υπάρχει μια τελική επίσημη παράμετρος της μορφής ``**name``, λαμβάνει " +"ένα λεξικό (δείτε :ref:`typesmapping`) που περιέχει όλα τα keyword ορίσματα " +"εκτός από αυτά που αντιστοιχούν σε μια επίσημη παράμετρο. Αυτό μπορεί να " +"συνδυαστεί με μια επίσημη παράμετρος της μορφής ``*name`` (που περιγράφεται " +"στην επόμενη υποενότητα) η οποία λαμβάνει ένα :ref:`tuple ` που " +"περιέχει τα ορίσματα θέσης πέρα από την επίσημη λίστα παραμέτρων. (Το " +"``*name`` πρέπει να εμφανίζεται πριν από το ``**name``.) Για παράδειγμα, αν " +"ορίσουμε μια συνάρτηση όπως αυτή::" #: tutorial/controlflow.rst:691 msgid "It could be called like this::" @@ -806,8 +857,9 @@ msgid "" "Note that the order in which the keyword arguments are printed is guaranteed " "to match the order in which they were provided in the function call." msgstr "" -"Λάβετε υπόψη ότι η σειρά με την οποία εκτυπώνονται τα keyword ορίσματα είναι εγγυημένη " -"ότι ταιριάζει με τη σειρά με την οποία δόθηκαν στην κλήση της συνάρτησης." +"Λάβετε υπόψη ότι η σειρά με την οποία εκτυπώνονται τα keyword ορίσματα είναι " +"εγγυημένη ότι ταιριάζει με τη σειρά με την οποία δόθηκαν στην κλήση της " +"συνάρτησης." #: tutorial/controlflow.rst:716 msgid "Special parameters" @@ -821,11 +873,12 @@ msgid "" "at the function definition to determine if items are passed by position, by " "position or keyword, or by keyword." msgstr "" -"Από προεπιλογή, τα ορίσματα μπορούν να μεταβιβαστούν σε μια συνάρτηση Python είτε με βάση " -"τη θέση είτε ρητά με το keyword. Για αναγνωσιμότητα και απόδοση, ειναι λογικό να περιοριστεί " -"ο τρόπος με τον οποίο μπορούν να περάσουν τα ορίσματα, έτσι ώστε ένας προγραμματιστής να μην " -"χρειάζεται να κοιτάξει το ορισμό της συνάρτησης για να προσδιορίσει εάν τα στοιχεία μεταβιβάζονται " -"κατά θέση, κατά θέση ή keyword, ή κατά keyword." +"Από προεπιλογή, τα ορίσματα μπορούν να μεταβιβαστούν σε μια συνάρτηση Python " +"είτε με βάση τη θέση είτε ρητά με το keyword. Για αναγνωσιμότητα και " +"απόδοση, είναι λογικό να περιοριστεί ο τρόπος με τον οποίο μπορούν να " +"περάσουν τα ορίσματα, έτσι ώστε ένας προγραμματιστής να μην χρειάζεται να " +"κοιτάξει τον ορισμό της συνάρτησης για να προσδιορίσει εάν τα στοιχεία " +"μεταβιβάζονται κατά θέση, κατά θέση ή keyword, ή κατά keyword." #: tutorial/controlflow.rst:724 msgid "A function definition may look like:" @@ -838,10 +891,11 @@ msgid "" "only, positional-or-keyword, and keyword-only. Keyword parameters are also " "referred to as named parameters." msgstr "" -"όπου τα ``/`` και ``*`` είναι προαιρτικά. Εάν χρησιμοποιούνται, αυτά τα σύμβολα υποδεικνύουν " -"το είδος της παραμέτρους με τον τρόπο που τα ορίσματα μπορούν να μεταβιβαστούν στη συνάρτηση: " -"μόνο θέσης (positional-only), θέσης ή keyword (positional-or-keyword), και μόνο keyword (keyword-only). " -"Οι keyword παράμετροι αναφέρονται επίσης ως ονομασμένες παράμετροι." +"όπου τα ``/`` και ``*`` είναι προαιρετικά. Εάν χρησιμοποιούνται, αυτά τα " +"σύμβολα υποδεικνύουν το είδος της παραμέτρους με τον τρόπο που τα ορίσματα " +"μπορούν να μεταβιβαστούν στη συνάρτηση: μόνο θέσης (positional-only), θέσης " +"ή keyword (positional-or-keyword), και μόνο keyword (keyword-only). Οι " +"keyword παράμετροι αναφέρονται επίσης ως ονομασμένες παράμετροι." #: tutorial/controlflow.rst:742 msgid "Positional-or-Keyword Arguments" @@ -852,8 +906,8 @@ msgid "" "If ``/`` and ``*`` are not present in the function definition, arguments may " "be passed to a function by position or by keyword." msgstr "" -"Εάν τα ``/`` και ``*`` δεν υπάρχουν στον ορισμό της συνάρτησης, τα ορίσματα μπορούν να μεταβιβαστούν " -"σε μια συνάρτηση ανά θέση ή κατά keyword." +"Εάν τα ``/`` και ``*`` δεν υπάρχουν στον ορισμό της συνάρτησης, τα ορίσματα " +"μπορούν να μεταβιβαστούν σε μια συνάρτηση ανά θέση ή κατά keyword." #: tutorial/controlflow.rst:749 msgid "Positional-Only Parameters" @@ -869,19 +923,21 @@ msgid "" "parameters. If there is no ``/`` in the function definition, there are no " "positional-only parameters." msgstr "" -"Επανεξετάζοντας αυτό το θέμα λίγο πιο λεπτομερώς, είναι δυνατό να επισημάνετε " -"ορισμένες παραμέτρους ως *μόνο θέσης*.Εάν *μόνο θέσης*, η σειρά των παραμέτρων έχει σημασία " -"και οι παράμετροι δεν μπορούν να μεταβιβαστούν με keyword. Οι παράμετροι μόνο θέσης τοποθετούνται " -"πριν από ένα ``/`` (προς τα εμπρός-κάθετος). Το ``/``χρησιμοποιείται για να διαχωρίσει λογικά τις " -"παραμέτρους μόνο θέσης από τις υπόλοιπες παραμέτρους. Εάν δεν υπάερχει το ``/`` στον ορισμό της " -"συνάρτησης, δεν υπάρχουν παράμετροι μόνο θέσης." +"Επανεξετάζοντας αυτό το θέμα λίγο πιο λεπτομερώς, είναι δυνατό να " +"επισημάνετε ορισμένες παραμέτρους ως *μόνο θέσης*.Εάν *μόνο θέσης*, η σειρά " +"των παραμέτρων έχει σημασία και οι παράμετροι δεν μπορούν να μεταβιβαστούν " +"με keyword. Οι παράμετροι μόνο θέσης τοποθετούνται πριν από ένα ``/`` (προς " +"τα εμπρός-κάθετος). Το ``/``χρησιμοποιείται για να διαχωρίσει λογικά τις " +"παραμέτρους μόνο θέσης από τις υπόλοιπες παραμέτρους. Εάν δεν υπάερχει το ``/" +"`` στον ορισμό της συνάρτησης, δεν υπάρχουν παράμετροι μόνο θέσης." #: tutorial/controlflow.rst:759 msgid "" "Parameters following the ``/`` may be *positional-or-keyword* or *keyword-" "only*." msgstr "" -"Οι παράμετροι που ακολουθούν το ``/`` μπορεί να είναι *θέσης ή keyword* ή *μόνο keyword*." +"Οι παράμετροι που ακολουθούν το ``/`` μπορεί να είναι *θέσης ή keyword* ή " +"*μόνο keyword*." #: tutorial/controlflow.rst:763 msgid "Keyword-Only Arguments" @@ -893,9 +949,9 @@ msgid "" "passed by keyword argument, place an ``*`` in the arguments list just before " "the first *keyword-only* parameter." msgstr "" -"Για να επισημάνετε τις παραμέτρους ως *μόνο keyword*, υποδεικνύοντας ότι οι παράμετροι πρέπει " -"να περάσουν από το keyword όρισμα, τοποθετήσετε ένα ``*`` στη λίστα ορισμάτων ακριβώς πριν " -"από την πρώτη παράμετρο *μόνο keyword*." +"Για να επισημάνετε τις παραμέτρους ως *μόνο keyword*, υποδεικνύοντας ότι οι " +"παράμετροι πρέπει να περάσουν από το keyword όρισμα, τοποθετήσετε ένα ``*`` " +"στη λίστα ορισμάτων ακριβώς πριν από την πρώτη παράμετρο *μόνο keyword*." #: tutorial/controlflow.rst:771 msgid "Function Examples" @@ -915,16 +971,17 @@ msgid "" "places no restrictions on the calling convention and arguments may be passed " "by position or keyword::" msgstr "" -"Ο πρώτος ορισμός συνάρτησης, ``standard_arg``, η πιο οικεία μορφή, δεν θέτει περιορισμούς " -"στη σύμβαση κλήσης και τα ορίσματα μπορούν να περάσουν από θέση ή από keyword::" +"Ο πρώτος ορισμός συνάρτησης, ``standard_arg``, η πιο οικεία μορφή, δεν θέτει " +"περιορισμούς στη σύμβαση κλήσης και τα ορίσματα μπορούν να περάσουν από θέση " +"ή από keyword::" #: tutorial/controlflow.rst:799 msgid "" "The second function ``pos_only_arg`` is restricted to only use positional " "parameters as there is a ``/`` in the function definition::" msgstr "" -"Η δεύτερη συνάρτηση ``pos_only_arg`` περιορίζεται στη χρήση μόνο παραμέτρων θέσης καθώς " -"υπάρχει ένα ``/`` στον ορισμός της συνάρτησης::" +"Η δεύτερη συνάρτηση ``pos_only_arg`` περιορίζεται στη χρήση μόνο παραμέτρων " +"θέσης καθώς υπάρχει ένα ``/`` στον ορισμός της συνάρτησης::" #: tutorial/controlflow.rst:810 msgid "" @@ -939,8 +996,8 @@ msgid "" "And the last uses all three calling conventions in the same function " "definition::" msgstr "" -"Και το τελευταίο χρησιμοποιεί και τις τρεις συμβάσεις κλήσης στον ίδιο ορισμό " -"συνάρτησης::" +"Και το τελευταίο χρησιμοποιεί και τις τρεις συμβάσεις κλήσης στον ίδιο " +"ορισμό συνάρτησης::" #: tutorial/controlflow.rst:841 msgid "" @@ -948,16 +1005,18 @@ msgid "" "between the positional argument ``name`` and ``**kwds`` which has ``name`` " "as a key::" msgstr "" -"Τέλος, εξετάστε αυτόν τον ορισμό συνάρτησης που έχει μια πιθανή σύγκρουση μεταξύ " -"του ορίσματος θέσης ``name`` και ``**kwds`` που έχει ως κλειδί το ``name``::" +"Τέλος, εξετάστε αυτόν τον ορισμό συνάρτησης που έχει μια πιθανή σύγκρουση " +"μεταξύ του ορίσματος θέσης ``name`` και ``**kwds`` που έχει ως κλειδί το " +"``name``::" #: tutorial/controlflow.rst:846 msgid "" "There is no possible call that will make it return ``True`` as the keyword " "``'name'`` will always bind to the first parameter. For example::" msgstr "" -"Δεν υπάρχει καμία πιθανή κλήση που θα την κάνεινα επιστρέψει ``True`` καθώς το keyword " -"``'name'`` θα συνδέεται πάντα με την πρώτη παράμετρο. Για παράδειγμα::" +"Δεν υπάρχει καμία πιθανή κλήση που θα την κάνει να επιστρέψει ``True`` καθώς " +"το keyword ``'name'`` θα συνδέεται πάντα με την πρώτη παράμετρο. Για " +"παράδειγμα::" #: tutorial/controlflow.rst:855 msgid "" @@ -965,16 +1024,17 @@ msgid "" "``name`` as a positional argument and ``'name'`` as a key in the keyword " "arguments::" msgstr "" -"Αλλά χρησιμοποιώντας ``/`` (ορίσματα μόνο θέσης), είναι δυνατό καθώς επιτρέπει το ``name`` " -"ως όρισμα θέσης και το ``'name'`` ως κλειδί στα keyword ορίσματα::" +"Αλλά χρησιμοποιώντας ``/`` (ορίσματα μόνο θέσης), είναι δυνατό καθώς " +"επιτρέπει το ``name`` ως όρισμα θέσης και το ``'name'`` ως κλειδί στα " +"keyword ορίσματα::" #: tutorial/controlflow.rst:863 msgid "" "In other words, the names of positional-only parameters can be used in " "``**kwds`` without ambiguity." msgstr "" -"Με άλλα λόγια, τα ονόματα των παραμέτρων μόνο θέσης μπορούν να χρησιμοποιηθούν σε ``**kwds`` " -"χωρίς ασάφεια." +"Με άλλα λόγια, τα ονόματα των παραμέτρων μόνο θέσης μπορούν να " +"χρησιμοποιηθούν σε ``**kwds`` χωρίς ασάφεια." #: tutorial/controlflow.rst:868 msgid "Recap" @@ -985,7 +1045,8 @@ msgid "" "The use case will determine which parameters to use in the function " "definition::" msgstr "" -"Η περίπτωση χρήσης θα καθορίσει ποιες παραμέτρους θα χρησιμοποιηθούν στον ορισμό της συνάρτησης::" +"Η περίπτωση χρήσης θα καθορίσει ποιες παραμέτρους θα χρησιμοποιηθούν στον " +"ορισμό της συνάρτησης::" #: tutorial/controlflow.rst:874 msgid "As guidance:" @@ -999,10 +1060,11 @@ msgid "" "is called or if you need to take some positional parameters and arbitrary " "keywords." msgstr "" -"Χρησιμοποιήστε τη θέση μόνο εάν θέλετε το όνομα των παραμέτρων να μην είναι διαθέσιμο στο χρήστη. " -"Αυτό είναι χρήσιμο όταν τα ονόματα παραμέτρων δεν έχουν πραγματικό νόημα, εάν δεν θέλετε να " -"επιβάλετε τη σειρά των ορισμάτων όταν καλείται η συνάρτηση ή εάν πρέπει να ληφθούν ορισμένες παράμετροι " -"θέσης και αυθαίρετα keywords." +"Χρησιμοποιήστε τη θέση μόνο εάν θέλετε το όνομα των παραμέτρων να μην είναι " +"διαθέσιμο στο χρήστη. Αυτό είναι χρήσιμο όταν τα ονόματα παραμέτρων δεν " +"έχουν πραγματικό νόημα, εάν δεν θέλετε να επιβάλετε τη σειρά των ορισμάτων " +"όταν καλείται η συνάρτηση ή εάν πρέπει να ληφθούν ορισμένες παράμετροι θέσης " +"και αυθαίρετα keywords." #: tutorial/controlflow.rst:881 msgid "" @@ -1010,17 +1072,18 @@ msgid "" "understandable by being explicit with names or you want to prevent users " "relying on the position of the argument being passed." msgstr "" -"Χρησιμοποιήστε keyword μόνο όταν τα ονόματα έχουν νόημα και ο ορισμός της συνάρτησης " -"είναι πιο κατανοητός όταν είναι ρητός με ονόματα ή θέλετε να αποτρέψετε τους χρήστες να βασίζονται " -"στη θέση του επιχειρήματος που μεταβιβάζεται." +"Χρησιμοποιήστε keyword μόνο όταν τα ονόματα έχουν νόημα και ο ορισμός της " +"συνάρτησης είναι πιο κατανοητός όταν είναι ρητός με ονόματα ή θέλετε να " +"αποτρέψετε τους χρήστες να βασίζονται στη θέση του επιχειρήματος που " +"μεταβιβάζεται." #: tutorial/controlflow.rst:884 msgid "" "For an API, use positional-only to prevent breaking API changes if the " "parameter's name is modified in the future." msgstr "" -"Για ένα API, χρησιμοποιήστε το μόνο θέσης για να αποτρέψετε τη διακοπή των αλλαγών " -"τους API, εάν το όνομα της παραμέτρου τροποποιηθεί στο μέλλον." +"Για ένα API, χρησιμοποιήστε το μόνο θέσης για να αποτρέψετε τη διακοπή των " +"αλλαγών τους API, εάν το όνομα της παραμέτρου τροποποιηθεί στο μέλλον." #: tutorial/controlflow.rst:890 msgid "Arbitrary Argument Lists" @@ -1033,10 +1096,11 @@ msgid "" "wrapped up in a tuple (see :ref:`tut-tuples`). Before the variable number " "of arguments, zero or more normal arguments may occur. ::" msgstr "" -"Τέλος, η λιγότερο συχνά χρησιμοποιούμενη επιλογή είναι να ορίσετε ότι μια συνάρτηση " -"μπορεί να κληθεί μεέναν αυθαίρετο αριθμός ορισμάτων. Αυτά τα ορίσματα θα τυλιχθούν σε μια " -"πλειάδα (tuple) (βλ. :ref:`tut-tuples`). Πριν από τον μεταβλητό αριθμό ορισμάτων ενδέχεται " -"να προκύψουν μηδέν ή περισσότερα κανονικά ορίσματα. ::" +"Τέλος, η λιγότερο συχνά χρησιμοποιούμενη επιλογή είναι να ορίσετε ότι μια " +"συνάρτηση μπορεί να κληθεί με έναν αυθαίρετο αριθμός ορισμάτων. Αυτά τα " +"ορίσματα θα τυλιχθούν σε μια πλειάδα (tuple) (βλ. :ref:`tut-tuples`). Πριν " +"από τον μεταβλητό αριθμό ορισμάτων ενδέχεται να προκύψουν μηδέν ή " +"περισσότερα κανονικά ορίσματα. ::" #: tutorial/controlflow.rst:904 msgid "" @@ -1046,11 +1110,12 @@ msgid "" "``*args`` parameter are 'keyword-only' arguments, meaning that they can only " "be used as keywords rather than positional arguments. ::" msgstr "" -"Κανονικά, αυτά τα *variadic* ορίσματα θα είναι τελευταία στη λίστα των επίσημων " -"παραμέτρων, επειδή συλλέγουν όλα τα υπόλοιπα ορίσματα εισόδου που μεταβιβάζονται στη " -"συνάρτηση. Οποιεσδήποτε τυπικές παράμετροι που εμφανίζονται μετά την παράμετρο " -"``*args`` είναι 'μόνο keyword' ορίσματα, που σημαίνει ότι μπορούν να χρησιμοποιηθούν μόνο ως " -"λέξεις-κλειδιά και όχι ως ορίσματα θέσης. ::" +"Κανονικά, αυτά τα *variadic* ορίσματα θα είναι τελευταία στη λίστα των " +"επίσημων παραμέτρων, επειδή συλλέγουν όλα τα υπόλοιπα ορίσματα εισόδου που " +"μεταβιβάζονται στη συνάρτηση. Οποιεσδήποτε τυπικές παράμετροι που " +"εμφανίζονται μετά την παράμετρο ``*args`` είναι 'μόνο keyword' ορίσματα, που " +"σημαίνει ότι μπορούν να χρησιμοποιηθούν μόνο ως λέξεις-κλειδιά και όχι ως " +"ορίσματα θέσης. ::" #: tutorial/controlflow.rst:921 msgid "Unpacking Argument Lists" @@ -1065,20 +1130,21 @@ msgid "" "separately, write the function call with the ``*``\\ -operator to unpack " "the arguments out of a list or tuple::" msgstr "" -"Η αντίστροφη κατάσταση συμβαίνει όταν τα ορίσματα βρίσκονται ήδη σε μια λίστα ή " -"πλειάδα (tuple), αλλά πρέπει να αποσυμπιεστούν για μια κλήση συνάρτησης που απαιτεί " -"ξεχωριστά ορίσματα θέσης. Για παράδειγμα, η ενσωματωμένη (built-in) συνάρτηση :func:`range` " -"αναμένει ξεχωριστά *start* και *stop* ορισματα. Εάν δεν είναι διαθέσιμα ξεχωριστά, γράψτε την κλήση " -"συνάρτησης με τον ``*``\\ -τελεστή για να αποσυμπιέσετε τα ορίσματα από μια λίστα ή " -"πλειάδα (tuple)::" +"Η αντίστροφη κατάσταση συμβαίνει όταν τα ορίσματα βρίσκονται ήδη σε μια " +"λίστα ή πλειάδα (tuple), αλλά πρέπει να αποσυμπιεστούν για μια κλήση " +"συνάρτησης που απαιτεί ξεχωριστά ορίσματα θέσης. Για παράδειγμα, η " +"ενσωματωμένη (built-in) συνάρτηση :func:`range` αναμένει ξεχωριστά *start* " +"και *stop* ορίσματα. Εάν δεν είναι διαθέσιμα ξεχωριστά, γράψτε την κλήση " +"συνάρτησης με τον ``*``\\ -τελεστή για να αποσυμπιέσετε τα ορίσματα από μια " +"λίστα ή πλειάδα (tuple)::" #: tutorial/controlflow.rst:939 msgid "" "In the same fashion, dictionaries can deliver keyword arguments with the " "``**``\\ -operator::" msgstr "" -"Με τον ίδιο τρόπο, τα λεξικά μπορούν αν παραδίδουν keyword ορίσματα με τον " -"``**``\\ -τελεστη::" +"Με τον ίδιο τρόπο, τα λεξικά μπορούν να παραδίδουν keyword ορίσματα με τον " +"``**``\\ -τελεστή::" #: tutorial/controlflow.rst:955 msgid "Lambda Expressions" @@ -1094,11 +1160,12 @@ msgid "" "definitions, lambda functions can reference variables from the containing " "scope::" msgstr "" -"Μπορούν αν δημιουργηθούν μικρές ανώνυμες συναρτήσεις με το keyword :keyword:`lambda`. " -"Αυτή η συνάρτηση επιστρέφει το άθροισμα των δύο ορισμάτων της: ``lambda a, b: a+b``. " -"Οι συναρτήσεις Lambda μπορούν να χρησιμοποιηθούν όπου απαιτούνται αντικείμενα συνάρτησης. " -"Περιορίζονται συντακικά σε μία μόνο έκφραση. Σημασιολογικά, είναι απλώς syntactic sugar " -"για έναν ορισμό κανονικής συνάρτησης. Όπως οι ορισμοί ένθετων συναρτήσεων, οι συναρτήσεις " +"Μπορούν αν δημιουργηθούν μικρές ανώνυμες συναρτήσεις με το keyword :keyword:" +"`lambda`. Αυτή η συνάρτηση επιστρέφει το άθροισμα των δύο ορισμάτων της: " +"``lambda a, b: a+b``. Οι συναρτήσεις Lambda μπορούν να χρησιμοποιηθούν όπου " +"απαιτούνται αντικείμενα συνάρτησης. Περιορίζονται συντακτικά σε μία μόνο " +"έκφραση. Σημασιολογικά, είναι απλώς syntactic sugar για έναν ορισμό " +"κανονικής συνάρτησης. Όπως οι ορισμοί ένθετων συναρτήσεων, οι συναρτήσεις " "lambda μπορούν να παραπέμπουν σε μεταβλητές από το πεδίο που περιέχει::" #: tutorial/controlflow.rst:974 @@ -1106,8 +1173,9 @@ msgid "" "The above example uses a lambda expression to return a function. Another " "use is to pass a small function as an argument::" msgstr "" -"Το παραπάνω παράδειγμα χρησιμοποιεί μια έκφραση lambda για να επιστρέψει μια συνάρτηση. Μια άλλη " -"χρήση είναι η μετάδοση μιας μικρής συνάρτησης ως όρισμα::" +"Το παραπάνω παράδειγμα χρησιμοποιεί μια έκφραση lambda για να επιστρέψει μια " +"συνάρτηση. Μια άλλη χρήση είναι η μετάδοση μιας μικρής συνάρτησης ως " +"όρισμα::" #: tutorial/controlflow.rst:986 msgid "Documentation Strings" @@ -1118,7 +1186,8 @@ msgid "" "Here are some conventions about the content and formatting of documentation " "strings." msgstr "" -"Ακολουθούν ορισμένες συμβάσεις σχετικάμε το περιεχόμενο και τη μορφοποίηση των συμβολοσειρών τεκμηρίωσης." +"Ακολουθούν ορισμένες συμβάσεις σχετικά με το περιεχόμενο και τη μορφοποίηση " +"των συμβολοσειρών τεκμηρίωσης." #: tutorial/controlflow.rst:996 msgid "" @@ -1128,6 +1197,11 @@ msgid "" "to be a verb describing a function's operation). This line should begin " "with a capital letter and end with a period." msgstr "" +"Η πρώτη γραμμή πρέπει να είναι πάντα μια σύντομη, συνοπτική περίληψη του " +"σκοπού του αντικειμένου. Για συντομία, δεν πρέπει να αναφέρει ρητά το όνομα " +"ή τον τύπο του αντικειμένου , καθώς αυτά είναι διαθέσιμα με άλλα μέσα (εκτός " +"εάν το όνομα είναι ρήμα που περιγράφει τη λειτουργία της συνάρτησης). Αυτή " +"η γραμμή πρέπει να ξεκινά με κεφαλαίο γράμμα και να τελειώνει με τελεία." #: tutorial/controlflow.rst:1002 msgid "" @@ -1136,10 +1210,11 @@ msgid "" "The following lines should be one or more paragraphs describing the object's " "calling conventions, its side effects, etc." msgstr "" -"Εάν υπάρχουν περισσότερες γραμμές στη συμβολοσειρά τεκμηρίωσης, η δεύτερη γραμμήθα πρέπει " -"να είναι κενή, διαχωρίζοντας οπτικά τη σύνοψη από την υπόλοιπη περιγραφή. Οι ακόλουθες γραμμές " -"πρέπει να είναι μία ή περισσότερες παραγράφοι που περιγράφουν τις συμβάσεις κλήσης του αντικειμένου, " -"τις παρενέργειές του κ.λπ.." +"Εάν υπάρχουν περισσότερες γραμμές στη συμβολοσειρά τεκμηρίωσης, η δεύτερη " +"γραμμή θα πρέπει να είναι κενή, διαχωρίζοντας οπτικά τη σύνοψη από την " +"υπόλοιπη περιγραφή. Οι ακόλουθες γραμμές πρέπει να είναι μία ή περισσότερες " +"παράγραφοι που περιγράφουν τις συμβάσεις κλήσης του αντικειμένου, τις " +"παρενέργειές του κ.λπ.." #: tutorial/controlflow.rst:1007 msgid "" @@ -1155,21 +1230,23 @@ msgid "" "they occur all their leading whitespace should be stripped. Equivalence of " "whitespace should be tested after expansion of tabs (to 8 spaces, normally)." msgstr "" -"Ο parser της Python δεν αφαιρεί την εσοχή από τα literals της συμβολοσειράς πολλών " -"γραμμών στην Python, επομένως τα εργαλεία που επεξεργάζονται την τεκμηρίωση πρέπει " -"να αφαιρέσουν την εσοχή εάν είναι επιθυμητό. Αυτό γίνεται χρησιμοπιοώντας την ακόλουθη " -"σύμβαση. Η πρώτη μη κενή γραμμή *μετά* την πρώτη γραμμή της συμβολοσειράς καθορίζει το " -"μέγεθος της εσοχής για ολόκληρη τη συμβολοσειρά τεκμηρίωσης. (Δεν μπορούμε να χρησιμοποιήσουμε " -"την πρώτη γραμμή αφού είναι γενικά δίπλα στα εισαγωγικά της συμβολοσειράς, επομένως η εσοχή της δεν " -"είναι εμφανής στο literal της συμβολοσειράς.) Το κενό διάστημα " -"\"ισοδύναμο\" σε αυτήν την εσοχή αφαιρείται στη συνέχεια από την αρχή όλων των γραμμών της " -"συμβολοσειράς. Οι γραμμές που έχουν μικρότερη εσοχή δεν θα πρέπει να εμφανίζονται, αλλά αν εμφανιστούν " -"θα πρέπει να αφαιρεθεί όλο το αρχικό κενό τους. Η ισοδυναμία των κενών διαστημάτων θα πρέπει να " -"ελέγχεται μετά την επέκταση των καρτελών (σε 8 κενά, κανονικά)." +"Ο parser της Python δεν αφαιρεί την εσοχή από τα literals της συμβολοσειράς " +"πολλών γραμμών στην Python, επομένως τα εργαλεία που επεξεργάζονται την " +"τεκμηρίωση πρέπει να αφαιρέσουν την εσοχή εάν είναι επιθυμητό. Αυτό γίνεται " +"χρησιμοποιώντας την ακόλουθη σύμβαση. Η πρώτη μη κενή γραμμή *μετά* την " +"πρώτη γραμμή της συμβολοσειράς καθορίζει το μέγεθος της εσοχής για ολόκληρη " +"τη συμβολοσειρά τεκμηρίωσης. (Δεν μπορούμε να χρησιμοποιήσουμε την πρώτη " +"γραμμή αφού είναι γενικά δίπλα στα εισαγωγικά της συμβολοσειράς, επομένως η " +"εσοχή της δεν είναι εμφανής στο literal της συμβολοσειράς.) Το κενό διάστημα " +"\"ισοδύναμο\" σε αυτήν την εσοχή αφαιρείται στη συνέχεια από την αρχή όλων " +"των γραμμών της συμβολοσειράς. Οι γραμμές που έχουν μικρότερη εσοχή δεν θα " +"πρέπει να εμφανίζονται, αλλά αν εμφανιστούν θα πρέπει να αφαιρεθεί όλο το " +"αρχικό κενό τους. Η ισοδυναμία των κενών διαστημάτων θα πρέπει να ελέγχεται " +"μετά την επέκταση των καρτελών (σε 8 κενά, κανονικά)." #: tutorial/controlflow.rst:1019 msgid "Here is an example of a multi-line docstring::" -msgstr "Ακολουθεί ένα παράδειγμα νεός πολλαπλών γραμμών docstring::" +msgstr "Ακολουθεί ένα παράδειγμα ενός πολλαπλών γραμμών docstring::" #: tutorial/controlflow.rst:1037 msgid "Function Annotations" @@ -1181,10 +1258,10 @@ msgid "" "information about the types used by user-defined functions (see :pep:`3107` " "and :pep:`484` for more information)." msgstr "" -"Το :ref:`Function annotations ` είναι εντελώς προαιρετικές πληροφοριές " -"μεταδεδομένων σχετικά με τους τύπους χρησιμοποιούνται από συναρτήσεις που καθορίζονται " -"από το χρήστη (δείτε :pep:`3107` " -"και :pep:`484` για περισσότερες πληροφορίες)." +"Το :ref:`Function annotations ` είναι εντελώς προαιρετικές " +"πληροφορίες μεταδεδομένων σχετικά με τους τύπους χρησιμοποιούνται από " +"συναρτήσεις που καθορίζονται από το χρήστη (δείτε :pep:`3107` και :pep:`484` " +"για περισσότερες πληροφορίες)." #: tutorial/controlflow.rst:1049 msgid "" @@ -1197,13 +1274,15 @@ msgid "" "denoting the end of the :keyword:`def` statement. The following example has " "a required argument, an optional argument, and the return value annotated::" msgstr "" -"Το :term:`Annotations ` αποθηκεύονται στο χαρακτηριστικό " -":attr:`!__annotations__` της συνάρτησης ως λεξικό και δεν έχουνε καμία επίδραση σε κανένα άλλο " -"μέρος της συνάρτησης. Τα annotations των παραμέτρων ορίζονται με άνω και κάτω τελεία " -"μετά το όνομα παραμέτρου, ακολουθούμενη από μια έκφραση που αξιλογεί την τιμή του annotation. " -"Τα annotaions επιστροφής ορίζονται από ένα literal ``->``, ακολοθούμενο από μια έκφραση, μεταξύ " -"της λίστας παραμέτρων και της άνω και κάτω τελείας που υποδηλώνει το τέλος της δήλωσης :keyword:`def`. " -"Το ακόλουθο παράδειγμα έχει ένα απαιτούμενο όρισμα, ένα προαιρετικό όρισμα και την επιστρεφόμενη τιμή σε " +"Το :term:`Annotations ` αποθηκεύονται στο " +"χαρακτηριστικό :attr:`!__annotations__` της συνάρτησης ως λεξικό και δεν " +"έχουνε καμία επίδραση σε κανένα άλλο μέρος της συνάρτησης. Τα annotations " +"των παραμέτρων ορίζονται με άνω και κάτω τελεία μετά το όνομα παραμέτρου, " +"ακολουθούμενη από μια έκφραση που αξιολογεί την τιμή του annotation. Τα " +"annotations επιστροφής ορίζονται από ένα literal ``->``, ακολουθούμενο από " +"μια έκφραση, μεταξύ της λίστας παραμέτρων και της άνω και κάτω τελείας που " +"υποδηλώνει το τέλος της δήλωσης :keyword:`def`. Το ακόλουθο παράδειγμα έχει " +"ένα απαιτούμενο όρισμα, ένα προαιρετικό όρισμα και την επιστρεφόμενη τιμή σε " "annotations::" #: tutorial/controlflow.rst:1071 @@ -1218,11 +1297,13 @@ msgid "" "others. Making it easy for others to read your code is always a good idea, " "and adopting a nice coding style helps tremendously for that." msgstr "" -"Τώρα που πρόκειται να γράψετε μεγαλύτερα, και πιο σύνθετα κομμάτια της Python, είνι η " -"κατάλληλη στιγμή να μιλήσετε για *στυλ κώδικα*. Οι περισσότερες γλώσσες μπορούν να γραφτούν " -"(ή πιο συνοπτικές, *μοροφοποιημένες*) σε διαφορετικά στυλ· μερικές είναι πιο ευανάγνωστες από άλλες. " -"Το να διευκολύνετε τους άλλους να διαβάσουν τον κώδικα σας είναι πάντα μια καλή ιδέα και η υιοθέτηση ενός " -"ωραίου στυλ κώδικα βοηθάει πάρα πολύ σε αυτό." +"Τώρα που πρόκειται να γράψετε μεγαλύτερα, και πιο σύνθετα κομμάτια της " +"Python, είναι η κατάλληλη στιγμή να μιλήσετε για *στυλ κώδικα*. Οι " +"περισσότερες γλώσσες μπορούν να γραφτούν (ή πιο συνοπτικές, " +"*μοροφοποιημένες*) σε διαφορετικά στυλ· μερικές είναι πιο ευανάγνωστες από " +"άλλες. Το να διευκολύνετε τους άλλους να διαβάσουν τον κώδικα σας είναι " +"πάντα μια καλή ιδέα και η υιοθέτηση ενός ωραίου στυλ κώδικα βοηθάει πάρα " +"πολύ σε αυτό." #: tutorial/controlflow.rst:1082 msgid "" @@ -1231,9 +1312,10 @@ msgid "" "Python developer should read it at some point; here are the most important " "points extracted for you:" msgstr "" -"Για την Python, το :pep:`8` έχει αναδειχθεί ως οδηγός στηλ στον οποίο τηρούν τα περισσότερα έργα· " -"προωθεί ένα πολύ ευανάγνωστο και ευχάριστο στυλ κώδικα. Κάθε προγραμματιστής Python θα πρέπει να το " -"διαβάσει κάποια στιγμή· εδώ είναι τα πιο σημαντικό σημεία που εξάγονται για εσάς:" +"Για την Python, το :pep:`8` έχει αναδειχθεί ως οδηγός στυλ στον οποίο τηρούν " +"τα περισσότερα έργα· προωθεί ένα πολύ ευανάγνωστο και ευχάριστο στυλ " +"κώδικα. Κάθε προγραμματιστής Python θα πρέπει να το διαβάσει κάποια στιγμή· " +"εδώ είναι τα πιο σημαντικό σημεία που εξάγονται για εσάς:" #: tutorial/controlflow.rst:1087 msgid "Use 4-space indentation, and no tabs." @@ -1245,9 +1327,10 @@ msgid "" "nesting depth) and large indentation (easier to read). Tabs introduce " "confusion, and are best left out." msgstr "" -"Τα 4 κενά είναι ένας καλό συμβιβασμό μεταξύ της μικρής εσοχής (επιτρέπει μεγαλύτερο " -"βάθος εμφώλευσης) και της μεγάλης εσοχής (ευκολότερη στην ανάγνωση). Τα tabs δημιουργούν " -"σύγχυση, και είναι καλύτερο να παραμείνουν απέξω." +"Τα 4 κενά είναι ένας καλός συμβιβασμός μεταξύ της μικρής εσοχής (επιτρέπει " +"μεγαλύτερο βάθος εμφώλευσης) και της μεγάλης εσοχής (ευκολότερη στην " +"ανάγνωση). Τα tabs δημιουργούν σύγχυση, και είναι καλύτερο να παραμείνουν " +"απέξω." #: tutorial/controlflow.rst:1093 msgid "Wrap lines so that they don't exceed 79 characters." @@ -1266,8 +1349,8 @@ msgid "" "Use blank lines to separate functions and classes, and larger blocks of code " "inside functions." msgstr "" -"Χρησιμοποιείστε κενές γραμμές για να διαχωρίσετε συναρτήσεις και κλάσεις και μεγαλύτερα " -"μπλοκ κώδικα μέσα συναρτήσεις." +"Χρησιμοποιείστε κενές γραμμές για να διαχωρίσετε συναρτήσεις και κλάσεις και " +"μεγαλύτερα μπλοκ κώδικα μέσα συναρτήσεις." #: tutorial/controlflow.rst:1101 msgid "When possible, put comments on a line of their own." @@ -1282,8 +1365,8 @@ msgid "" "Use spaces around operators and after commas, but not directly inside " "bracketing constructs: ``a = f(1, 2) + g(3, 4)``." msgstr "" -"Χρησιμοποιήστε κενά γύρω από τελεστές και μετά από κόμματα, αλλά όχι απευθείας μέσα " -"δε δομές αγκύλων: ``a = f(1, 2) + g(3, 4)``." +"Χρησιμοποιήστε κενά γύρω από τελεστές και μετά από κόμματα, αλλά όχι " +"απευθείας μέσα δε δομές αγκύλων: ``a = f(1, 2) + g(3, 4)``." #: tutorial/controlflow.rst:1108 msgid "" @@ -1292,10 +1375,12 @@ msgid "" "functions and methods. Always use ``self`` as the name for the first method " "argument (see :ref:`tut-firstclasses` for more on classes and methods)." msgstr "" -"Ονομάστε τις κλάσεις και τις συναρτήσεις σας με συνέπεια· η σύμβαση είναι " -"να χρησιμοποιείτε ``UpperCamelCase`` για τις κλάσεις και ``lowercase_with_underscores`` " -"για τις συναρτήσεις και τις μεθόδους. Χρησιμοποιείτε πάντα το ``self`` ως όνομα για το " -"πρώτο όρισμα μεθόδου (δείτε :ref:`tut-firstclasses` για περισσότερα σχετικά με τις κλάσεις και τις μεθόδους)." +"Ονομάστε τις κλάσεις και τις συναρτήσεις σας με συνέπεια· η σύμβαση είναι να " +"χρησιμοποιείτε ``UpperCamelCase`` για τις κλάσεις και " +"``lowercase_with_underscores`` για τις συναρτήσεις και τις μεθόδους. " +"Χρησιμοποιείτε πάντα το ``self`` ως όνομα για το πρώτο όρισμα μεθόδου " +"(δείτε :ref:`tut-firstclasses` για περισσότερα σχετικά με τις κλάσεις και " +"τις μεθόδους)." #: tutorial/controlflow.rst:1113 msgid "" @@ -1303,9 +1388,9 @@ msgid "" "environments. Python's default, UTF-8, or even plain ASCII work best in any " "case." msgstr "" -"Μην χρησιμοποιείτε φανταχτερές κωδικοποιήσεις εάν ο κώδικας σας προορίζεται να χρησιμοποιηθεί " -"σε διεθνή περιβάλλοντα. Η προεπιλογή της Python, UTF-8, ή ακόμα και το απλό ASCII λειτουργούν " -"καλύτερα σε κάθε περίπτωση." +"Μην χρησιμοποιείτε φανταχτερές κωδικοποιήσεις εάν ο κώδικας σας προορίζεται " +"να χρησιμοποιηθεί σε διεθνή περιβάλλοντα. Η προεπιλογή της Python, UTF-8, ή " +"ακόμα και το απλό ASCII λειτουργούν καλύτερα σε κάθε περίπτωση." #: tutorial/controlflow.rst:1117 msgid "" @@ -1313,9 +1398,9 @@ msgid "" "slightest chance people speaking a different language will read or maintain " "the code." msgstr "" -"Ομοίως, μη χρησιμοποιείτε χαρακτήρες που δεν είναι ASCII σε αναγνωριστικά εάν υπάρχει " -"μόνο η παραμικρή πιθανότητα οι άνθρωποι που μιλούν διαφορετική γλώσσα να διαβάσουν ή να " -"διατηρήσουν τον κώδικα." +"Ομοίως, μη χρησιμοποιείτε χαρακτήρες που δεν είναι ASCII σε αναγνωριστικά " +"εάν υπάρχει μόνο η παραμικρή πιθανότητα οι άνθρωποι που μιλούν διαφορετική " +"γλώσσα να διαβάσουν ή να διατηρήσουν τον κώδικα." #: tutorial/controlflow.rst:1123 msgid "Footnotes" @@ -1327,9 +1412,10 @@ msgid "" "a mutable object is passed, the caller will see any changes the callee makes " "to it (items inserted into a list)." msgstr "" -"Στην πραγματικότητα, η *κλήση με αναφορά αντικειμένου* θα ήταν μια καλύτερη περιγραφή, καθώς " -"εάν μεταβιβαστεί ένα μεταβλητό αντικείμενο, ο καλών θα δει τυχόν αλλαγές που κάνει ο καλών σε αυτό " -"(στοιχεία που εισάγονται σε μια λίστα)." +"Στην πραγματικότητα, η *κλήση με αναφορά αντικειμένου* θα ήταν μια καλύτερη " +"περιγραφή, καθώς εάν μεταβιβαστεί ένα μεταβλητό αντικείμενο, ο καλών θα δει " +"τυχόν αλλαγές που κάνει ο καλών σε αυτό (στοιχεία που εισάγονται σε μια " +"λίστα)." #: tutorial/controlflow.rst:48 msgid "statement" From d022c01b969566002a5a282f017b29966656a153 Mon Sep 17 00:00:00 2001 From: skpanagiotis Date: Thu, 26 Sep 2024 11:19:10 +0300 Subject: [PATCH 03/10] Minor fix in translation --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index b8db6cf5..913c04ba 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -258,7 +258,7 @@ msgid "" msgstr "" "Όταν χρησιμοποιείται με έναν βρόχο, η πρόταση ``else`` έχει περισσότερα " "κοινά με την πρόταση ``else`` μιας πρότασης :keyword:`try` παρά με αυτήν των " -"δηλώσεων keyword:`if`: η πρόταση ``else`` μιας δήλωσης :keyword:`try` " +"δηλώσεων :keyword:`if`: η πρόταση ``else`` μιας δήλωσης :keyword:`try` " "εκτελείται όταν δεν υπάρχει εξαίρεση, και η πρόταση ``else`` ενός βρόχου " "εκτελείται όταν δεν υπάρχει ``break``. Για περισσότερα με τη δήλωση :keyword:" "`!try` και τις εξαιρέσεις, δείτε :ref:`tut-handling`." From 1de8b94708210edf05f749a22af364a8d9c3ec36 Mon Sep 17 00:00:00 2001 From: Panagiotis Skias Date: Thu, 26 Sep 2024 12:33:18 +0300 Subject: [PATCH 04/10] Update tutorial/controlflow.po Co-authored-by: Theofanis Petkos --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 913c04ba..a879c254 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -39,7 +39,7 @@ msgid "" "Perhaps the most well-known statement type is the :keyword:`if` statement. " "For example::" msgstr "" -"Ίσως ο πιο γνωστός τύπος δήλωσης είναι η πρόταση :keyword:`if`. Για " +"Ίσως ο πιο γνωστός τύπος statement είναι η πρόταση :keyword:`if`. Για " "παράδειγμα::" #: tutorial/controlflow.rst:33 From e8f0476a118e6197d781629cfadb603fdd87c95c Mon Sep 17 00:00:00 2001 From: Panagiotis Skias Date: Thu, 26 Sep 2024 12:33:23 +0300 Subject: [PATCH 05/10] Update tutorial/controlflow.po Co-authored-by: Theofanis Petkos --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index a879c254..06e3006d 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -55,7 +55,7 @@ msgstr "" "συντομογραφία του 'else if', και είναι χρήσιμη για να αποφύγετε την " "υπερβολική εσοχή. Μια ακολουθία keyword:`!if` ... :keyword:`!elif` ... :" "keyword:`!elif` ... είναι υποκατάστατο των δηλώσεων ``switch`` ή ``case`` " -"που βρέθηκαν σε άλλες γλώσσες." +"που υπάρχουν σε άλλες γλώσσες." #: tutorial/controlflow.rst:39 msgid "" From 7615d98f7caa0820cf33c25d09f94ff47c394ad0 Mon Sep 17 00:00:00 2001 From: Panagiotis Skias Date: Thu, 26 Sep 2024 12:33:30 +0300 Subject: [PATCH 06/10] Update tutorial/controlflow.po Co-authored-by: Theofanis Petkos --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 06e3006d..e4c18c11 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -110,7 +110,7 @@ msgid "" "If you do need to iterate over a sequence of numbers, the built-in function :" "func:`range` comes in handy. It generates arithmetic progressions::" msgstr "" -"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη " +"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη (built-in) " "συνάρτηση :func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές προόδους::" #: tutorial/controlflow.rst:108 From fb57550d96f3dcdae33b14fc5598e1af8f6f002d Mon Sep 17 00:00:00 2001 From: Panagiotis Skias Date: Thu, 26 Sep 2024 12:33:41 +0300 Subject: [PATCH 07/10] Update tutorial/controlflow.po Co-authored-by: Theofanis Petkos --- tutorial/controlflow.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index e4c18c11..a9392fed 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -333,7 +333,7 @@ msgid "" "Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and " "never fails to match. If no case matches, none of the branches is executed." msgstr "" -"Σημειώστε το τελευταίο μπλοκ: το \"όνομα μεταβλητής\" ``_`` λειτουργεί ως " +"Σημειώστε το τελευταίο μπλοκ: το \"variable name\" ``_`` λειτουργεί ως " "*μπαλαντέρ* και δεν αποτυγχάνει ποτέ να ταιριάζει. Εάν δεν ταιριάζει κανένα " "case, κανένας από τους κλάδους δεν εκτελείται." From d34a410e6bf6461d4b0ef82a94b6eba09300d318 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci-lite[bot]" <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 09:35:26 +0000 Subject: [PATCH 08/10] [pre-commit.ci lite] apply automatic fixes --- tutorial/controlflow.po | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index a9392fed..83407ac9 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -110,8 +110,9 @@ msgid "" "If you do need to iterate over a sequence of numbers, the built-in function :" "func:`range` comes in handy. It generates arithmetic progressions::" msgstr "" -"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη (built-in) " -"συνάρτηση :func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές προόδους::" +"Εάν χρειάζεται να κάνετε επανάληψη σε μια ακολουθία αριθμών, η ενσωματωμένη " +"(built-in) συνάρτηση :func:`range` είναι χρήσιμη. Δημιουργεί αριθμητικές " +"προόδους::" #: tutorial/controlflow.rst:108 msgid "" From 8cef51dbd116f8de0dfe99b855dd4cea1b59df60 Mon Sep 17 00:00:00 2001 From: skpanagiotis Date: Mon, 30 Sep 2024 23:19:33 +0300 Subject: [PATCH 09/10] Fixes in translation and add word in main.txt --- dictionaries/main.txt | 2 ++ tutorial/controlflow.po | 28 ++++++++++++++-------------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/dictionaries/main.txt b/dictionaries/main.txt index 34a24c27..a22c6bf3 100644 --- a/dictionaries/main.txt +++ b/dictionaries/main.txt @@ -356,7 +356,9 @@ unpacking up user v +value van +variable web whitespace wiki diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 83407ac9..2c32c266 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -2,14 +2,14 @@ # Copyright (C) 2001-2024, Python Software Foundation # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. -# +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-03-14 12:51+0000\n" -"PO-Revision-Date: 2024-09-26 09:49+0300\n" +"PO-Revision-Date: 2024-09-30 23:13+0300\n" "Last-Translator: Panagiotis Skias \n" "Language-Team: PyGreece \n" "Language: el\n" @@ -259,7 +259,7 @@ msgid "" msgstr "" "Όταν χρησιμοποιείται με έναν βρόχο, η πρόταση ``else`` έχει περισσότερα " "κοινά με την πρόταση ``else`` μιας πρότασης :keyword:`try` παρά με αυτήν των " -"δηλώσεων :keyword:`if`: η πρόταση ``else`` μιας δήλωσης :keyword:`try` " +"statements :keyword:`if`: η πρόταση ``else`` μιας δήλωσης :keyword:`try` " "εκτελείται όταν δεν υπάρχει εξαίρεση, και η πρόταση ``else`` ενός βρόχου " "εκτελείται όταν δεν υπάρχει ``break``. Για περισσότερα με τη δήλωση :keyword:" "`!try` και τις εξαιρέσεις, δείτε :ref:`tut-handling`." @@ -430,10 +430,10 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" -"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως " -"\"guard\". Εάν το guard είναι false, το ``match`` συνεχίζει για να " -"δοκιμάσει το επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη της " -"τιμής γίνεται πριν ο guard αξιολογηθεί::" +"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως \"guard" +"\". Εάν το guard είναι false, το ``match`` συνεχίζει για να δοκιμάσει το " +"επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη της τιμής γίνεται " +"πριν ο guard αξιολογηθεί::" #: tutorial/controlflow.rst:383 msgid "Several other key features of this statement:" @@ -465,8 +465,8 @@ msgstr "" #: tutorial/controlflow.rst:394 msgid "" -"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the " -"``\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " +"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``" +"\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" @@ -1225,11 +1225,11 @@ msgid "" "line *after* the first line of the string determines the amount of " "indentation for the entire documentation string. (We can't use the first " "line since it is generally adjacent to the string's opening quotes so its " -"indentation is not apparent in the string literal.) Whitespace " -"\"equivalent\" to this indentation is then stripped from the start of all " -"lines of the string. Lines that are indented less should not occur, but if " -"they occur all their leading whitespace should be stripped. Equivalence of " -"whitespace should be tested after expansion of tabs (to 8 spaces, normally)." +"indentation is not apparent in the string literal.) Whitespace \"equivalent" +"\" to this indentation is then stripped from the start of all lines of the " +"string. Lines that are indented less should not occur, but if they occur " +"all their leading whitespace should be stripped. Equivalence of whitespace " +"should be tested after expansion of tabs (to 8 spaces, normally)." msgstr "" "Ο parser της Python δεν αφαιρεί την εσοχή από τα literals της συμβολοσειράς " "πολλών γραμμών στην Python, επομένως τα εργαλεία που επεξεργάζονται την " From 27bd6889649a0218677c19b03ca43bda25407f9a Mon Sep 17 00:00:00 2001 From: "pre-commit-ci-lite[bot]" <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 20:21:39 +0000 Subject: [PATCH 10/10] [pre-commit.ci lite] apply automatic fixes --- tutorial/controlflow.po | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 2c32c266..fb1f7b91 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -2,7 +2,7 @@ # Copyright (C) 2001-2024, Python Software Foundation # This file is distributed under the same license as the Python package. # FIRST AUTHOR , YEAR. -# +# #, fuzzy msgid "" msgstr "" @@ -430,10 +430,10 @@ msgid "" "guard is false, ``match`` goes on to try the next case block. Note that " "value capture happens before the guard is evaluated::" msgstr "" -"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως \"guard" -"\". Εάν το guard είναι false, το ``match`` συνεχίζει για να δοκιμάσει το " -"επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη της τιμής γίνεται " -"πριν ο guard αξιολογηθεί::" +"Μπορούμε να προσθέσουμε μια πρόταση ``if`` σε ένα μοτίβο, γνωστό ως " +"\"guard\". Εάν το guard είναι false, το ``match`` συνεχίζει για να " +"δοκιμάσει το επόμενο μπλοκ πεζών-κεφαλαίων. Λάβετε υπόψη ότι η σύλληψη της " +"τιμής γίνεται πριν ο guard αξιολογηθεί::" #: tutorial/controlflow.rst:383 msgid "Several other key features of this statement:" @@ -465,8 +465,8 @@ msgstr "" #: tutorial/controlflow.rst:394 msgid "" -"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``" -"\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " +"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the " +"``\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "also supported. (But ``**_`` would be redundant, so it is not allowed.)" msgstr "" @@ -1225,11 +1225,11 @@ msgid "" "line *after* the first line of the string determines the amount of " "indentation for the entire documentation string. (We can't use the first " "line since it is generally adjacent to the string's opening quotes so its " -"indentation is not apparent in the string literal.) Whitespace \"equivalent" -"\" to this indentation is then stripped from the start of all lines of the " -"string. Lines that are indented less should not occur, but if they occur " -"all their leading whitespace should be stripped. Equivalence of whitespace " -"should be tested after expansion of tabs (to 8 spaces, normally)." +"indentation is not apparent in the string literal.) Whitespace " +"\"equivalent\" to this indentation is then stripped from the start of all " +"lines of the string. Lines that are indented less should not occur, but if " +"they occur all their leading whitespace should be stripped. Equivalence of " +"whitespace should be tested after expansion of tabs (to 8 spaces, normally)." msgstr "" "Ο parser της Python δεν αφαιρεί την εσοχή από τα literals της συμβολοσειράς " "πολλών γραμμών στην Python, επομένως τα εργαλεία που επεξεργάζονται την " pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy