Fonction de base Python 02 (D ~ F)

L'interpréteur Python possède de nombreuses fonctions et types intégrés qui sont toujours disponibles. Ils sont listés ici par ordre alphabétique.

Fonctions intégrées Fonctions intégrées
delattr () dict ()
vous () divmod ()
énumérer() eval ()
exec () filtre()
flotte() format()
frozenset ()

delattr (objet, nom)

Ceci est similaire à setattr (). Le paramètre est un objet et une chaîne. La chaîne doit être le nom de l'une des propriétés de l'objet. Si l'objet le permet, la fonction supprimera l'attribut nommé. Par exemple, équivalent à. delattr (x, 'foobar') del x.foobar

classe dict (** kwarg)

classe dict (mappage, ** kwarg)

classe dict (itérable, ** kwarg)

Créez un nouveau dictionnaire. L'objet dict est une classe de dictionnaire. Voir dict et mapping type-dictionary pour la documentation sur cette classe.

Pour les autres conteneurs, consultez la liste intégrée, les classes set et tuple, ainsi que le module collections.

dir ([objet])

Sans paramètres, renvoie une liste de noms dans la portée locale actuelle. Essayez de renvoyer une liste d'attributs valides de l'objet avec un paramètre.

Si l'objet a une méthode nommée __dir __ (), cette méthode sera appelée et la méthode doit renvoyer une liste d'attributs. Cela permet aux objets qui implémentent des fonctions __getattr __ () ou __getattribute __ () personnalisées de personnaliser la façon dont dir () rapporte leurs attributs.

Si l'objet ne fournit pas __dir __ (), la fonction fera de son mieux pour collecter des informations à partir de l'attribut __dict__ de l'objet (s'il est défini) et de son objet type. La liste des résultats n'est pas nécessairement complète et peut être inexacte __getattr __ () lorsque l'objet est personnalisé.

Le mécanisme dir () par défaut se comporte différemment pour différents types d'objets, car il tente de produire les informations les plus pertinentes plutôt que complètes:

Si l'objet est un objet module, la liste contient les noms des attributs de module.

Si l'objet est un objet de type ou de classe, la liste contient les noms de ses attributs et les noms de ses attributs sous-jacents de manière récursive.

Sinon, la liste contient le nom de propriété de l'objet, le nom de propriété de sa classe et la propriété de la classe de base de sa classe de manière récursive.

La liste des résultats est triée par ordre alphabétique. Par exemple:

import struct
dir()   # show the names in the module namespace  
['__builtins__', '__name__', 'struct']
dir(struct)   # show the names in the struct module 
['Struct', '__all__', '__builtins__', '__cached__', '__doc__', '__file__',
 '__initializing__', '__loader__', '__name__', '__package__',
 '_clearcache', 'calcsize', 'error', 'pack', 'pack_into',
 'unpack', 'unpack_from']
class Shape:
    def __dir__(self):
        return ['area', 'perimeter', 'location']
s = Shape()
dir(s)
['area', 'location', 'perimeter']

Notez que dir () est principalement fourni pour plus de commodité à l'invite interactive, il essaie donc de fournir un ensemble de noms intéressants plutôt qu'un ensemble de noms strictement ou uniformément définis, et son comportement détaillé peut varier en fonction de la version Différent. Par exemple, lorsque le paramètre est une classe, l'attribut de métaclasse n'est pas dans la liste de résultats.

divmod (a , b)

Prend deux nombres (non complexes) comme paramètres et renvoie une paire de nombres contenant son quotient et le reste lorsque la division entière est utilisée. Pour les types d'opérandes mixtes, les règles des opérateurs arithmétiques binaires s'appliquent. Pour les entiers, le résultat est le même. Pour les nombres à virgule flottante, le résultat est où q est généralement mais peut être inférieur à 1. En tout cas, il est très proche de A. S'il est différent de zéro, il a le même signe que b et b. (a // b, a% b) (q, a% b) plancher mathématique (a / b) q * b + a% ba% b0 <= abs (a% b) <abs (b)

énumérer (itérable , start = 0)

Renvoie un objet énuméré. Iterable doit être une séquence, un itérateur ou un autre objet qui prend en charge l'itération. next () La méthode itérateur renvoyée par enumerate () renvoie un tuple qui contient un nombre (à partir du début, la valeur par défaut est 0), et la valeur obtenue en itérant via iterable.

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
list(enumerate(seasons, start=1))
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

Équivalent à:

def enumerate(sequence, start=0):
    n = start
    for elem in sequence:
        yield n, elem
        n += 1

eval (expression [, globaux [, locaux]])

Le paramètre est une chaîne et des variables globales et locales facultatives. Si elle est fournie, la variable globale doit être un dictionnaire. Si elle est fournie, la variable locale peut être n'importe quel objet de mappage.

Utilisez des dictionnaires globaux et locaux comme espaces de noms globaux et locaux pour analyser et évaluer les paramètres d'expression en tant qu'expressions Python (techniquement parlant, listes conditionnelles). Si le dictionnaire global existe et ne contient pas la valeur de la clé, avant d'analyser l'expression, une référence au dictionnaire du module intégré sera insérée sous la clé. Cela signifie que les expressions ont généralement un accès complet aux modules standard et peuvent propager des environnements restreints. Si le dictionnaire local est omis, la valeur par défaut est le dictionnaire globals__builtins__builtinsbuiltins. Si deux dictionnaires sont omis, l'expression eval () est exécutée à l'aide de variables globales et de variables locales dans l'environnement appelant. Veuillez noter que eval () n'a pas accès aux étendues imbriquées (étendues non locales) dans un environnement fermé.

La valeur de retour est le résultat de l'expression d'évaluation. Les erreurs de syntaxe sont signalées comme anormales. Exemple:

x = 1
eval('x+1')
2

Cette fonction peut également être utilisée pour exécuter des objets de code arbitraires (tels que ceux créés par compile ()). Dans ce cas, passez l'objet code au lieu de la chaîne. Si l'objet de code a été compilé avec 'exec' comme paramètre de mode, sa valeur de retour eval () est None.

Conseil: La fonction exec () prend en charge l'exécution dynamique des instructions. Les fonctions globals () et locals () renvoient respectivement les dictionnaires globaux et locaux actuels, ce qui peut être utile en contournant l'utilisation de eval () ou exec ().

Voir la référence ast.literal_eval () pour les fonctions qui utilisent des expressions chaîne uniquement pour évaluer les chaînes en toute sécurité.

L'utilisation de l'objet code comme paramètre déclenche l'exécution de l'événement d'audit. Des événements de compilation de code peuvent également être déclenchés.

exec (objet [, global [, local]])

Cette fonctionnalité prend en charge l'exécution dynamique du code Python. L'objet doit être une chaîne ou un objet de code. S'il s'agit d'une chaîne, la chaîne est analysée dans un ensemble d'instructions Python, puis l'instruction est exécutée (sauf si une erreur de syntaxe se produit). 1 S'il s'agit d'un objet de code, il suffit de l'exécuter. Dans tous les cas, le code exécuté peut être valide comme entrée de fichier (voir la section "Entrée de fichier" du Manuel de référence). Notez que même dans le contexte du code transmis à la fonction, l'instruction return et yield exec () ne peut pas être utilisée en dehors de la définition de la fonction. La valeur de retour est None.

Dans tous les cas, si la partie facultative est omise, le code sera exécuté dans la portée actuelle. Si seules des variables globales sont fournies, il doit s'agir d'un dictionnaire (et non d'une sous-classe du dictionnaire), qui sera utilisé pour les variables globales et locales. Si global et local sont donnés, ils sont utilisés pour les variables globales et locales respectivement. Si elle est fournie, la variable locale peut être n'importe quel objet de mappage. N'oubliez pas qu'au niveau du module, les variables globales et les variables locales sont le même dictionnaire. Si exec obtient deux objets distincts en tant que globaux et locaux, le code s'exécutera comme s'il était incorporé dans la définition de classe.

Si le dictionnaire global ne contient pas la valeur de la clé, insérez la référence __builtins__ dans le dictionnaire de module intégré intégré sous la clé. De cette façon, vous pouvez insérer votre propre dictionnaire dans des variables globales avant de passer votre dictionnaire __builtins__ pour contrôler les fonctions intégrées que exec () peut utiliser pour le code exécutable.

L'utilisation de l'objet code comme paramètre déclenche l'exécution de l'événement d'audit. Des événements de compilation de code peuvent également être déclenchés.

Notez que les fonctions intégrées globals () et locals () renvoient respectivement le dictionnaire global et local actuel, ce qui peut être utile en utilisant exec () around comme deuxième et troisième paramètres.
Notez que la fonction des variables locales par défaut locals () est la suivante: vous ne devez pas tenter de modifier le dictionnaire de variables locales par défaut. Si vous devez voir l'impact du code sur les sections locales après le retour de la fonction, veuillez passer un dictionnaire de sections locales clair. exec ()

filtre (fonction, itérable)

Construisez un itérateur à partir de ces éléments itérables et retournez true pour sa fonction. Iterable peut être une séquence, un conteneur ou un itérateur qui prend en charge l'itération. Si la fonction est None, la fonction d'identité est supposée, c'est-à-dire que tous les faux éléments itérables sont supprimés.

Notez que si la fonction ne l'est pas, et la fonction l'est, elle est équivalente à une expression de générateur. filtre (fonction, itérable) (élément pour élément dans itérable si fonction (élément)) Aucun (élément pour élément dans itérable si élément) Aucun

Veuillez vous référer à la fonction supplémentaire itertools.filterfalse (), qui renvoie des éléments itérables, et cette fonction renvoie false pour cela.

float de classe ([x])

Renvoie un nombre à virgule flottante construit à partir d'un nombre ou d'une chaîne x.

Si le paramètre est une chaîne, il doit contenir un nombre décimal, vous pouvez choisir d'ajouter un symbole après celui-ci et vous pouvez choisir de l'intégrer dans l'espace. Les symboles facultatifs peuvent être «+» ou «-»; un symbole «+» n'a aucun effet sur la valeur générée. Le paramètre peut également être une chaîne représentant NaN (pas un nombre) ou une infinité positive. Plus précisément, après avoir supprimé les caractères vides de début et de fin, l'entrée doit être conforme à la syntaxe suivante:

sign           ::=  "+" | "-"
infinity       ::=  "Infinity" | "inf"
nan            ::=  "nan"
numeric_value  ::=  floatnumber | infinity | nan
numeric_string ::=  [sign] numeric_value

Ce floatnumber est une forme de texte à virgule flottante Python, décrite dans le texte à virgule flottante. La capitalisation n'a pas d'importance, donc, par exemple, "inf", "Inf", "INFINITY" et "iNfINity" sont toutes des orthographes acceptables qui représentent l'infini positif.

Sinon, si l'argument est un entier ou un nombre à virgule flottante, un nombre à virgule flottante avec la même valeur (dans la précision en virgule flottante de Python) est renvoyé. Si le paramètre est en dehors de la plage de nombres à virgule flottante Python, OverflowError lèvera un.

Pour l'objet général Python x, veuillez déléguer float (x) à x. Float (). Si __float __ () n'est pas défini, revenez à __index __ ().

Si aucun paramètre n'est donné, 0,0 est renvoyé.

Exemples:

>>>
>>> float('+1.23')
1.23
>>> float('   -12345\n')
-12345.0
>>> float('1e-003')
0.001
>>> float('+1E6')
1000000.0
>>> float('-Infinity')
-inf

Les types à virgule flottante sont décrits en types numériques-int, float, complex.

Modifié dans la version 3.6: autorise le regroupement des nombres par des traits de soulignement dans le texte du code.

Modifié dans la version 3.7: x est désormais un paramètre de position uniquement.

Des modifications ont été apportées dans la version 3.8: index () Si __float __ () n'est pas défini, revenez à.

format (valeur [, format_spec])

Conformément au contrôle de format_spec, la valeur est convertie en une représentation "formatée". L'interprétation de format_spec dépendra du type du paramètre de valeur, mais la plupart des types intégrés utilisent une syntaxe de format standard: Format Specification Mini-Language.

Le format_spec par défaut est une chaîne vide, qui produit généralement le même effet que l'appel str (valeur).

Lors de la recherche de valeurs, l'appel à droite est converti en un appel qui contourne le dictionnaire d'instances. Premièrement, si la recherche de méthode arrive et déclenche une exception et que format_spec n'est pas vide, ou que les deux format_spec ou la valeur de retour n'est pas une chaîne. format (valeur, format_spec) type (valeur). format (valeur, format_spec) format () TypeErrorobject

Modifié dans la version 3.4: si format_spec n'est pas une chaîne vide, object (). Format (format_spec) est levé. TypeError

classe frozenset ([itérable])

Renvoyez un nouvel objet frozenset, vous pouvez choisir d'obtenir des éléments d'itérable. frozenset est une classe intégrée. Voir frozenset et définissez le type -set, frozenset pour la documentation sur ce type.

Pour les autres conteneurs, consultez les classes set, list, tuple et dict intégrées, ainsi que le module collections.

Publié 36 articles originaux · loué 0 · visites 617

Je suppose que tu aimes

Origine blog.csdn.net/Corollary/article/details/105424877
conseillé
Classement