Python è un linguaggio di programmazione orientato agli oggetti che offre classi, che sono un potente strumento per scrivere codice riutilizzabile. Per descrivere oggetti con caratteristiche e comportamenti condivisi si utilizzano le classi. Esamineremo le idee di Python su classi e oggetti in questo articolo.
Classi in Python:
In Python, una classe è un tipo di dati definito dall'utente che contiene sia i dati stessi che i metodi che possono essere utilizzati per manipolarli. In un certo senso, le classi fungono da modello per creare oggetti. Forniscono le caratteristiche e le operazioni che gli oggetti impiegheranno.
Supponiamo che una classe sia un prototipo di un edificio. Un edificio contiene tutti i dettagli relativi al piano, alle stanze, alle porte, alle finestre, ecc. Possiamo realizzare tutti gli edifici che vogliamo, in base a questi dettagli. Quindi, l'edificio può essere visto come una classe e possiamo creare tanti oggetti di questa classe.
Creazione di classi in Python
In Python, una classe può essere creata utilizzando la parola chiave class, seguita dal nome della classe. La sintassi per creare una classe è riportata di seguito.
Sintassi
class ClassName: #statement_suite
In Python dobbiamo notare che ogni classe è associata ad una stringa di documentazione a cui è possibile accedere utilizzando .__doc__. Una classe contiene una suite di istruzioni che include campi, costruttore, funzione, ecc. Definizione.
Esempio:
Codice:
unione di stringhe Java
class Person: def __init__(self, name, age): # This is the constructor method that is called when creating a new Person object # It takes two parameters, name and age, and initializes them as attributes of the object self.name = name self.age = age def greet(self): # This is a method of the Person class that prints a greeting message print('Hello, my name is ' + self.name)
Nome ed età sono le due proprietà della classe Persona. Inoltre, ha una funzione chiamata greet che stampa un saluto.
Oggetti in Python:
Un oggetto è un'istanza particolare di una classe con caratteristiche e funzioni uniche. Dopo che una classe è stata stabilita, puoi creare oggetti basati su di essa. Usando il costruttore di classi, puoi creare un oggetto di una classe in Python. Gli attributi dell'oggetto vengono inizializzati nel costruttore, che è una procedura speciale con il nome __init__.
Sintassi:
# Declare an object of a class object_name = Class_Name(arguments)
Esempio:
angoli adiacenti
Codice:
class Person: def __init__(self, name, age): self.name = name self.age = age def greet(self): print('Hello, my name is ' + self.name) # Create a new instance of the Person class and assign it to the variable person1 person1 = Person('Ayan', 25) person1.greet()
Produzione:
'Hello, my name is Ayan'
L'autoparametro
Il parametro self si riferisce all'istanza corrente della classe e accede alle variabili della classe. Possiamo usare qualsiasi cosa al posto di self, ma deve essere il primo parametro di qualsiasi funzione che appartiene alla classe.
_ _init_ _ metodo
Per creare un'istanza di una classe in Python, viene chiamata una funzione specifica chiamata __init__. Sebbene venga utilizzato per impostare gli attributi dell'oggetto, viene spesso definito costruttore.
L'autoargomentazione è l'unica richiesta dal metodo __init__. Questo argomento si riferisce all'istanza appena generata della classe. Per inizializzare i valori di ciascun attributo associato agli oggetti, puoi dichiarare argomenti aggiuntivi nel metodo __init__.
Variabili di classe e istanza
Tutte le istanze di una classe scambiano variabili di classe. Funzionano indipendentemente da qualsiasi metodo della classe e sono accessibili tramite l'uso del nome della classe. Ecco un'illustrazione:
Codice:
class Person: count = 0 # This is a class variable def __init__(self, name, age): self.name = name # This is an instance variable self.age = age Person.count += 1 # Accessing the class variable using the name of the class person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(Person.count)
Produzione:
2
Considerando che le variabili di istanza sono specifiche per ciascuna istanza di una classe. Vengono specificati utilizzando l'autoargomentazione nel metodo __init__. Ecco un'illustrazione:
Codice:
anche modello
class Person: def __init__(self, name, age): self.name = name # This is an instance variable self.age = age person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(person1.name) print(person2.age)
Produzione:
Ayan 30
Le variabili di classe vengono create separatamente da qualsiasi metodo di classe e sono condivise da tutte le copie di classe. Ogni istanza di una classe ha le proprie variabili di istanza, che sono specificate nel metodo __init__ utilizzando l'autoargomentazione.
Conclusione:
In conclusione, le nozioni di classi e oggetti di Python sono idee forti che ti consentono di scrivere programmi riutilizzabili. È possibile combinare informazioni e capacità in un'unica entità che può essere utilizzata per creare molti oggetti stabilendo una classe. Usando la notazione punto, puoi accedere ai metodi e alle proprietà di un oggetto dopo che è stato creato. Puoi sviluppare un codice più logico, efficace e gestibile comprendendo le classi e gli oggetti di Python.