En Objekt är en instans av en klass. En klass är som en ritning medan en instans är en kopia av klassen med faktiska värden. Python är ett objektorienterat programmeringsspråk som betonar objekt, dvs det betonar främst funktioner. Python-objekt är i grunden en inkapsling av datavariabler och metoder som verkar på dessa data i en enda enhet.
Notera: För mer information, Python-klasser och -objekt
Förståelse av Python Object
För en bättre förståelse av begreppet objekt i Python. Låt oss ta ett exempel, många av er har spelat CLASH OF CLANS, så låt oss anta baslayouten som klassen som innehåller alla byggnader, försvar, resurser etc. Baserat på dessa beskrivningar gör vi en by, här är byn objektet i Pytonorm.
Syntax:
obj = MyClass() print(obj.x)>
Exempel definiera representerar minnesallokering som är nödvändig för att lagra faktiska data för variabler. Varje gång du skapar ett objekt av klass skapas en kopia av varje datavariabel som definieras i den klassen. På ett enkelt språk kan vi konstatera att varje objekt i en klass har sin egen kopia av datamedlemmar definierade i den klassen.
Skapa ett Python-objekt
Programmets funktion: Audi = Bilar()
- Ett minnesblock tilldelas på högen. Storleken på det tilldelade minnet bestäms av de attribut och metoder som är tillgängliga i den klassen(Cars).
- Efter att minnesblocket har allokerats, den speciella metoden __varm__ () kallas internt. Initial data lagras i variablerna genom denna metod.
- Platsen för den tilldelade minnesadressen för instansen returneras till objektet(Cars).
- Minnesplatsen skickas till själv .
Python3
class> Cars:> >def> __init__(>self>, m, p):> >self>.model>=> m> >self>.price>=> p> Audi>=> Cars(>'R8'>,>100000>)> print>(Audi.model)> print>(Audi.price)> |
>
>
Produktion:
R8 100000>
Åtkomst till klassmedlem med hjälp av objekt:
Variabler och metoder för en klass är tillgängliga genom att använda klassobjekt eller instanser i Python.
Syntax:
obj_name.var_name Audi.model obj_name.method_name() Audi.ShowModel(); obj_name.method_name(parameter_list) Audi.ShowModel(100);>
Exempel 1:
Python3
# Python program to create instance> # variables inside methods> > class> Car:> > ># Class Variable> >vehicle>=> 'car'> > ># The init method or constructor> >def> __init__(>self>, model):> > ># Instance Variable> >self>.model>=> model> > ># Adds an instance variable> >def> setprice(>self>, price):> >self>.price>=> price> > ># Retrieves instance variable> >def> getprice(>self>):> >return> self>.price> > # Driver Code> Audi>=> Car(>'R8'>)> Audi.setprice(>1000000>)> print>(Audi.getprice())> |
>
>
Produktion:
1000000>
Exempel 2:
Python3
en array i java
class> Car:> > ># Class Variable> >vehicle>=> 'Car'> > ># The init method or constructor> >def> __init__(>self>, model, price):> > ># Instance Variable> >self>.model>=> model> >self>.price>=> price> > # Objects of class> Audi>=> Car(>'R8'>,>100000>)> BMW>=> Car(>'I8'>,>10000000>)> print>(>'Audi details:'>)> print>(>'Audi is a'>, Audi.vehicle)> print>(>'Model: '>, Audi.model)> print>(>'price: '>, Audi.price)> print>(>'
BMW details:'>)> print>(>'BMW is a'>, BMW.vehicle)> print>(>'Model: '>, BMW.model)> print>(>'Color: '>, BMW.price)> # Class variables can be> # accessed using class> # name also> print>(>'
Accessing class variable using class name'>)> print>(Car.vehicle)> # or> print>(Audi.vehicle)> # or> print>(BMW.vehicle)> |
>
>
Produktion:
Audi details: Audi is a Car Model: R8 price: 100000 BMW details: BMW is a Car Model: I8 Color: 10000000 Accessing class variable using class name Car Car Car>
Självvariabel:
SELF är en standardvariabel som innehåller minnesadressen för det aktuella objektet i Python. Instansvariabler och metoder kan refereras till med självvariabeln. När objektet för en klass skapas, innehålls minnesplatsen för objektet av dess objektnamn. Denna minnesplats skickas till SELF internt, eftersom SELF känner till minnesadressen för objektet, så variabeln och metoden för ett objekt är tillgängliga. Det första argumentet till en objektmetod är SELF eftersom det första argumentet alltid är objektreferens. Denna process sker automatiskt oavsett om du ringer det eller inte.
Exempel:
Python3
class> Test:> >def> __init__(Myobject, a, b):> >Myobject.country>=> a> >Myobject.capital>=> b> >def> myfunc(abc):> >print>(>'Capital of '> +> abc.country>+>' is:'>+>abc.capital)> x>=> Test(>'India'>,>'Delhi'>)> x.myfunc()> |
>
>
Produktion:
Capital of India is: Delhi>
Notera: För mer information, se själv i Python-klassen
Ta bort ett objekt i Python:
Python Object-egenskapen kan tas bort genom att använda nyckelordet del:
Syntax:
del obj_name.property>
objekt kan också raderas med del nyckelord:
Syntax:
del obj_name>