Est un constructeur __init__ nécessaires pour une classe en Python?

J'ai lu que le constructeur est comme le premier argument passé à la classe, ce qui fait sens pour moi étant donné que les paramètres semblent être transmis à la classe via le __init__ méthode. Par exemple,

class NewsStory(object):
    def __init__(self, guid, title, subject, summary, link):
        self.guid = guid
        self.title = title
        self.subject = subject
        self.summary = summary
        self.link = link

    def get_guid(self):
        return self.guid

    def get_title(self):
        return self.title

    def get_subject(self):
        return self.subject

    def get_summary(self):
        return self.summary

    def get_link(self):
        return self.link
firstStory = NewsStory('Globally Unique Identifier', \
    'first_title','first_subject','This is an example \
    sumary','[email protected]')

print firstStory.get_guid() # prints Globally Unique Identifier

Donc quand je l'appel de la classe, je passe les paramètres de la __init__ méthode? Je suis nouveau sur les classes, tout ce que j'ai lu, j'ai du mal à comprendre et déroutant. Merci!

Edit 1

J'ai trouvé cette question utile pour expliquer certaines choses, comme la différence entre nouveau et init, désolé, je ne sais pas comment faire pour ajouter un lien, je dois couper et coller: Ce qui peut `__init__` le faire `__new__ " ne peut pas?

Ne vous en fait essayez de ne pas l'utiliser?

OriginalL'auteur sampy | 2016-07-09