Ενότητα 4 - Τμήμα 0 - Επανάληψη, επανάληψη, επανάληψη!

Ιστότοπος: ΕΛ/ΛΑΚ Moodle
Μάθημα: Εργαστήριο Python
Βιβλίο: Ενότητα 4 - Τμήμα 0 - Επανάληψη, επανάληψη, επανάληψη!
Εκτυπώθηκε από: Guest user
Ημερομηνία: Πέμπτη, 21 Νοεμβρίου 2024, 11:27 PM

Περιγραφή

Αυτό το τμήμα είναι μία επανάληψη των προηγούμενων ενοτήτων.

4.0.1 - Μέθοδοι για λίστες

Ας θυμηθούμε ξανά κάποιες από τις μεθόδους για τις λίστες. Εκτελέστε τις παρακάτω εντολές στο περιβάλλον εντολών (CLI) του Thonny τη μία μετά την άλλη:

>>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana']

>>> fruits.count('apple')

>>> fruits.count('tangerine')

>>> fruits.index('banana')

>>> fruits.index('banana', 4)  # Find next banana starting a position 4

>>> fruits.reverse()

>>> fruits

>>> fruits.append('grape')

>>> fruits

>>> fruits.sort()

>>> fruits

>>> fruits.pop()

4.0.2 - Αντικείμενα σε μία λίστα

Όταν δημιουργήσαμε μία λίστα με 20 αριθμούς (kino) στο μάθημα (3.2.5) σε ρωτήσαμε αν οι αριθμοί στην λίστα ήταν μοναδικοί. Η Απάντηση είναι ΟΧΙ γιατί όταν προσθέτουμε τυχαίους αριθμούς μπορεί να προσθέσουμε παραπάνω από μία φορά τον ίδιο αριθμό.

Αν έχεις αποθηκεύσει το πρόγραμμα kino άνοιξε το ή αλλίως πήγαινε στο 3.2.5,  αντέγραψε τον κώδικα από εκεί και αποθήκευσε τον σαν kino.

Μετά την εκτέλεση του κώδικα κοίτα την έξοδο του, βρες ένα αριθμό και γράψε τις εντολές όπως στην φωτογραφία.


Με την εντολή in μπορούμε να ψάξουμε μέσα στη λίστα.

Αντέγραψε και επικόλλησε τον κώδικα που ακολουθεί στο Thonny και αποθήκευσε το σαν kino2 :

# This code creates and prints 20 Unique kino numbers import random # random is a library kino_list=[] # create an empty list for i in range(20): new_number = random.randrange(1,81) while new_number in kino_list: # if new number is in the list select another until new_number = random.randrange(1,81) # it is not in the list kino_list.append(new_number) # appends a random number to the list print (kino_list)


Σύγκρινε τον με τον προηγούμενο κώδικα του προγράμματος kino. Βλέπεις 20 μοναδικούς αριθμούς τώρα;

4.0.3 - Το εύρος είναι ο οδηγός

Η Χρήση επαναλήψεων στον προγραμματισμό υπολογιστών μας επιτρέπει να αυτοματοποιήσουμε και να επαναλάβουμε παρόμοιες εργασίες πολλές φορές.

Μία επανάληψη for υλοποιεί την επαναλαμβανόμενη εκτέλεση κώδικα βασισμένη σε ένα μετρητή επαναλήψεων ή μεταβλητή επανάληψης. Αυτό σημαίνει ότι οι επαναλήψεις με for χρησιμοποιούνται ότι ο αριθμός επαναλήψεων είναι γνωστός πριν μπούμε στο βρόχο, αντίθετα με τις επαναλήψεις με while που η επανάληψη βασίζεται σε κάποια συνθήκη.

Ας ρίκουμε μια ματιά σε ένα βρόχο με for που επαναλαμβάνεται μέσω ενός εύρους τιμών. Γράψτε τις ακόλουθες εντολές στη CLI περιοχή του Thonny. Μετά από την πληκτρολόηση κάθε εντολής πατήστε το πλήκτρο Enter.

>>>  for i in range(0,5):
              print(i)

Όταν εκτελούμε αυτό το πρόγραμμα η έξοδος είναι:

0
1
2
3
4


Αυτό το for χρησιμοποιεί το i σαν μεταβλητή επανάληψης, και η αλληλουχία είναι στο εύρο από το 0 έως το 5 (το 5 δεν εκτυπώνεται).

Μέσα στον βρόγχο τυπώνουμε ένα ακέραιο σε κάθε επανάληψη. Να έχετε στο νου σας ότι στον προγραμματισμό τείνουμε να αρχικοποιούμε από την τιμή 0, και γι αυτό παρόλο που 5 αριθμοί εμφανίζονται αυτοί είναι από το 0 μέχρι το 4.

Ένα ακόμα παράδειγμα, χρησιμοποιόντας τα από (start), μέχρι(stop) και βήμα(step):

>>>for i in range(0,15,3):
              print(i)


Σε αυτή την περίπτωση, η επανάληψη for είναι καθορισμένη ώστε οι αριθμοί από το 0 μέχρι το 15(δεν εκτυπώνεται) εκτυπώνονται,  αλλά με ένα βήμα 3, έτσι μόνο ένας κάθε τρεις αριθμούς εμφανίζεται, έτσι:

0
3
6
9
12

Μπορούμε επίσης να χρησιμοποιήσουμε αρνητική τιμή για βήμα ώστε να κάνουμε επαναλήψεις προς τα πίσω, αλλά πρέπει να αλλάξουμε και τα από (start) και  μέχρι(stop) αναλόγως:

>>> for i in range(100,0,-10):
              print(i)


Εδώ, το 100 είναι η τιμή έναρξης, το 0 είναι η τιμή τερματισμού, και -10 είναι το βήμα, έτσι η επανάληψη αρχίζει το i στο 100 και τελειώνει στο 0(δεν εκτυπώνεται), μειούμενο κατά 10 σε κάθε επανάληψη. Μπορούμε να το δούμε να συμβαίνει στην έξοδο:

100
90
80
70
60
50
40
30
20
10