Λήψη στοιχείων και των δεικτών τους στην Python

Από ένα iterable αντικείμενο μπορούμε να εκτυπώσουμε όχι μόνο τα στοιχεία, αλλά και τους δείκτες τους. Για αυτό χρησιμοποιείται η συνάρτηση enumerate. Στην παράμετρό της ορίζουμε το επιθυμητό iterable αντικείμενο.

Παράδειγμα

Ας υποθέσουμε ότι έχουμε μια λίστα lst:

pythonlst = ['a', 'b', 'c']

Ας εκτυπώσουμε από αυτήν τα στοιχεία με τους δείκτες τους. Θα ορίσουμε το ζεύγος στοιχείο-δείκτης ως μια μεταβλητή item, την οποία θα ψάχνουμε στο αντικείμενο που περνάμε στη συνάρτηση enumerate:

pythonfor item in enumerate(lst):
  print(item)

Μετά την εκτέλεση του κώδικα θα εκτυπωθούν tuples από δείκτη και στοιχείο:

python(0, 'a')
(1, 'b')
(2, 'c')

Παράδειγμα

Για να λάβουμε χωριστά τα στοιχεία και τους δείκτες τους, μπορούμε να τα αποσυσκευάσουμε μέσω δύο μεταβλητών key και value:

pythonfor item in enumerate(lst):
  key, value = item
  print(key)
  print(value)
  print()

Αποτέλεσμα εκτέλεσης του κώδικα:

python0, 'a'

1, 'b'

2, 'c'

Σε συνοπτική μορφή, οι δείκτες και τα στοιχεία μπορούν να γραφτούν αμέσως στο μπλοκ for:

pythonfor key, value in enumerate(lst):
  print(key)
  print(value)
  print()

Πρακτικές ασκήσεις

Задание 1

Δίνεται η λίστα:

pythontst = [8, 6, -4, 2, -1]

Εκτυπώστε στην κονσόλα τις τιμές των στοιχείων και τους δείκτες τους μέχρι τον πρώτο αρνητικό αριθμό.

Задание 2

Δίνεται η λίστα:

pythontst = ['a', 'b', 'c', 'd', 'e']

Εκτυπώστε στην κονσόλα τις τιμές των στοιχείων και τους δείκτες τους:

python'a1'
'b2'
'c3'
'd4'
'e5'
Задание 3

Δίνεται η λίστα:

pythontst = [1, 2, 3, 4, 5]

Τα στοιχεία που βρίσκονται σε ζυγές θέσεις υψώστε στο τετράγωνο, ενώ σε μονές - στον κύβο.