Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Python Προγραμματισμός

Πώς να δείτε τα σφάλματα στην Python

Παρά τις καλύτερες προσπάθειες ενός προγραμματιστή , οποιοδήποτε πρόγραμμα μπορεί να αντιμετωπίσει το περιστασιακό σφάλμα από καιρό σε καιρό . Στις περισσότερες περιπτώσεις , είναι σημαντικό να εφαρμόσουν μεθόδους που εμφανίζουν πληροφορίες σχετικά με τη φύση αυτών των σφαλμάτων για debugging σκοπούς . Με τον κατάλληλο κωδικό , σφάλματα σε ένα συγκεκριμένο πρόγραμμα Python θα εμφανιστεί μέσα από την τυποποιημένη μέθοδο εξόδου σφάλματος , ενώ ενεργοποιεί ένα μπλοκ εξαίρεση το βλέμμα του κώδικα . Αυτή η μέθοδος θα επιτρέψει τον προγραμματιστή και στα δύο μηνύματα λάθους καταγραφής και να υπαγορεύσει πώς το πρόγραμμα χειρίζεται το συγκεκριμένο σφάλμα . Τα πράγματα που θα χρειαστείτε
Python Διερμηνέα
επεξεργαστή κειμένου
Η Εμφάνιση Περισσότερες οδηγίες
σύλληψη και Λάθη Καταγραφή σε Python
Η 1

Πάρτε αυτό το μικρό τμήμα της python κώδικα ως ένα παράδειγμα : !

# /usr /local /bin /python

συστήματα εισαγωγής

x = 4 - 4

y = y /x

print y

Αυτό το απόσπασμα κώδικα , όταν εκτελεστεί , θα προκαλέσουν ένα ανεπανόρθωτο σφάλμα ( ονομάζεται ZeroDivisionError σε Python ), επειδή ακέραιοι δεν μπορεί να διαιρείται με το μηδέν . Ενώ στην Python Interactive Interpreter , το σφάλμα αυτό θα εκτυπωθεί στην οθόνη και το πρόγραμμα θα συντριβή . Ωστόσο , ο προγραμματιστής μπορεί να αναπτύξει ένα πρόγραμμα GUI για να τρέξει έξω από το διερμηνέα που θα συνδεθείτε και να χειρίζονται τέτοια λάθη στον κώδικα . 2

Προσθήκη "try ... except" μπλοκ γύρω από το παράδειγμα κώδικα . Αυτό θα υπαγορεύσει τον τρόπο το πρόγραμμα χειρίζεται το σφάλμα κατά την εκτέλεση !

# /Usr /local /bin /python

συστήματα εισαγωγής

δοκιμάσετε:

x = 4-4

y = y /x

εκτύπωση y

εκτός ZeroDivisionError :

/* κώδικα για να χειριστεί εξαίρεση πηγαίνει εδώ * /

Ο κωδικός θα πρέπει τώρα «προσπαθούν» τις εργασίες που αναφέρονται στο "try ... except" μπλοκ . Το τμήμα " εκτός " θα ενεργοποιηθεί μόνο σε περίπτωση που προκύψει γεγονός του « ZeroDivisionError » . Εάν παρουσιαστεί οποιοδήποτε άλλο λάθος , το " εκτός " μπλοκ δεν θα εκτελεστεί . Είναι δυνατόν , ωστόσο , να δημιουργήσει πολλαπλά στάδια λαθών με πολλαπλά " εκτός " δηλώσεις .
Εικόνων 3

Περάστε το μήνυμα σφάλματος μέσω ενός αντικειμένου FILESTREAM εξόδου . Στην περίπτωση αυτή, τα λάθη θα πρέπει να περάσουν από την τυπική έξοδο σφάλματος ( stderr ) ρεύμα

# /usr /local /bin /python

συστήματα εισαγωγής

δοκιμάσετε: . !

x = 4 - 4

y = y /x

εκτύπωση y

εκτός ZeroDivisionError :

elog = ανοικτό ( ' έξω . log ' , ' w ' )

sys.stderr = elog

αυξήσει Εξαίρεση , " Division by Zero "

Το " elog " μεταβλητή εκχωρείται ένα ανοικτό αρχείο . Στη συνέχεια , η τυπική έξοδο σφάλματος ( sys.stderr ) συνδέεται με το αρχείο ανατεθεί elog . Κάθε έξοδος σταλεί sys.stderr θα γράψει στο αρχείο " out.log " . Τέλος , μια εξαίρεση "έθεσε , " λέει το πρόγραμμα που έχει προκύψει κάποιο σφάλμα και είναι καιρός να σταματήσει . Η σειρά " Division by Zero " θα εκτυπώσει να out.log ( επειδή η εξαίρεση θα εκτυπώνουν απευθείας sys.stderr ) .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα