Maison  >  Article  >  développement back-end  >  Quelle est la différence entre le soulignement simple et le double soulignement en python ?

Quelle est la différence entre le soulignement simple et le double soulignement en python ?

silencement
silencementoriginal
2019-05-23 18:11:388035parcourir

La différence entre le soulignement simple et le double soulignement en python est la suivante : le soulignement simple est utilisé pour indiquer à d'autres programmes que cet attribut ou cette méthode est privé ; le double soulignement est utilisé pour définir des instances, des variables de classe, des variables globales et des instances ; des variables de classes privées, etc.

Quelle est la différence entre le soulignement simple et le double soulignement en python ?

Souligné unique

Démarrer une méthode ou un attribut dans une classe avec un seul trait de soulignement indique cela aux autres programmes. La propriété ou la méthode est privée. Pourtant, ce nom n’a rien de spécial.

(Tutoriel recommandé : Tutoriel vidéo Python)

Double soulignement

Tout La forme __spam (commençant par au moins deux traits de soulignement et se terminant par au plus un trait de soulignement) remplace _classname__spam, où classname est le nom de la classe actuelle. Cette modification est effectuée sans tenir compte de la position syntaxique de l'identifiant. Il peut donc être utilisé pour définir des instances de classe privée et des variables de classe, des méthodes, des variables dans le monde global et même des variables dans l'instance. Des instances de différentes classes peuvent être distinguées.

Quelle est la différence entre le soulignement simple et le double soulignement en python ?

Résumé :

__foo__ : une convention, un nom interne en Python, utilisé pour distinguer d'autres noms définis par l'utilisateur. noms nommer pour éviter les conflits.

_foo : Une convention utilisée pour spécifier que les variables sont privées. Un moyen pour les programmeurs de spécifier des variables privées.

__foo : Cela a une vraie signification : l'analyseur remplace ce nom par _classname__foo pour le distinguer des autres classes portant le même nom.

Il n'existe aucune autre forme de trait de soulignement en Python.

Cette convention n'est pas différente des classes, variables, variables globales, etc.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn