Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.python > #3791

Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche

Path csiph.com!aioe.org!FdrTMw7+RJa5kGNwdwd/KQ.user.46.165.242.91.POSTED!not-for-mail
From Dominique <zzz@aol.com.invalid>
Newsgroups fr.comp.lang.python
Subject Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche
Date Tue, 22 Mar 2022 20:25:26 +0100
Organization Aioe.org NNTP Server
Message-ID <t1d7r6$1dec$1@gioia.aioe.org> (permalink)
References <3rqdne8aYaZ4ya7_nZ2dnUU7_83NnZ2d@giganews.com> <623357f5$0$29483$426a74cc@news.free.fr> <t13hgh$18ii$1@gioia.aioe.org> <62383555$0$8899$426a74cc@news.free.fr>
Mime-Version 1.0
Content-Type text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding 8bit
Injection-Info gioia.aioe.org; logging-data="46540"; posting-host="FdrTMw7+RJa5kGNwdwd/KQ.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0
Content-Language fr
X-Notice Filtered by postfilter v. 0.9.2
Xref csiph.com fr.comp.lang.python:3791

Show key headers only | View raw


Le 21/03/2022 à 09:20, Nicolas a écrit :
> Bonjour,
> 
> Le 19/03/2022 à 04:09, Dominique a écrit :
>> Le 17/03/2022 à 16:47, yves a écrit :
>>
>>> Explorer lentement et méticuleusement les bases de l'input 
>>> utilisateur en
>>> Python:
>>>
>>> https://www.w3schools.com/python/python_user_input.asp
>>
>> Bonjour,
>> Je suis allé jeter un œil sur ce site. Quel est l'intérêt du "+" par 
>> rapport à la virgule dans le print :
>>
>> print("Username is: " + username)
>> Username is: Test
>>
>> print("Username is: ",username)
>> Username is:  Test
>>
>> Je ne vois, comme différence, qu'une espace avec le + dans le premier 
>> cas, contre deux avec la virgule...
>>
> Dans le cas présent, il n'y a effectivement qu'un espace de différence.
> L'utilisation du "+" fonctionne parce que "username" est une chaine de 
> caractères, Python permettant la concaténation de chaines de caractères 
> avec l'opérateur "+".
> 
> Prenons un autre cas :
> print ("Age utilisateur :", age) # age est un entier
> 
> Ici, utiliser "+" n'est pas possible car age n'est pas une chaine de 
> caractères. On ne peut pas ajouter un entier à une chaine de caractères.
> 
> Pourquoi cela fonctionne avec une virgule ? C'est parce que la fonction 
> print() affiche, pour chaque argument x :
> - Lorsque x est une chaine de caractère, affiche x
> - Lorsque x est n'est pas une chaine de caractères, affiche str(x)
> 
> L'exemple ci-dessus est donc équivalent à
> print ("Age utilisateur :", str(age))
> 
> Ceci est valable pour tous les objets.
> 
> Pour aller plus loin, str(x) appelle x.__str__().
> Tous les objets prédéfinis ont une méthode __str__ qui est appelée 
> automatiquement lorsque str() est utilisée.
> Pour une classe que l'on définit soit même, ont peut ajouter la méthode 
> à la classe pour lui faire afficher ce que l'on veut :
> def __str__(self):
> 
> Lorsque la méthode __str__ n'est pas définie, str(x) appelle la fonction 
> repr(x) qui elle-même appelle la méthode x.__repr__() lorsqu'elle est 
> définie.
> Idem que pour __str__, on peut définir __repr__ soit même.
> Lorsque __repr__ n'est pas définie, repr() affiche le nom et l'adresse 
> de l'objet.
> 
> Les infos sont dans la doc officielle :
> - print : https://docs.python.org/3/library/functions.html#print
> - str   : https://docs.python.org/3/library/stdtypes.html#str
> - repr  : https://docs.python.org/3/library/functions.html#repr
> 
> Bonne semaine
> 
> Nicolas


Merci pour ces précisions et liens, Nicolas :-)

Back to fr.comp.lang.python | Previous | NextPrevious in thread | Find similar


Thread

fonction python qui ne se lance pas toute seule et dont 1/5 marche speedman12 <nospam_petou612@gmail.com.invalid> - 2022-03-17 10:33 -0500
  Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche yves <yves@free.invalid> - 2022-03-17 15:47 +0000
    Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche Dominique <zzz@aol.com.invalid> - 2022-03-19 04:09 +0100
      Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche yves <yves@free.invalid> - 2022-03-19 09:19 +0000
      Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2022-03-19 13:10 +0100
        Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche Dominique <zzz@aol.com.invalid> - 2022-03-19 17:11 +0100
      Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche Nicolas <nicolasp@aaton.com> - 2022-03-21 09:20 +0100
        Re: fonction python qui ne se lance pas toute seule et dont 1/5 marche Dominique <zzz@aol.com.invalid> - 2022-03-22 20:25 +0100

csiph-web