Κατασκευαστές Python: Όλα όσα πρέπει να γνωρίζετε



Αυτό το άρθρο θα σας παρουσιάσει ένα ενδιαφέρον θέμα που είναι απλό αλλά βασικό για προγραμματισμό, αναφέρομαι στους κατασκευαστές Python.

Αυτό το άρθρο θα σας παρουσιάσει ένα ενδιαφέρον θέμα που είναι απλό αλλά βασικό για προγραμματισμό, αναφέρομαι κατασκευαστές. Οι ακόλουθοι δείκτες θα καλυφθούν σε αυτό το άρθρο,

Ας ξεκινήσουμε λοιπόν,





Κατασκευαστές Python

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

Προχωρώντας με αυτό το άρθρο σχετικά με τους Python Constructors,



Τι είναι Κατασκευαστής στο Python;

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

Στην Python, υπάρχουν δύο διαφορετικοί τύποι κατασκευαστών.

  • Μη παραμετροποιημένος κατασκευαστής: Οι κατασκευαστές στην Python που δεν έχουν παραμέτρους είναι γνωστοί ως μη παραμετροποιημένοι κατασκευαστές.
  • Παραμετροποιημένος Κατασκευαστής: Ένας κατασκευαστής που έχει μια προκαθορισμένη παράμετρο είναι γνωστός ως παράμετρος κατασκευαστής.

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



Προχωρώντας με αυτό το άρθρο σχετικά με τους Python Constructors,

Δημιουργία Κατασκευαστή στο Python

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

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

Σημείωση:

διαφορές μεταξύ hashmap και hashtable

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

Για να κατανοήσετε καλύτερα αυτήν την ιδέα, ρίξτε μια ματιά στο παρακάτω παράδειγμα.

class Υπάλληλος: def __init __ (self, name, id): self.id = id self.name = name def display (self): print ('ID:% d nName:% s'% (self.id, self.name) emp1 = Υπάλληλος («John», 101) emp2 = Υπάλληλος («David», 102) #accessing display () μέθοδος εκτύπωσης υπαλλήλου 1 πληροφορίες emp1.display () #accessing display () μέθοδος εκτύπωσης υπαλλήλου 2 πληροφορίες emp2 .απεικόνιση()

Όταν εκτελείτε το παραπάνω πρόγραμμα, η έξοδος θα μοιάζει κάπως έτσι.

ID: 101

Όνομα: Τζον

Αναγνωριστικό: 102

Όνομα: David

Προχωρώντας με αυτό το άρθρο σχετικά με τους Python Constructors,

ενεργός και παθητικός μετασχηματισμός στην πληροφορική

Διαφορά μεταξύ Παραμερισμένου και Μη Παραμερισμένου Κατασκευαστή

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

class Student: #Constructor - non παραμετροποιημένο def __init __ (self): print ('This is non parametrized buildor') def show (self, name): print ('Hello', name) student = Student () student.show (' Γιάννης')

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

Αυτός είναι μη παραμετρικός κατασκευαστής

γεια σου Τζον

class Student: #Constructor - parameterized def __init __ (self, name): print ('This is parametrized buildor') self.name = name def show (self): print ('Hello', self.name) student = μαθητής (' John ') student.show ()

Τα παραπάνω είναι ένα παράδειγμα Παραμερισμένου Κατασκευαστή και η έξοδος του θα είναι η ακόλουθη.

Αυτός είναι παραμετρικός κατασκευαστής

γεια σου Τζον

Προχωρώντας με αυτό το άρθρο σχετικά με τους Python Constructors,

Σε ενσωματωμένες λειτουργίες κλάσης στην Python

Τώρα που τα βασικά ενός κατασκευαστή στο Python είναι ξεκάθαρα, ας εξερευνήσουμε τις διάφορες ενσωματωμένες τάξεις που υπάρχουν στο Python.

τι είναι λειτουργίες στο sql
  1. getattr (obj, name, default): Αυτή η ενσωματωμένη συνάρτηση στο Python χρησιμοποιείται για να αποκτήσει πρόσβαση στα χαρακτηριστικά μιας κλάσης.
  2. delattr (obj, name): Εάν πρέπει να διαγράψετε ένα συγκεκριμένο χαρακτηριστικό σε μια κλάση, χρησιμοποιήστε αυτήν την ενσωματωμένη συνάρτηση.
  3. setattr (obj, όνομα, τιμή): Σε μια συγκεκριμένη περίπτωση, εάν αποφασίσετε να ορίσετε μια συγκεκριμένη τιμή σε ένα συγκεκριμένο χαρακτηριστικό, χρησιμοποιήστε αυτήν τη συνάρτηση που είναι ενσωματωμένη στο Python.
  4. hasattr (obj, name): Τελευταίο αλλά όχι λιγότερο σημαντικό, εάν πρέπει να δείτε εάν ένα συγκεκριμένο αντικείμενο περιέχει ένα χαρακτηριστικό, χρησιμοποιήστε αυτήν τη συνάρτηση. Κατά την εκτέλεση, αυτό θα επιστρέψει αληθές εάν υπάρχει ένα χαρακτηριστικό σε μια συνάρτηση.

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

μαθητής τάξης: def __init __ (εαυτός, όνομα, id, ηλικία): self.name = name self.id = id self.age = age # δημιουργεί το αντικείμενο της τάξης Student s = Student ('John', 101,22) # prints το όνομα χαρακτηριστικού της εκτύπωσης του αντικειμένου (getattr (s, 'name')) # επαναφέρετε την τιμή της ηλικίας χαρακτηριστικού σε 23 setattr (s, 'age', 23) # εκτυπώνει την τροποποιημένη τιμή της εκτύπωσης ηλικίας (getattr ( s, 'age')) # εκτυπώνει αληθές εάν ο μαθητής περιέχει το χαρακτηριστικό με όνομα id print (hasattr (s, 'id')) # διαγράφει το χαρακτηριστικό age delattr (s, 'age') # αυτό θα δώσει ένα σφάλμα αφού η ηλικία χαρακτηριστικών έχει διαγραφεί εκτύπωση (s.age)

Η έξοδος για τα παραπάνω θα είναι.

Γιάννης

2. 3

Αληθής

AttributeError: Το αντικείμενο 'Student' δεν έχει χαρακτηριστικό 'age'

Προχωρώντας με αυτό το άρθρο σχετικά με τους Python Constructors,

Ενσωματωμένα χαρακτηριστικά κλάσης

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

  1. __dict__: Χρησιμοποιώντας αυτό μπορείτε να δείτε το λεξικό που περιέχει πληροφορίες σχετικά με το χώρο ονομάτων τάξης.
  2. __name__: Χρησιμοποιήστε αυτό το χαρακτηριστικό, εάν θέλετε να δείτε το όνομα της τρέχουσας τάξης.
  3. __doc__: Αυτό το χαρακτηριστικό περιέχει μια συμβολοσειρά, η οποία έχει την τεκμηρίωση για την τρέχουσα κλάση.
  4. __module__: Εάν πρέπει να αποκτήσετε πρόσβαση στη λειτουργική μονάδα στην οποία ορίζεται η κλάση, χρησιμοποιήστε αυτό το ενσωματωμένο χαρακτηριστικό.
  5. __bases__: Εάν πρέπει να δείτε την πλειάδα που περιλαμβάνει όλες τις βασικές κλάσεις, χρησιμοποιήστε αυτήν τη λειτουργία.

Ένα παράδειγμα για την αποσαφήνιση όλων των ενσωματωμένων χαρακτηριστικών κλάσης είναι όπως δίνεται παρακάτω.

μαθητής τάξης: def __init __ (αυτο, όνομα, id, ηλικία): self.name = name self.id = id self.age = age def display_details (self): print ('Όνομα:% s, ID:% d, ηλικία :% d '% (self.name, self.id)) s = Φοιτητής (' John ', 101,22) εκτύπωση (s .__ doc__) εκτύπωση (s .__ dict__) εκτύπωση (s .__ module__)

Αυτό μας φέρνει στο τέλος αυτού του άρθρου σχετικά με τους Python Constructors.

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

Έχετε μια ερώτηση για εμάς; Αναφέρετέ τα στην ενότητα σχολίων του 'Python Tutorial' και θα επικοινωνήσουμε μαζί σας.