Što je Pointer u Pythonu?

Pokazivač na Pythonu naziva se varijablom koja upućuje na memorijsku adresu druge varijable. Pokazivač upućuje na adresu ove varijable od koje je data adresa. Jednostavnim riječima Pointer drži memorijsku adresu.

U primjeru u nastavku, dodijelili smo “a” cijelu vrijednost 2 i ispisali je. Slično tome, dodijelili smo “b” vrijednost niza i ispisali je. Ispod smo vidjeli jedine vrste niza i cijelih tipova, u pythonu ima više vrsta poput popisa, skupa, tuplela, rječnika itd. Pogledajmo svako od ovih pojedinačno i shvatimo pomoću funkcije instance () koja vraća TRUE ako to je objekt

Sintaksa pokazivača u Pythonu

>>> variable name = value;

Primjer - 1

>> a = 2
>>> a
>> 2

Primjer - 2

>>> b = “Bob”
>>> b
>>> Bob

Kako stvoriti pokazivače u Pythonu?

Ispod je primjer stvaranja pokazivača s funkcijom isinstance () kako bi se dokazalo da se radi o objektnom tipu. Vidjet ćemo sve moguće tipove podataka u Pythonu s funkcijom isinstance (), na taj ćete način naučiti kako deklarirati sve vrste podataka u pythonu.

Kodirati:

// assigning an integer value
a = 2
print(a)
// checking if integer is an object or not
print(isinstance(a, object))
// assigning a string value
b = "Bob"
print(b)
// checking if string is an object or not
print(isinstance(b, object))
// assigning a list value
inputList = (1, 2, 3) print(inputList)
// checking if list is an object or not
print(isinstance(inputList, object))
//assigning a set value
inputSet = (10, 20, 30)
print(inputSet)
// checking if set is an object or not
print(isinstance(inputSet, object))
// assigning a tuple value
inputTuple = (100, 200, 300)
print(inputTuple)
//checking if tuple object or not
print(isinstance(inputTuple, object))
// assigning a dictionary value
inputDict = (
"0": 1922,
"1": "BMW",
"2": 100
)
print(inputDict)
//checking if dictionary is an object or not
print(isinstance(inputDict, object))

Izlaz:

Sada kada znamo da je svaka deklarirana varijabla objekt, jer svaka isinstance () funkcija vraća True, što znači da je objekt. Sada možemo reći da je u Pythonu sve objekt. Naučimo o promjenljivim objektima iz svih objekata. Imajte na umu da su popis, postavke i rječnik promjenjivi. Odmor nisu zamjenjivi predmeti. Promjenljivi predmeti se mogu mijenjati dok se nepromjenjivi objekti ne mogu mijenjati.

Primjer

Na nepromjenljivom objektu poput niza, možemo napraviti dodatak kao što je spomenuto u nastavku

str = "Python Programming "
print(str)
print(id(str))
str += "Language"
print(str)
print(id(str))

i uspijeva, ali sada ako pokušamo dodati nešto drugo poput

str = "Python Programming "
print(str)
str(5) = “S”
print(id(str))
str += "Language"
print(str)
print(id(str))

u nizu on daje grešku kao što je nepromjenjivo, za izmjenu moramo koristiti funkciju append ().

Upotrebe pokazivača u Pythonu

Pokazi se koriste u širokom C i C ++ programu. Pomoću Pointera moguće je dinamičko raspoređivanje memorije. Pokazivači se mogu deklarirati kao varijable koje sadrže memorijsku adresu druge varijable.

Aritmetičke operacije pokazivača

Pokazivači imaju četiri aritmetička operatera.

  • Operator porasta: ++
  • Decrement Operator: -
  • Operator dodavanja: +
  • Operator oduzimanja: -

Aritmetičke operacije izvode se korištenjem aritmetičkih operatora. U donjim programima koristili smo funkciju id () koja vraća memorijsku adresu objekta.

Operator povećanja: povećava vrijednost za 1

Kodirati:

#using the incrementing operator
x = 10
print("x = ", x, "\n")
print("Address of x", id(x))
x += 1
print("Now x = ", x, "\n")
print(x)
#using the id() function to get the memory address
print("Address of x", id(x))

Izlaz:

Operator smanjenja: smanjuje vrijednost za 1

#using the decrementing operator
x = 10
print("x = ", x, "\n")
print(id(x))
x -= 1
print("Now x = ", x, "\n")
print(x)
#using the id() function to get the memory address
print("Address of x", id(x))

Izlaz:

Operator dodavanja: Izvodi dodavanje dvije opere

#using the addition operator
#using the addition operator
x = 10
y = 20
print("x = ", x, "\n")
print("y = ", y, "\n")
print("Address of x", id(x))
x = y + 3
print("x = y + 3 \n")
print("Now x = ", x, "\n")
# using the id() function to get the memory address
print("Address of x", id(x))

Izlaz:

Operator oduzimanja: vrši oduzimanje dvaju operanda

Kodirati:

#using the subtraction operator
x = 10
y = 5
print("x = ", x, "\n")
print("y = ", y, "\n")
print("Address of x", id(x))
x = y - 3
print("x = y - 3 \n")
print("Now x = ", x, "\n")
print("Address of x", id(x))

Izlaz:

Pogledajmo sada primjer pomoću " is " koji se vraća istinom ako objekti oba objekta imaju istu memorijsku adresu

1. Primjer

Kodirati:

U ovom primjeru izjavljujemo dvije varijable x i y, pri čemu je y jednak x koji sada upućuje na istu memorijsku adresu kao i x.

x = 100
print("x =", x)
print("address of x", id(x))
y = x
print("y =", y)
print("address of y ", id(y))

Izlaz:

2. Primjer

U ovom primjeru izjavljujemo dvije varijable x i y, gdje je y jednako x što je istina, ali kada vrijednost y povećamo za jedan, izlaz se pretvara u netočno.

x = 100
y = x
print(y is x)
y = y + 1
print(y is x)

Izlaz:

U gornja dva primjera to smo vidjeli.

Pokazivači na Pokazivače

1. Primjer

def fun(a, b, c, d):
print(a, b, c, d)
x = (101, 102, 103, 104)
fun(*x)

Izlaz:

2. Primjer

def fun (a, b, c, d):
print(a, b, c, d)
y = ('a':'I', 'b':'like', 'c':'python', 'd':'programming')
fun(**y)

Izlaz:

3. Primjer

Sastavljanje primjera jedan i primjera dva zajedno

def fun (a, b, c, d):
print(a)
print(b)
print(c)
print(d)
x = (100, 200, 300, 400)
fun(*x)
y = ('a':'I', 'b':'like', 'c':'python', 'd':'programming')
fun(**y)

Izlaz:

Zaključak

Nadam se da je ovaj članak bio dovoljno dobar da vam omogući bolje razumijevanje tema. Članak također treba razumjeti jer su svi ključni elementi objašnjeni na najbolji mogući način.

Preporučeni članak

Ovo je vodič za Pointers In Python. Ovdje smo razgovarali o tome što su pokazivači u Pythonu? različite vrste pokazivača i aritmetičkih operacija zajedno s primjerima. Možete i proći naše druge predložene članke da biste saznali više -

  1. Operatori za usporedbu Pythona
  2. Booleovi operateri u Pythonu
  3. Prednosti Pythona
  4. Zvjezdani uzorci u Pythonu
  5. Uvod u Pointere u C ++
  6. Pregled pokazatelja u C #
  7. Različite operacije povezane s Tupovima
  8. Primjeri za implementaciju usporednih operatora u PowerShellu

Kategorija: