3 τρόποι για να τερματίσετε ένα πρόγραμμα στην Python

Γρήγοροι Σύνδεσμοι

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

1. Χρήση quit() ή exit()

Ένας από τους απλούστερους τρόπους τερματισμού ενός προγράμματος Python είναι να χρησιμοποιήσετε οποιαδήποτε από τις ενσωματωμένες μεθόδους, quit() ή exit(). Όταν καλείτε είτε quit() είτε exit(), το πρόγραμμα θα τερματιστεί.

Οι συναρτήσεις quit() και exit() κάνουν ακριβώς το ίδιο πράγμα, είναι απλώς θέμα προσωπικής προτίμησης που χρησιμοποιείτε.

Δείτε πώς μπορείτε να χρησιμοποιήσετε τη συνάρτηση quit() για να τερματίσετε ένα πρόγραμμα Python:

 for num in range(10):
    if num == 9:
        quit()
    print(num)

Το παραπάνω δείγμα προγράμματος θα εκτυπώσει ακέραιους αριθμούς από το 0 έως το 8 στην κονσόλα. Μόλις ο αριθμός είναι 9, το πρόγραμμα κλείνει. Μπορείτε επίσης να χρησιμοποιήσετε την εντολή quit() για έξοδο από το Ενσωματωμένο περιβάλλον ανάπτυξης και μάθησης της Python (IDLE), το οποίο σας επιτρέπει να εκτελείτε διαδραστικά σενάρια Python.

  Ποια είναι η διαφορά μεταξύ αυτών των τσιπ πυριτίου της Apple;

Σημειώστε ότι τόσο το quit() όσο και το exit() βασίζονται στη λειτουργική μονάδα τοποθεσίας, επομένως δεν πρέπει να τα χρησιμοποιείτε σε περιβάλλοντα παραγωγής. Η επόμενη μέθοδος, sys.exit(), είναι καλύτερη επιλογή.

2. Χρησιμοποιώντας sys.exit()

Όταν καλείτε sys.exit() στο πρόγραμμά σας, η Python δημιουργεί μια εξαίρεση SystemExit. Δέχεται ένα προαιρετικό όρισμα για τον καθορισμό ενός ακέραιου κωδικού εξόδου (0 από προεπιλογή). Μπορείτε επίσης να περάσετε ένα αντικείμενο που θα οδηγήσει σε έναν κωδικό εξόδου 1 και θα εκτυπώσει την τιμή συμβολοσειράς του αντικειμένου σε τυπικό σφάλμα.

 import sys 

for num in range(10):
    if num == 5:
        sys.exit("You exited the program")
    print(num)

Η έξοδος του προγράμματος θα είναι η εξής:

  8 Καλύτερο λογισμικό ηλεκτρονικής συνταγογράφησης για γιατρούς το 2022

Όπως οι μέθοδοι τερματισμού και εξόδου, η sys.exit() δημιουργεί επίσης μια εξαίρεση SystemExit. Αυτό σημαίνει ότι μπορείτε να καλέσετε τη sys.exit() ή να αυξήσετε την SystemExit(). Και οι δύο δέχονται ένα προαιρετικό επιχείρημα.

Θα πρέπει να μάθετε για τις πιο σημαντικές συναρτήσεις της Python εάν δεν καταλαβαίνετε πώς λειτουργεί ο παραπάνω κώδικας.

3. Χρησιμοποιώντας το os._exit()

Ο τρίτος τρόπος εξόδου από ένα πρόγραμμα είναι η ειδική μέθοδος os._exit(). Μπορείτε να το μεταβιβάσετε ως προαιρετικό όρισμα για να καθορίσετε έναν κωδικό κατάστασης εξόδου. Η os._exit() προέρχεται από τη λειτουργική μονάδα os και τερματίζει τη διαδικασία αμέσως χωρίς να εκτελεί τις κανονικές δραστηριότητες καθαρισμού που προκύπτουν κατά την έξοδο ενός προγράμματος Python.

Επειδή αυτή η λειτουργία εξέρχεται χωρίς να πραγματοποιηθεί κανονικός καθαρισμός, θα πρέπει να τη χρησιμοποιείτε μόνο σε ειδικές περιπτώσεις. Σύμφωνα με την Τεκμηρίωση Pythonένα καλό παράδειγμα είναι σε μια θυγατρική διαδικασία μετά από μια διχάλα (μια νέα διεργασία που δημιουργήθηκε χρησιμοποιώντας το os.fork()).

Ακολουθεί ένα παράδειγμα του τρόπου χρήσης της συνάρτησης os._exit() για τον τερματισμό ενός προγράμματος:

 import os
import sys

def child_process():
    print("Child process is running.")
    os._exit(0)

def main():
    print("Parent process is running.")

    try:
        pid = os.fork()

        if pid == 0:
            
            child_process()
        else:
            
            print(f"Parent process is continuing with child process PID: {pid}")
    except OSError as e:
        print(f"Fork failed: {e}")
        sys.exit(1)

    print("Parent process is done.")

if __name__ == "__main__":
    main()

Ο παραπάνω κώδικας θα δώσει τα εξής:

  Πώς να βρείτε το κόστος μιας κλήσης Skype

Ποια μέθοδος πρέπει να χρησιμοποιήσετε για να τερματίσετε ένα πρόγραμμα στην Python;

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

Συνοπτικά, η sys.exit() θα πρέπει να είναι η μέθοδος που χρησιμοποιείτε για τον τερματισμό ενός προγράμματος στην Python. Δημιουργεί μια εξαίρεση SystemExit με έναν προαιρετικό κωδικό εξόδου.

Οι μέθοδοι quit() και exit() είναι πιο κατάλληλες όταν χρησιμοποιείτε το Python REPL. Θα πρέπει να τα αποφύγετε στην παραγωγή επειδή εξαρτώνται από τη μονάδα τοποθεσίας, η οποία μπορεί να μην είναι πάντα διαθέσιμη. Θα πρέπει σπάνια να χρειαστεί να χρησιμοποιήσετε το os._exit(), εκτός και αν εργάζεστε με κώδικα που διαχωρίζει διεργασίες.