IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Affectation de variable étrange


Sujet :

Python

  1. #1
    Membre très actif
    Avatar de toumic2.0
    Homme Profil pro
    Gammologie (Étudie, code, publie des gammes)
    Inscrit en
    Janvier 2021
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Gammologie (Étudie, code, publie des gammes)
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2021
    Messages : 167
    Par défaut Affectation de variable étrange
    Bonjour

    Mon EDI est sympa, il m'aide à l'entretien de mon code, et parfois comme maintenant sa demande de rectification me parait étrange.

    Le fait d'affecter "_" me laisse pantois ☺

    Que signifie "_" comme valeur de variable ?

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    "_" comme valeur affecté à une variable, c'est un underscore affecté à la-dite variable.

    "_" comme nom de variable, c'est par convention un nom pour expliciter le fait que cette variable est de type jetable et non à vocation d'être utilisée plus loin.

    L'équivalent grosso modo en Perl 5 du $_ pour les strings/int/float, du @_ pour les listes et du %_ pour les hash (dictionnaires ici).

  3. #3
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    bonjour

    lorsque tu la vois, tu peux penser à "poubelle", "ignorer" ou "jetable"
    La valeur est quand même bien passée dans cette variable (elle a juste un nom bizarre)

    Donc ici, ton "super" éditeur est aux fraises, autant simplement écrire u3, u4 = 1, 1

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 832
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 832
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par toumic2.0 Voir le message
    Le fait d'affecter "_" me laisse pantois
    Il n'affecte pas la string "_", il affecte la valeur entière "1" à la variable nommée "_", ce n'est pas la même chose

    Citation Envoyé par toumic2.0 Voir le message
    Que signifie "_" comme valeur de variable ?
    "_" c'est une string comme une autre (comme par exemple "toto", "titi", "tata", "hello", "world", "toumic" et tant d'autres qui n'ont de limites que ton imagination). Tu as donc parfaitement le droit d'affecter cette string à une variable => var="_".

    Si maintenant tu veux parler de "nom" de variable alors d'une part il te faudra corriger les termes du langage Python que tu emploies. Ensuite il faut te référer à la doc Python qui spécifie les règles de nommage des variables. Ou alors tu peux aller chercher un tuto qui en parle...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Citation Envoyé par toumic2.0 Voir le message
    Mon EDI est sympa, il m'aide à l'entretien de mon code, et parfois comme maintenant sa demande de rectification me parait étrange.

    Le fait d'affecter "_" me laisse pantois ☺

    Que signifie "_" comme valeur de variable ?
    Caché derrière votre EDI alors qu'il suffit de demander à Python:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> _, u3, u4 = 1, 1, 1
    >>> print(_)
    1
    Et sans doute aussi intéressant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    v>>> u, *_ = 1, 2, 3
    >>> u
    1
    >>> _
    [2, 3]
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour

    Le blanc souligné permet de respecter la syntaxe Python pour des variables dont le contenu ne sera pas utilisé, mais aussi d'éviter d'avoir une alerte pour "variable non utilisée" dans certains programmes d'analyse de code comme pylint.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'affectation de variable
    Par bob33 dans le forum C
    Réponses: 3
    Dernier message: 04/11/2005, 17h01
  2. Affecter une variable javascript à une variable php
    Par gwendy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/10/2005, 20h58
  3. affecter une variable de type stringstream
    Par sorari dans le forum SL & STL
    Réponses: 3
    Dernier message: 24/03/2005, 11h14
  4. [PS] affectation de variable
    Par madmortal dans le forum SQL
    Réponses: 2
    Dernier message: 01/09/2004, 13h17
  5. script SQL : affectation de variables
    Par Laura dans le forum Requêtes
    Réponses: 3
    Dernier message: 28/10/2003, 21h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo