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


Groups > fr.comp.lang.python > #4225 > unrolled thread

Saisie de 2 nombres ...

Started bygil203 <gil203@outlook.com>
First post2024-10-18 18:13 +0200
Last post2024-10-20 13:37 +0000
Articles 5 — 3 participants

Back to article view | Back to fr.comp.lang.python


Contents

  Saisie de 2 nombres ... gil203 <gil203@outlook.com> - 2024-10-18 18:13 +0200
    Re: Saisie de 2 nombres ... Olivier Miakinen <om+news@miakinen.net> - 2024-10-18 19:42 +0200
      Re: Saisie de 2 nombres ... gil203 <gil203@outlook.com> - 2024-10-20 12:17 +0200
        Re: Saisie de 2 nombres ... Olivier Miakinen <om+news@miakinen.net> - 2024-10-20 12:26 +0200
      Re: Saisie de 2 nombres ... yves <yves@free.invalid> - 2024-10-20 13:37 +0000

#4225 — Saisie de 2 nombres ...

Fromgil203 <gil203@outlook.com>
Date2024-10-18 18:13 +0200
SubjectSaisie de 2 nombres ...
Message-ID<67128910$0$28081$426a74cc@news.free.fr>
Bonjour,

Question de débutant :

Comment faire pour qu'un utilisateur saisisse 2 nombres séparés par une 
virgule (ex "4,5" sans les guillemets) via la commande "input" et que 
les 2 valeurs soient affectées dans 2 variables "n1" et "n2".

Je pensais à un truc du style :
	n1, n2 = input("Entrez vos 2 nombres :")
mais ça ne fonctionne pas !

J'ai essayé avec la fonction "list" ou bien avec les "index" [] mais 
sans succès ...

Merci d'avance.

[toc] | [next] | [standalone]


#4226

FromOlivier Miakinen <om+news@miakinen.net>
Date2024-10-18 19:42 +0200
Message-ID<veu6lv$1901$1@cabale.usenet-fr.net>
In reply to#4225
Le 18/10/2024 18:13, gil203 a écrit :
> 
> Comment faire pour qu'un utilisateur saisisse 2 nombres séparés par une 
> virgule (ex "4,5" sans les guillemets) via la commande "input" et que 
> les 2 valeurs soient affectées dans 2 variables "n1" et "n2".
> 
> Je pensais à un truc du style :
> 	n1, n2 = input("Entrez vos 2 nombres :")
> mais ça ne fonctionne pas !

Peut-être :

txt = input("Entrez vos 2 nombres :")
n1, n2 = list(map(int,txt.split(',')))

Explication :

si text = '4,5',
alors :
 txt.split(',') = ['4', '5']
et :
 list(map(int,txt.split(','))) = [4, 5]


-- 
Olivier Miakinen

[toc] | [prev] | [next] | [standalone]


#4227

Fromgil203 <gil203@outlook.com>
Date2024-10-20 12:17 +0200
Message-ID<6714d8c7$0$16834$426a74cc@news.free.fr>
In reply to#4226
Le 18/10/2024 à 19:42, Olivier Miakinen a écrit :
> Le 18/10/2024 18:13, gil203 a écrit :
>>
>> Comment faire pour qu'un utilisateur saisisse 2 nombres séparés par une
>> virgule (ex "4,5" sans les guillemets) via la commande "input" et que
>> les 2 valeurs soient affectées dans 2 variables "n1" et "n2".
>>
>> Je pensais à un truc du style :
>> 	n1, n2 = input("Entrez vos 2 nombres :")
>> mais ça ne fonctionne pas !
> 
> Peut-être :
> 
> txt = input("Entrez vos 2 nombres :")
> n1, n2 = list(map(int,txt.split(',')))
> 
> Explication :
> 
> si text = '4,5',
> alors :
>   txt.split(',') = ['4', '5']
> et :
>   list(map(int,txt.split(','))) = [4, 5]
> 

Merci !

[toc] | [prev] | [next] | [standalone]


#4228

FromOlivier Miakinen <om+news@miakinen.net>
Date2024-10-20 12:26 +0200
Message-ID<vf2lsj$90$1@cabale.usenet-fr.net>
In reply to#4227
Le 20/10/2024 12:17, gil203 a écrit :
>> 
>> txt = input("Entrez vos 2 nombres :")
>> n1, n2 = list(map(int,txt.split(',')))
> 
> Merci !

Note que, si tu n'es pas le seul utilisateur de ce progremme, il serait
bon de tester qu'il y a bien deux nombres dans la list() avant de les
affecter à n1 et n2. Tu pourrais même améliorer le code pour accepter
qu'il y ait n'importe quel séparateur au lieu d'une virgule, voire que
la saisie puisse se faire en deux fois si l'utilisateur tape 'Enter' au
lieu d'une virgule.

Mais bon, tu vois l'idée.

-- 
Olivier Miakinen

[toc] | [prev] | [next] | [standalone]


#4229

Fromyves <yves@free.invalid>
Date2024-10-20 13:37 +0000
Message-ID<671507b4$0$28056$426a74cc@news.free.fr>
In reply to#4226
Le Fri, 18 Oct 2024 19:42:23 +0200, Olivier Miakinen a écrit:

> txt = input("Entrez vos 2 nombres :") n1, n2 =
> list(map(int,txt.split(',')))

ou encore :

n1,n2 = [int(elt) for elt in input("Entrez vos 2 nombres : ").split(',')]

Mais il faut mieux être le seul utilisateur, ou alors avoir une grande 
confiance en ses utilisateurs.

@+
-- 
Yves

[toc] | [prev] | [standalone]


Back to top | Article view | fr.comp.lang.python


csiph-web