Che cos'è il puntatore in Python?

Il puntatore in Python è definito come una variabile che punta all'indirizzo di memoria di un'altra variabile. Il puntatore indica l'indirizzo di questa variabile di cui viene fornito l'indirizzo. In parole semplici, il puntatore contiene un indirizzo di memoria.

Nell'esempio seguente, abbiamo assegnato a "a" un valore intero 2 e lo abbiamo stampato. Allo stesso modo, abbiamo assegnato un valore di stringa "b" e lo abbiamo anche stampato. Di seguito, abbiamo visto i soli tipi di stringa e numero intero, in Python ci sono più tipi come elenco, set, tuple, dizionario, ecc. Vediamo ciascuno di questi individualmente e comprendiamo con la funzione di istanza () che restituisce VERO se è un oggetto

Sintassi del puntatore in Python

>>> variable name = value;

Esempio 1

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

Esempio - 2

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

Come creare puntatori in Python?

Di seguito è riportato un esempio di creazione di puntatori con la funzione isinstance () per dimostrare che si tratta di un tipo di oggetto. Vedremo tutti i possibili tipi di dati in Python con la funzione isinstance (), in questo modo imparerai come dichiarare tutti i tipi di dati in Python.

Codice:

// 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))

Produzione:

Ora che sappiamo che ogni variabile dichiarata è un oggetto poiché ogni funzione isinstance () restituisce True, il che significa che è un oggetto. Ora possiamo dire che tutto è un oggetto in Python. Impariamo a conoscere oggetti mutabili da tutti gli oggetti. Tieni presente che l'elenco, il set e il dizionario sono modificabili. Le pause non sono oggetti mutabili. Gli oggetti mutabili possono essere modificati mentre gli oggetti immutabili non possono essere modificati.

Esempio

Su un oggetto immutabile come una stringa, possiamo fare un accodamento come indicato di seguito

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

e funziona, ma ora se proviamo ad aggiungere qualcos'altro come

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

alla stringa genera un errore poiché è immutabile, per modificare dobbiamo usare la funzione append ().

Usi del puntatore in Python

I puntatori sono ampiamente utilizzati in C e C ++. Con i puntatori è possibile l'allocazione dinamica della memoria. I puntatori possono essere dichiarati come variabili che contengono l'indirizzo di memoria di un'altra variabile.

Puntatori Operazioni aritmetiche

I puntatori hanno quattro operatori aritmetici.

  • Operatore di incremento: ++
  • Operatore di decremento: -
  • Operatore aggiunta: +
  • Operatore di sottrazione: -

Le operazioni aritmetiche vengono eseguite con l'uso di operatori aritmetici. Nei programmi seguenti abbiamo usato la funzione id () che restituisce l'indirizzo di memoria dell'oggetto.

Incrementa operatore: incrementa il valore di 1

Codice:

#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))

Produzione:

Operatore in decremento: riduce il valore di 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))

Produzione:

Operatore aggiunta: esegue l'aggiunta di due operandi

#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))

Produzione:

Operatore di sottrazione: esegue la sottrazione di due operandi

Codice:

#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))

Produzione:

Vediamo ora un esempio usando " is " che ritorna vero se gli oggetti di entrambi gli oggetti hanno lo stesso indirizzo di memoria

1. Esempio

Codice:

In questo esempio, stiamo dichiarando due variabili xey, dove y è uguale a x che ora punta allo stesso indirizzo di memoria di x.

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

Produzione:

2. Esempio

In questo esempio, stiamo dichiarando due variabili xey, dove y è uguale a x che è vero, ma quando incrementiamo il valore di y di uno l'output diventa falso.

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

Produzione:

Nei due esempi precedenti, l'abbiamo visto.

Puntatori a Puntatori

1. Esempio

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

Produzione:

2. Esempio

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

Produzione:

3. Esempio

Mettere insieme l'esempio 1 e l'esempio due

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)

Produzione:

Conclusione

Spero che questo articolo sia stato abbastanza buono da farti comprendere meglio gli argomenti. Inoltre, l'articolo si spiega da sé in quanto tutti gli elementi chiave sono stati spiegati nel miglior modo possibile.

Articolo raccomandato

Questa è stata una guida a Pointers In Python. Qui discutiamo di cosa sono i puntatori in Python? diversi tipi di puntatori e operazioni aritmetiche insieme ad esempi. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Operatori di confronto Python
  2. Operatori booleani in Python
  3. Vantaggi di Python
  4. Motivi a stella in Python
  5. Introduzione ai puntatori in C ++
  6. Panoramica dei puntatori in C #
  7. Diverse operazioni relative alle tuple
  8. Esempi per implementare operatori di confronto in PowerShell

Categoria: