Παραδείγματα λειτουργιών Python: Κλήση, εσοχή, επιχειρήματα & Επιστροφή τιμών

Πίνακας περιεχομένων:

Anonim

Τι είναι η λειτουργία στο Python;

Μια συνάρτηση στο Python είναι ένα κομμάτι κώδικα που εκτελείται όταν γίνεται αναφορά. Χρησιμοποιείται για τη χρήση του κώδικα σε περισσότερες από μία θέσεις ενός προγράμματος. Ονομάζεται επίσης μέθοδος ή διαδικασία. Η Python παρέχει πολλές ενσωματωμένες λειτουργίες όπως εκτύπωση (), είσοδος (), μεταγλώττιση (), exec () κ.λπ., αλλά δίνει επίσης την ελευθερία να δημιουργείτε τις δικές σας λειτουργίες.

Σε αυτό το σεμινάριο, θα μάθουμε

  • Πώς να ορίσετε και να καλέσετε μια συνάρτηση στο Python
  • Σημασία της εσοχής (Space) στο Python
  • Πώς λειτουργεί η τιμή επιστροφής;
  • Επιχειρήματα σε συναρτήσεις

Πώς να ορίσετε και να καλέσετε μια συνάρτηση στο Python

Η συνάρτηση στο Python ορίζεται από τη δήλωση "def" ακολουθούμενη από το όνομα και τις παρενθέσεις (())

Παράδειγμα:

Ας ορίσουμε μια συνάρτηση χρησιμοποιώντας την εντολή "def func1 (): και καλέστε τη συνάρτηση. Η έξοδος της συνάρτησης θα είναι "Μαθαίνω τη λειτουργία Python".

Η συνάρτηση print func1 () καλεί το def func1 (): και εκτυπώστε την εντολή "Μαθαίνω τη λειτουργία Python None. "

Υπάρχουν σύνολο κανόνων στο Python για τον ορισμό μιας συνάρτησης.

  • Τυχόν args ή παράμετροι εισαγωγής πρέπει να τοποθετηθούν μέσα σε αυτές τις παρενθέσεις
  • Η πρώτη δήλωση της συνάρτησης μπορεί να είναι μια προαιρετική δήλωση-συμβολοσειρά ή η συμβολοσειρά τεκμηρίωσης της συνάρτησης
  • Ο κώδικας σε κάθε συνάρτηση ξεκινά με άνω και κάτω τελεία (:) και πρέπει να είναι εσοχή (κενό)
  • Η δήλωση επιστροφής (έκφραση) βγαίνει από μια συνάρτηση, προαιρετικά επιστρέφοντας μια τιμή στον καλούντα. Η δήλωση επιστροφής χωρίς args είναι ίδια με την επιστροφή Καμία.

Σημασία της εσοχής (Space) στο Python

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

Η Python ακολουθεί ένα συγκεκριμένο στυλ εσοχής για τον καθορισμό του κώδικα, καθώς οι συναρτήσεις Python δεν έχουν καμία ρητή αρχή ή τέλος όπως σγουρά τιράντες για να υποδείξουν την έναρξη και τη διακοπή της λειτουργίας, πρέπει να βασίζονται σε αυτήν την εσοχή . Εδώ παίρνουμε ένα απλό παράδειγμα με την εντολή "εκτύπωση". Όταν γράφουμε τη λειτουργία "εκτύπωση" ακριβώς κάτω από το def func 1 (): Θα δείξει ένα " σφάλμα εσοχής: αναμένεται ένα μπλοκ εσοχής ".

Τώρα, όταν προσθέτετε την εσοχή (κενό) μπροστά από τη λειτουργία "εκτύπωση", θα πρέπει να εκτυπώνεται όπως αναμένεται.

Τουλάχιστον, μια εσοχή είναι αρκετή για να κάνει τον κώδικά σας να λειτουργεί με επιτυχία. Αλλά ως βέλτιστη πρακτική, συνιστάται να αφήσετε περίπου 3-4 εσοχή για να καλέσετε τη λειτουργία σας .

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

Τώρα, όταν εφαρμόζουμε την ίδια εσοχή και για τις δύο δηλώσεις και ευθυγραμμίζουμε στην ίδια γραμμή, δίνει την αναμενόμενη έξοδο.

Πώς λειτουργεί η τιμή επιστροφής;

Η εντολή Return στο Python καθορίζει τι τιμή θα δώσει στον καλούντα της συνάρτησης.

Ας το καταλάβουμε με το ακόλουθο παράδειγμα

Βήμα 1) Εδώ - βλέπουμε πότε η συνάρτηση δεν είναι "επιστροφή". Για παράδειγμα, θέλουμε το τετράγωνο του 4 και θα πρέπει να δώσει απάντηση "16" όταν εκτελείται ο κωδικός. Που δίνει όταν απλώς χρησιμοποιούμε τον κωδικό "εκτύπωση x * x", αλλά όταν καλείτε τη λειτουργία "τετράγωνο εκτύπωσης" δίνει "Κανένα" ως έξοδο. Αυτό συμβαίνει επειδή όταν καλείτε τη συνάρτηση, η επανάληψη δεν συμβαίνει και πέφτει από το τέλος της συνάρτησης. Η Python επιστρέφει "Κανένα" για αποτυχία στο τέλος της λειτουργίας.

Βήμα 2) Για να γίνει πιο σαφές, αντικαθιστούμε την εντολή εκτύπωσης με την εντολή ανάθεσης. Ας ελέγξουμε την έξοδο.

Όταν εκτελείτε την εντολή "τετράγωνο εκτύπωσης (4)" επιστρέφει στην πραγματικότητα την τιμή του αντικειμένου αφού δεν έχουμε κάποια συγκεκριμένη λειτουργία για να τρέξει εδώ επιστρέφει "Κανένα".

Βήμα 3) Τώρα, εδώ θα δούμε πώς να ανακτήσουμε την έξοδο χρησιμοποιώντας την εντολή "return". Όταν χρησιμοποιείτε τη λειτουργία "επιστροφή" και εκτελέσετε τον κωδικό, θα δώσει την έξοδο "16."

Βήμα 4) Οι συναρτήσεις στο Python είναι οι ίδιες αντικείμενο και ένα αντικείμενο έχει κάποια αξία. Εδώ θα δούμε πώς αντιμετωπίζει η Python ένα αντικείμενο. Όταν εκτελείτε την εντολή "print square" επιστρέφει την τιμή του αντικειμένου. Δεδομένου ότι δεν έχουμε περάσει κανένα όρισμα, δεν έχουμε κάποια συγκεκριμένη συνάρτηση για να τρέξει εδώ επιστρέφει μια προεπιλεγμένη τιμή (0x021B2D30) που είναι η θέση του αντικειμένου. Στο πρακτικό πρόγραμμα Python, πιθανότατα δεν θα χρειαστεί ποτέ να το κάνετε αυτό.

Επιχειρήματα σε συναρτήσεις

Το όρισμα είναι μια τιμή που μεταβιβάζεται στη συνάρτηση όταν καλείται.

Με άλλα λόγια από την πλευρά της κλήσης, είναι ένα επιχείρημα και από την πλευρά της λειτουργίας είναι μια παράμετρος.

Ας δούμε πώς λειτουργεί η Python Args -

Βήμα 1) Τα επιχειρήματα δηλώνονται στον ορισμό της συνάρτησης. Κατά την κλήση της συνάρτησης, μπορείτε να μεταβιβάσετε τις τιμές για αυτό το επιχείρημα όπως φαίνεται παρακάτω

Βήμα 2) Για να δηλώσετε μια προεπιλεγμένη τιμή ενός ορίσματος, εκχωρήστε μια τιμή στον ορισμό της συνάρτησης.

Παράδειγμα: το x δεν έχει προεπιλεγμένες τιμές. Προεπιλεγμένες τιμές y = 0. Όταν παρέχουμε μόνο ένα όρισμα κατά την κλήση της συνάρτησης πολλαπλασιασμού, η Python εκχωρεί την παρεχόμενη τιμή στο x διατηρώντας παράλληλα την τιμή του y = 0. Εξ ου και ο πολλαπλασιασμός του x * y = 0

Βήμα 3) Αυτή τη φορά θα αλλάξουμε την τιμή σε y = 2 αντί για την προεπιλεγμένη τιμή y = 0 και θα επιστρέψει την έξοδο ως (4x2) = 8.

Βήμα 4) Μπορείτε επίσης να αλλάξετε τη σειρά με την οποία τα ορίσματα μπορούν να περάσουν στο Python. Εδώ έχουμε αντιστρέψει τη σειρά των τιμών x και y σε x = 4 και y = 2.

Βήμα 5) Τα πολλαπλά επιχειρήματα μπορούν επίσης να περάσουν ως πίνακας. Εδώ στο παράδειγμα καλούμε τα πολλαπλά args (1,2,3,4,5) καλώντας τη συνάρτηση (* args).

Παράδειγμα: Δηλώσαμε πολλά args ως αριθμό (1,2,3,4,5) όταν καλούμε τη συνάρτηση (* args). εκτυπώνει την έξοδο ως (1,2,3,4,5)

Συμβουλές :

  • Στο Python 2.7. Η λειτουργία υπερφόρτωσης δεν υποστηρίζεται στο Python. Το Function Overloading είναι η δυνατότητα δημιουργίας πολλαπλών μεθόδων με το ίδιο όνομα με διαφορετική εφαρμογή. Η λειτουργία υπερφόρτωσης υποστηρίζεται πλήρως στο Python 3
  • Υπάρχει αρκετά σύγχυση μεταξύ μεθόδων και λειτουργιών. Οι μέθοδοι στο Python σχετίζονται με παρουσίες αντικειμένων ενώ η συνάρτηση δεν είναι. Όταν η Python καλεί μια μέθοδο, συνδέει την πρώτη παράμετρο αυτής της κλήσης με την κατάλληλη αναφορά αντικειμένου. Με απλά λόγια, μια αυτόνομη συνάρτηση στο Python είναι μια "συνάρτηση", ενώ μια συνάρτηση που είναι ένα χαρακτηριστικό μιας κλάσης ή μιας παρουσίας είναι μια "μέθοδος".

Εδώ είναι ο πλήρης κωδικός Python 3

#define a functiondef func1():print ("I am learning Python function")print ("still in func1")func1()def square(x):return x*xprint(square(4))def multiply(x,y=0):print("value of x=",x)print("value of y=",y)return x*yprint(multiply(y=2,x=4))

Εδώ είναι ο πλήρης κωδικός Python 2

#define a functiondef func1():print " I am learning Python function"print " still in func1"func1()def square(x):return x*xprint square(4)def multiply(x,y=0):print"value of x=",xprint"value of y=",yreturn x*yprint multiply(y=2,x=4)

Περίληψη:

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

  • Συνάρτηση που ορίζεται από τη δήλωση def
  • Το μπλοκ κώδικα σε κάθε συνάρτηση ξεκινά με άνω και κάτω τελεία (:) και πρέπει να εσοχή (κενό)
  • Τυχόν ορίσματα ή παράμετροι εισαγωγής πρέπει να τοποθετούνται σε αυτές τις παρενθέσεις κ.λπ.
  • Πρέπει να απομένει τουλάχιστον μία εσοχή πριν από τον κωδικό μετά τη δήλωση λειτουργίας
  • Το ίδιο στυλ εσοχής πρέπει να διατηρείται σε ολόκληρο τον κώδικα στη συνάρτηση def
  • Για βέλτιστες πρακτικές, τρεις ή τέσσερις εσοχές θεωρούνται καλύτερες πριν από τη δήλωση
  • Μπορείτε να χρησιμοποιήσετε την εντολή "επιστροφή" για να επιστρέψετε τιμές στην κλήση συνάρτησης.
  • Η Python θα εκτυπώσει μια τυχαία τιμή όπως (0x021B2D30) όταν το όρισμα δεν παρέχεται στη λειτουργία κλήσης. Παράδειγμα "λειτουργία εκτύπωσης."
  • Από την πλευρά της κλήσης, είναι ένα επιχείρημα και από την πλευρά της λειτουργίας είναι μια παράμετρος
  • Προεπιλεγμένη τιμή στο όρισμα - Όταν παρέχουμε μόνο ένα όρισμα ενώ καλούμε συνάρτηση πολλαπλασιασμού ή οποιαδήποτε άλλη συνάρτηση, η Python εκχωρεί το άλλο όρισμα από προεπιλογή
  • Το Python σάς δίνει τη δυνατότητα να αντιστρέψετε τη σειρά του επιχειρήματος επίσης