Fonction Python | dir ()

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

Syntaxe :

dir ({object}) 

Paramètres :

object  [facultatif] : prend le nom de l`objet 

renvoie :

dir () essaie pour renvoyer une liste valide d`attributs de l`objet auquel il est appelé. De plus, la fonction dir () se comporte assez différemment avec différents types d`objets, car elle vise à produire l`information la plus pertinente, plutôt que l`information complète.

  • Pour les objets de classe, elle renvoie une liste d`objets noms de tous les attributs valides et attributs de base également.
  • Pour les modules/objets de la bibliothèque, il essaie de renvoyer une liste de noms de tous les attributs contenus dans ce module.
  • Si aucun paramètre n`est passé, il renvoie une liste de noms dans la portée locale actuelle.

Code # 1 : avec et sans importation de bibliothèques externes.

# code Python3 pour démontrer dir ()
# lorsqu`aucun paramètre n`est passé


# Veuillez noter que nous n`avons importé aucun module

print ( dir ())



# Importons maintenant deux modules

import random

import maths


# renvoie les noms de modules ajoutés à
# espace de noms local incluant tous les
# existant comme avant

imprimer ( dir ())

Quitter :

[`__builtins__`,` __cached__`, `__doc__`,` __file__`, `__loader__`,` __name__`, `__package__`,` __spec__`] [ `__builti ns__`, `__cached__`,` __doc__`, `__file__`,` __loader__`, `__name__`,` __package__`, `__spec__`,` math`, `aléatoire`] 

Code # 2 :


# code Python3 pour démontrer la fonction dir()
# lorsqu`un objet module est passé en paramètre.


# importer un module aléatoire

importer aléatoire



# Liste d`impressions contenant des noms
# attributs dans une fonction aléatoire

print ( "Le contenu de la bibliothèque aléatoire est : :" )


# module L`objet est passé en paramètre

print ( dir (aléatoire))

Sortie :

Le contenu de la bibliothèque aléatoire est : : [`BPF`,` LOG4`, `NV_MAGICCONST`,` RECIP_BPF`, ` Aléatoire`,` SG_MAGICCONST`, `SystemRandom`, `TWOPI`,` _BuiltinMethodType`, `_MethodTy pe`,` _Sequence`, `_Set`,` __all__`, `__builtins__`,` __cached__`, `__doc__`,` __file__`, `__loader__`,` __name__age__age `,` __spec__`, `_acos`,` _ceil` , `_cos`,` _e`, `_exp`,` _inst`, `_log`,` _pi`, `_random`,` _sha512`, `_sin`, `_ sqrt`,` _test`, `_test_generator`,` _urandom`, `_warn`,` betavariate`, `choice`,` expovariate`, `gammavariate`,` gauss`, `getrandbits`,` getstate`, `lognormvariate`,` normalvariate`, `paretovariate`,` randint` , `random`,` randrange`, `samp le`, `seed`,` setstate`, `shuffle`,` triangulaire`, `uniform`,` vonmisesvariate`, `weibullvariate`] 

< b> Code #3 : Objet passé en paramètre.


# Lorsque l`objet liste est passé en tant que
# paramètres pour la fonction dir ()


# Liste contenant
# quelques valeurs aléatoires ‚Äã‚Äã

geeks = [ "pythonengineering" , " gfg " , " Informatique " ,

"Données Structures" , " Algorithmes " ]


# dir () listera également les
# attributs du dictionnaire

d = {} # dictionnaire vide


# dir () renverra toutes les
# liste de méthodes disponibles dans la e portée locale actuelle

print ( dir (geeks))



# Appel dir () avec un dictionnaire
# nom & quot; d & quot; comme paramètre. Renvoie toutes les
# méthodes dict disponibles dans
# portée locale actuelle

print ( dir ( d))

Sortie :

[`__add__`,` __class__`, `__contains__`,` __delattr__`, `__delitem__`,` __dir__`, `__doc__`,` __eq__`, `__format__`,` __ge__`, `__getattribute__`,` __getitem__`, `__gt__`,` __hash__`, `__iadd__ `,` __imul__`, `__init__`,` __iter__`, `__le__`,` __len__`, `__lt__`,` __mul__`, `__lt__` `,` __new__`, `__reduce__`,` __reduce_ex__`, `__repr__` ,` __reversed__`, `__rmul__`,` __setattr__`, `__setitem__`,` __sizeof__`, `__`str__`,` __subclassho, `__subclassho `clear`,` copy`, `count`,` extend`, `index `,` insert`, `pop`,` remove`, `reverse`,` sort`] [`__class__`,` __contains__`, ` __delattr__`, `__delitem__`,` __dir__`, `__doc__`,` __eq__` , `__format__`, ` __ge__`,` __getattribute__`, `__getitem__`,` __gt__`, `__hash__`,` __init__`, `__iter__`,` __le__`, `__len__`,` __lt__`, `__ne__`,` __new__`, `__reduce ` ,` __reduce_ex__`, `__repr__`,` __setattr__`, `__setitem__`,` __sizeof__`, `__str__`,` __subclasshook__`, `clear`,` copy`, `fromkeys`,` get`, `items`, ` keys`,` pop`, `popitem`,` setdefault`, `update`,` values`] 

Code # 4 : Défini par l`utilisateur — Un objet de classe avec une méthode __dir () __ disponible est passé en paramètre.


< tr>

# programme de démonstration Python3
# de dir () lorsque des objets définis par l`utilisateur
# paramètres passés.


# Créer une classe simple avec __dir () __
# méthode pour démontrer que cela fonctionne

class Supermarché :


# La fonction __dir() ___ qui liste tout

# attributs de base à utiliser.

def __dir __ ( soi ) :

return [ `customer_name` , ` produit` ,

`quantité` , ` prix` , `date` ]



# objet de classe de supermarché personnalisé

mon_cart = Supermarché ()


# dir () méthode énumération

print ( dir (my_cart))

Sortie :

[`customer_name` , `date`,` price`, `produit`,` quantité`] 

Applications :

  • Dir () a son propre ensemble d`utilisations . Il est généralement utilisé pour le débogage dans de simples programmes quotidiens et même dans de grands projets gérés par une équipe de développement. La capacité de dir() à lister tous les attributs d`un paramètre passé est vraiment utile lors de la gestion d`un grand nombre de classes et de fonctions séparément.
  • La fonction dir () permet également de lister tous les attributs disponibles pour un module / liste / dictionnaire. Ainsi, il nous donne également des informations sur les opérations que nous pouvons effectuer sur une liste ou un module disponible, ce qui peut être très utile lorsqu`il y a peu d`informations sur le module. Cela vous aide également à apprendre de nouveaux modules plus rapidement.