Python Συνάρτηση enumerate(): Βρόχος, Πλειάδα & Σειρά χαρακτήρων

⚡ Έξυπνη Σύνοψη

Python Η enumerate() προσθέτει έναν αυτόματο μετρητή σε οποιαδήποτε επαναλήψιμη μέθοδο, επιστρέφοντας ζεύγη ευρετηρίου-τιμής καθώς κάνετε επανάληψη. Εδώ θα μάθετε τη σύνταξή της, τον προαιρετικό δείκτη έναρξης και πώς λειτουργεί σε λίστες, πλειάδες, συμβολοσειρές και λεξικά.

  • 🔢 Τι κάνει: Προσθέτει έναν μετρητή σε κάθε στοιχείο ενός επαναλήψιμου στοιχείου, επιστρέφοντας ζεύγη δείκτη-τιμής.
  • ⚙️ Σύνταξη: Η enumerate(iterable, startIndex) δέχεται έναν επαναλήψιμο αριθμό συν έναν προαιρετικό αριθμό έναρξης.
  • 🔟 Προσαρμοσμένη έναρξη: Το startIndex ορίζει από πού ξεκινά η μέτρηση· παραλείψτε το ώστε να ξεκινά από το 0.
  • 🔁 Τουαλέταping: Συνδέστε το με έναν βρόχο for για να διαβάσετε μαζί τον δείκτη και την τιμή.
  • 📦 Οποιοδήποτε επαναλήψιμο: Λειτουργεί σε λίστες, πλειάδες, συμβολοσειρές και λεξικά.
  • 🤖 Βοήθεια με την Τεχνητή Νοημοσύνη: Τα εργαλεία Copilot και AI συμπληρώνουν αυτόματα τους βρόχους enumerate() και αναδιαμορφώνουν χειροκίνητα τους μετρητές.

Συνάρτηση Enumerate() σε Python

Τι είναι Python Απαριθμώ;

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

Σύνταξη του Python απαριθμώ()

enumerate(iterable, startIndex)

Παράμετροι

Τρεις παράμετροι είναι:

  • Επαληθεύσιμο: ένα αντικείμενο που μπορεί να επαναληφθεί.
  • StartIndex: (προαιρετικό) Η καταμέτρηση θα ξεκινήσει με την τιμή που δίνεται στο startIndex για το πρώτο στοιχείο του βρόχου και θα την αυξήσει για το επόμενο στοιχείο μέχρι να φτάσει στο τέλος του βρόχου.

Ωστόσο, εάν δεν έχει καθοριστεί το startIndex, η μέτρηση θα ξεκινήσει από το 0.

ReturnValue

Θα επιστρέψει ένα iterableobject, με την μέτρηση για κάθε ένα από τα στοιχεία στο iteratorobject που δίνεται ως είσοδος.

Enumerate() σε Python Παράδειγμα

Η μέθοδος απαρίθμησης συνοδεύεται από έναν αυτόματο μετρητή/ευρετήριο για καθένα από τα στοιχεία που υπάρχουν στη λίστα απαρίθμηση σε Python. Η τιμή του πρώτου ευρετηρίου θα ξεκινά από το 0. Μπορείτε επίσης να καθορίσετε τον δείκτη έναρξης χρησιμοποιώντας την προαιρετική παράμετρο startIndex στο enumerate.
Παράδειγμα
Στον παρακάτω κώδικα, η λίστα mylist είναι η λίστα που δίνεται στη συνάρτηση Enumerate in Python. ο συνάρτηση list(). χρησιμοποιείται για την εμφάνιση του Enumerate Python εξόδου.

Σημείωση: Δεν χρησιμοποιείται startIndex, επομένως το ευρετήριο για το πρώτο στοιχείο θα ξεκινά από το 0.

Η έξοδος από το enumerate θα είναι με τον ακόλουθο τρόπο:

(0, item_1), (1, item_2), (2, item_3), … (n, item_n)

Αρχείο: python_enumerate.py

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist)
print(list(e_list))

Παραγωγή:

[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]

Χρησιμοποιώντας την Enumerate() σε μια λίστα με startIndex

Στο παρακάτω παράδειγμα, ο δείκτης έναρξης δίνεται ως 2. Το ευρετήριο του πρώτου στοιχείου θα ξεκινά από το δεδομένο δείκτη έναρξης.

Παράδειγμα:

Στο παρακάτω παράδειγμα, η λίστα μου είναι η λίστα που δίνεται για απαρίθμηση. Η συνάρτηση list() χρησιμοποιείται για την εμφάνιση της εξόδου απαρίθμησης.

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist,2)
print(list(e_list))

Παραγωγή:

[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]

Τουαλέταping Πάνω από ένα αντικείμενο Enumerate

Το παράδειγμα δείχνει την απαρίθμηση πάνω από ένα αντικείμενο με και χωρίς startIndex.

  • Ο πρώτος βρόχος for δεν έχει startIndex, οπότε το ευρετήριο ξεκινά από 0.
  • Ο δεύτερος βρόχος for έχει startIndex ως 10, επομένως ο δείκτης ξεκινά από το 10.

Παράδειγμα:

mylist = ['A', 'B' ,'C', 'D']

for i in enumerate(mylist):
  print(i)
  print("\n")

print("Using startIndex as 10")    

for i in enumerate(mylist, 10):
  print(i)
  print("\n")

