Επιδιόρθωση: Σφάλμα εσοχής Python



Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων

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



Σφάλμα εσοχής Python κατά την κωδικοποίηση

Σφάλμα εσοχής στο Python



Ο ' Σφάλμα εσοχής: Αναμενόταν μπλοκ με εσοχή Συμβαίνει για όλους τους τύπους χρηστών. είτε είναι αρχάριοι είτε έμπειροι. Δεδομένου ότι η Python τακτοποιεί όλο τον κώδικά της με σωστά κενά, εάν έχετε κακή εσοχή, ο κωδικός δεν θα μεταγλωττιστεί και θα σας επιστραφεί ένα μήνυμα σφάλματος.



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

Τι προκαλεί σφάλμα εσοχής στο Python;

Όπως αναφέρθηκε προηγουμένως, αυτό το σφάλμα παρουσιάζεται κυρίως επειδή υπάρχουν σφάλματα χώρου ή καρτέλας στον κώδικά σας. Επειδή η Python χρησιμοποιεί διαδικαστική γλώσσα, ενδέχεται να αντιμετωπίσετε αυτό το σφάλμα εάν δεν έχετε τοποθετήσει σωστά τις καρτέλες / κενά. Το πρόγραμμα μπορεί να εκτελεστεί σωστά, αλλά εάν ο διερμηνέας εντοπίσει αυτό το σφάλμα, το μήνυμα σφάλματος θα εμφανιστεί στη μέση. Μερικές από τις αιτίες του σφάλματος είναι:

  • Χρησιμοποιεις τόσο κενά όσο και καρτέλες στον κωδικό σας. Εάν και τα δύο χρησιμοποιούνται εναλλακτικά, ο διερμηνέας δεν θα είναι σε θέση να προσδιορίσει ποιο είδος θα χρησιμοποιήσει.
  • Έχετε τοποθετήσει κάποια εσοχή λανθασμένος . Εάν δεν ακολουθηθεί η πρακτική εσοχής, θα έχετε αυτό το σφάλμα αναπόφευκτα.
  • Ξεχάσατε να εσοχή το σύνθετες δηλώσεις όπως 'εάν', 'για', 'ενώ' κ.λπ.
  • Ξεχάσατε να εσοχή λειτουργίες ή τάξεις που καθορίζονται από το χρήστη .

Λύση 1: Έλεγχος λανθασμένων κενών διαστημάτων / καρτελών

Δεν υπάρχει άμεση επιδιόρθωση για αυτό το ζήτημα. Εφόσον ο κωδικός είναι δικός σας, πρέπει να περάσετε από κάθε γραμμή και να δείτε πού κάνατε το λάθος. Υπάρχουν πολλά μπλοκ στον κώδικα σε σχέση με τη δομή. Εάν υπάρχει μια δήλωση «If», πρέπει να υπάρχει εσοχή στον κώδικα που την ακολουθεί.



Μπλοκ δομή που απεικονίζει εσοχή στο Python

Μπλοκ δομή που απεικονίζει εσοχή

Δείτε το παραπάνω διάγραμμα. Δείτε ότι η εσοχή για ένα συγκεκριμένο μπλοκ παραμένει η ίδια σε ολόκληρο τον κώδικα, ακόμη και αν ένα νέο μπλοκ εισάγεται στη μέση. Βεβαιωθείτε ότι η εσοχή σας είναι συνεπής. Εάν χρησιμοποιείτε κενά, χρησιμοποιήστε πάντοτε κενά και αν χρησιμοποιείτε καρτέλες, χρησιμοποιείτε πάντα καρτέλες. Η ανάμιξη των δύο θα προκαλέσει προβλήματα.

Παράδειγμα εσοχής στο Python

Παράδειγμα εσοχής

Η σωστή εσοχή φαίνεται στο παραπάνω παράδειγμα. Δείτε το βρόχο «για» για ορεκτικά. Τα παντα μέσα ο βρόχος «για» πρέπει να εσοχή. Μέσα στο βρόχο «για», έχουμε μια δήλωση «if». Μέσα στη δήλωση «if», όλα πρέπει να είναι περαιτέρω οδοντωτός.

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

Λύση 2: Ενεργοποίηση συμβόλων καρτέλας / διαστήματος στον επεξεργαστή

Εάν δυσκολεύεστε να εισαγάγετε τον κωδικό σας με το «μαντέψτε» όπως κάνουν όλοι οι προγραμματιστές, μπορείτε να ενεργοποιήσετε τα σύμβολα της καρτέλας / χώρου στο IDE ή στον επεξεργαστή κώδικα. Αυτή η επιλογή θα ενεργοποιήσει τις μικρές «κουκκίδες» στον κώδικά σας όπου κάθε κουκκίδα αντιπροσωπεύει ένα κενό ή μια καρτέλα. Μπορείτε να το χρησιμοποιήσετε για να εσοχή κώδικα πιο σωστά και να βεβαιωθείτε ότι δεν υπάρχει επιπλέον εσοχή ή κάποια λείπουν.

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

  1. Τύπος Προβολή> Εμφάνιση συμβόλου> Εμφάνιση κενού χώρου και TAB Ενεργοποίηση κενού χώρου και καρτέλας στο Python

    Ενεργοποίηση κενού χώρου και καρτέλας - Σημειωματάριο ++

  1. Τώρα η επιλογή είναι ενεργοποιημένη. Μπορείτε επίσης να ενεργοποιήσετε το Οδηγός εσοχής έτσι τα πράγματα γίνονται πιο εύκολα για εσάς.
Δείγμα κώδικα με σωστή εσοχή στο Python

Δείγμα κώδικα με σωστή εσοχή

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

Ετικέτες σφάλμα εσοχής Πύθων 2 λεπτά ανάγνωση