Stampa gli attributi dell'oggetto in Python

Muhammad Waiz Khan 25 aprile 2021
  1. Stampa gli attributi di un oggetto in Python usando la funzione dir() in Python
  2. Stampa gli attributi di un oggetto in Python Utilizzando la funzione vars() in Python
Stampa gli attributi dell'oggetto in Python

Questo tutorial spiegherà vari metodi per stampare gli attributi di un oggetto in Python. Un attributo nella programmazione orientata agli oggetti è la proprietà di una classe o di un’istanza. Ad esempio, una classe denominata student può avere name, roll no e marks, ecc. Come attributi. Ogni istanza della classe condivide tutti gli attributi di una classe.

In questo tutorial, esamineremo come ottenere e stampare gli attributi di un oggetto in Python.

Stampa gli attributi di un oggetto in Python usando la funzione dir() in Python

La funzione incorporata dir(), quando chiamata senza argomenti, restituisce l’lista dei nomi nello scope locale corrente, e quando un oggetto viene passato come argomento, restituisce l’lista degli attributi validi dell’oggetto.

Per stampare gli attributi dell’oggetto, dobbiamo passare l’oggetto alla funzione dir() e stampare gli attributi dell’oggetto restituiti dall’oggetto dir(). Possiamo usare il metodo pprint() del modulo pprint per stampare gli attributi in un modo ben formattato. Il codice di esempio seguente mostra come utilizzare la funzione dir() per stampare gli attributi dell’oggetto:

from pprint import pprint

mylist = list()
pprint(dir(mylist))

Produzione:

['__add__',
 '__class__',
 '__contains__',
 '__delattr__',
 '__delitem__',
 '__dir__',
 '__doc__',
 '__eq__',
 ...
 '__new__',
 '__reduce__',
 '__reduce_ex__',
 '__repr__',
 '__reversed__',
 '__rmul__',
 '__setattr__',
 '__setitem__',
 '__sizeof__',
 '__str__',
 '__subclasshook__',
 'append',
 'clear',
 'copy',
 ...
 'remove',
 'reverse',
 'sort']

Stampa gli attributi di un oggetto in Python Utilizzando la funzione vars() in Python

Le funzioni vars(), quando chiamate senza argomenti, restituiscono il dizionario con la tabella dei simboli locale corrente. Se un oggetto viene passato alla funzione vars(), restituisce l’attributo __dict__ dell’oggetto. Se l’oggetto fornito come input non ha l’attributo __dict__, verrà sollevato un TypeError.

L’esempio di codice seguente mostra come utilizzare la funzione vars() per stampare gli attributi di un oggetto in Python.

from pprint import pprint

pprint(vars(myobject))

Articolo correlato - Python Object