Παραγωγή:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')

Using startIndex as 10
(10, 'A')
(11, 'B')
(12, 'C')
(13, 'D')

Αριθμώντας μια πλειάδα

Στο παρακάτω παράδειγμα, μπορείτε να χρησιμοποιήσετε μια πλειάδα μέσα σε μια απαρίθμηση. Μπορείτε επίσης να χρησιμοποιήσετε ένα startIndex και το κλειδί για κάθε στοιχείο θα ξεκινά από το startIndexgiven.

Από προεπιλογή, το startIndex είναι 0. Εκεί, επομένως βλέπετε το κλειδί ως 0 για τα στοιχεία A και 1 για το B και ούτω καθεξής.

Παράδειγμα:

my_tuple = ("A", "B", "C", "D", "E")
for i in enumerate(my_tuple):
  print(i)

Παραγωγή:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
(4, 'E')

Αριθμώντας μια συμβολοσειρά

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

Παράδειγμα:

my_str = "Guru99 "
for i in enumerate(my_str):
  print(i)

Παραγωγή:

(0, 'G')
(1, 'u')
(2, 'r')
(3, 'u')
(4, '9')
(5, '9')

Απαριθμήστε ένα λεξικό

In Python, ένα λεξικό παρατίθεται σε σγουρές αγκύλες, μέσα σε αυτές τις σγουρές αγκύλες, δηλώνονται οι τιμές.

Κάθε στοιχείο είναι ένα ζεύγος κλειδιού/τιμής και χωρίζεται με κόμμα. Μπορείτε να χρησιμοποιήσετε ένα λεξικό μέσα σε ένα enumerate() και να δείτε την έξοδο.

my_dict = {"a": "PHP", "b":"JAVA", "c":"PYTHON", "d":"NODEJS"}
for i in enumerate(my_dict):
  print(i)

Παραγωγή:

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')

Πλεονεκτήματα της χρήσης Enumerate

Εδώ, είναι τα πλεονεκτήματα/πλεονεκτήματα της χρήσης του Enumerate in Python:

  • Η απαρίθμηση σάς επιτρέπει να κάνετε επαναφορά σε μια λίστα, πλειάδα, λεξικό, συμβολοσειρά και δίνει τις τιμές μαζί με το ευρετήριο.
  • Για να λάβετε τιμή ευρετηρίου χρησιμοποιώντας το for-loop, μπορείτε να χρησιμοποιήσετε το list.index(n). Ωστόσο, το list.index(n) είναι πολύ ακριβό καθώς θα διασχίσει τον βρόχο for δύο φορές. Το Enumerate είναι πολύ χρήσιμο σε μια τέτοια περίπτωση, καθώς δίνει το ευρετήριο και τα στοιχεία με τη μία.

Συχνές Ερωτήσεις

Η enumerate() είναι μια ενσωματωμένη συνάρτηση που προσθέτει έναν μετρητή σε ένα επαναλήψιμο όπως μια λίστα, μια πλειάδα, μια συμβολοσειρά ή ένα λεξικό, επιστρέφοντας ζεύγη ευρετηρίου-τιμής.

Η σύνταξη είναι enumerate(iterable, startIndex). Το iterable είναι οποιοδήποτε αντικείμενο με δυνατότητα επανάληψης. Το startIndex είναι ένας προαιρετικός αριθμός έναρξης. Χωρίς αυτόν, η μέτρηση ξεκινά από το 0.

Μεταβιβάστε ένα δεύτερο όρισμα, όπως enumerate(mylist, 2). Η μέτρηση ξεκινά στη συνέχεια από αυτήν την τιμή αντί για το 0, επομένως το πρώτο στοιχείο λαμβάνει δείκτη 2.

Ναι. Η διέλευση ενός λεξικού επαναλαμβάνει τα κλειδιά του, αντιστοιχίζοντας το καθένα με ένα ευρετήριο. Απαριθμήστε τα items() του λεξικού όταν χρειάζεστε και τις τιμές.

Η enumerate() είναι πιο καθαρή και ταχύτερη από ένα χειροκίνητο index ή το list.index(n), το οποίο σαρώνει δύο φορές, επιστρέφοντας index και item μαζί.

Βοηθοί τεχνητής νοημοσύνης όπως το GitHub Copilot, συμπληρώνουν αυτόματα τους βρόχους απαρίθμησης(), προτείνουν ένα startIndex και αναδιαμορφώνουν χειροκίνητους μετρητές, επιταχύνοντας τις ιδιωματικές διαδικασίες. Python και εντοπίζοντας τα λάθη που ξεφεύγουν από το προηγούμενο.

Ναι. Τα linters με τεχνητή νοημοσύνη αυτοματοποιούν αυτήν την αναδιαμόρφωση, εντοπίζοντας μοτίβα range(len(x)) και ξαναγράφοντάς τα ως enumerate(x) για πιο καθαρά και περισσότερα. Pythonic βρόχοι με πανομοιότυπη συμπεριφορά.

Η συνάρτηση enumerate() επιστρέφει ένα αντικείμενο enumerate, έναν επαναλήπτη ζευγών (δείκτης, τιμή). Επαναλάβετε την απευθείας ή τυλίξτε την στη συνάρτηση list() για να δείτε όλα τα ζεύγη.

Συνοψίστε αυτήν την ανάρτηση με: