Cos'è il sovraccarico del costruttore in Python? Con Esempi

Pubblicato: 2023-01-29

Python è un linguaggio di programmazione intuitivo che può essere facilmente padroneggiato dai principianti. Questo linguaggio di programmazione offre un'ampia gamma di supporto della comunità che aiuta i programmatori a esplorare diversi modi di implementare il codice. Le librerie standard in Python e i moduli forniti dal forum della comunità hanno consentito infinite possibilità, tra cui sviluppo Web e Internet, GUI desktop, accesso a database, istruzione, applicazioni scientifiche e numeriche, programmazione di rete, sviluppo software e programmi per sviluppare giochi. Questo linguaggio open source è sviluppato con licenza approvata dall'OSI. Pertanto, può essere utilizzato e distribuito gratuitamente. La Python Software Foundation amministra la licenza di Python.

Sommario

Costruttori in Python:

La funzione principale di un costruttore Python è istanziare gli oggetti. Al momento della creazione dell'oggetto, ai membri dati della classe vengono assegnati valori o inizializzati con l'aiuto di costruttori. La funzione _init_ è un costruttore in Python. Viene spesso chiamato quando viene creato un nuovo oggetto.

La sintassi per la dichiarazione di un costruttore è

Def _init_(self):

# corpo del costruttore

Ci sono due tipi di costruttori in Python. Sono:

  • Costruttore predefinito
  • Costruttore parametrizzato

Costruttore predefinito:

È un semplice costruttore e non accetta alcun parametro di input. La definizione dei costruttori predefiniti ha un solo argomento che fa riferimento all'istanza che viene costruita.

Costruttore parametrizzato:

Come indicato dal nome, questi costruttori hanno parametri. Il primo argomento di questo tipo di costruttori si riferisce all'istanza costruita ed è noto come 'self'. Tutti gli altri argomenti obbligatori sono specificati dal programmatore come input.

Dai un'occhiata ai corsi di scienza dei dati di upGrad

Sovraccarico del costruttore in Python:

L'overload di costrutto si riferisce a uno scenario di incorporazione di un numero maggiore di costruttori con un elenco separato di parametri in modo tale che ogni costruttore venga utilizzato per eseguire attività diverse nel programma. Ad esempio, ci sono quattro tipi di costruttori nella classe Vector.

Python non supporta esplicitamente più costruttori. Tuttavia, l'uso di più costruttori in Python può essere realizzato in diversi modi. Se un programmatore scrive più metodi _init_ per la stessa classe, la funzione _init_ scritta più di recente sovrascrive tutti gli altri costruttori.

Perché sono richiesti più costruttori in Python?

Quando l'utente ha la necessità di eseguire diverse azioni per istanziare una classe, viene visualizzato il requisito di più costruttori. Questo è utile quando diverse azioni devono essere eseguite dalla classe su diversi parametri. I costruttori di classi in Python sono strutturati per mostrare il polimorfismo in tre modi diversi, come elencato di seguito:

  1. Sovraccarico del costruttore basato su argomenti
  2. Invocazione di metodi _init_
  3. Uso del decoratore @classmethod

Esplora i nostri popolari corsi di scienza dei dati

Executive Post Graduate Program in Data Science presso IIITB Programma di certificazione professionale in Data Science per il processo decisionale aziendale Master of Science in Data Science presso l'Università dell'Arizona
Programma di certificazione avanzata in Data Science da IIITB Programma di certificazione professionale in scienza dei dati e analisi aziendale presso l'Università del Maryland Corsi di scienza dei dati

Leggi i nostri popolari articoli sulla scienza dei dati

Percorso di carriera nella scienza dei dati: una guida completa alla carriera Crescita della carriera nella scienza dei dati: il futuro del lavoro è qui Perché la scienza dei dati è importante? 8 modi in cui la scienza dei dati apporta valore al business
Rilevanza della scienza dei dati per i manager Il foglio informativo definitivo sulla scienza dei dati che ogni scienziato di dati dovrebbe avere I 6 motivi principali per cui dovresti diventare un data scientist
Un giorno nella vita dei data scientist: cosa fanno? Mito sfatato: la scienza dei dati non ha bisogno di codifica Business Intelligence vs Data Science: quali sono le differenze?

Sovraccarico del costruttore in Python basato su argomenti:

In questo metodo, i costruttori vengono sovraccaricati eseguendo l'azione necessaria dopo il controllo delle condizioni per gli argomenti passati. Consideriamo un esempio di passaggio di un parametro alla classe Sample.

  • Il quadrato del numero è la risposta se il parametro di input è un int.
  • Se la lunghezza del parametro è maggiore di 1, la somma degli argomenti viene mostrata come risposta.

Metodi di chiamata con _init_:

Quando viene creata un'istanza di una classe, la classe può avere un singolo costruttore _init_ che può eseguire qualsiasi attività assegnata. Questo costruttore può essere modificato per gestire funzioni diverse ed eseguire attività diverse in base al parametro passato. Consideriamo un esempio in cui vengono eseguiti i seguenti calcoli.

  • Se vengono passati due argomenti, l'espressione viene valutata come x = a 2 – b 2
  • Se vengono passati tre argomenti, l'espressione valutata è y = a 2 + b 2 – c
  • Se il numero di argomenti passati supera tre, somma i quadrati di quei numeri e dividi la somma per l'argomento con il valore più alto.

Se desideri approfondire l'override dei metodi in Python, ti suggeriamo di seguire il Master of Science in Data Science di 18 mesi . upGrad offre questo corso dall'IIIT Bangalore e dalla Liverpool John Moore's University. Il corso ti insegna abilità come statistica, analisi predittiva utilizzando Python, apprendimento automatico, visualizzazione dei dati, analisi dei big data e altro ancora. Gli studenti con una solida conoscenza dei concetti di Python sono ben posizionati per affrontare argomenti come Deep Learning, Natural Language Processing, Business Analytics e Data Engineering.

Vuoi condividere questo articolo?

Preparati per una carriera del futuro

Fai domanda per il Master of Science in Data Science