Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι

ΘΕΜΑ: Inherit from object (New Class)

Inherit from object (New Class) 13 Χρόνια 10 Μήνες πριν #1162

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Όταν δημιουργούμε μια καινούρια κλάση, κληρονομώντας δηλαδή από την "object", γιατί δε χρειάζεται να καλέσουμε την super?

Ουσιαστικά, γίνεται αυτόματα? Αν ναι, αυτό δεν είναι αντίθετο με το zen της python?
explicit is better that implicit
class Class_without_super(object):
    """ Class without super doc-string"""
    def __init__(self):
        pass
 
class Class_with_super(object):
    """ Class with super doc-string"""
    def __init__(self):
        super(Class_with_super, self).__init__()
        pass
 
a = Class_with_super()
b = Class_without_super()
 
print a.__doc__
print b.__doc__

Το output είναι:
 Class with super doc-string
 Class without super doc-string
Τελευταία διόρθωση: 13 Χρόνια 10 Μήνες πριν από pmav99.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Απ: Inherit from object (New Class) 13 Χρόνια 8 Μήνες πριν #1356

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Για την ιστορία, μιας και explicit is better than implicit, καλό είναι να καλούμε πάντα τη super(). Ούτως ή άλλως, δε νομίζω ότι χάνουμε τίποτα.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.226 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου