Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #4225 > unrolled thread
| Started by | gil203 <gil203@outlook.com> |
|---|---|
| First post | 2024-10-18 18:13 +0200 |
| Last post | 2024-10-20 13:37 +0000 |
| Articles | 5 — 3 participants |
Back to article view | Back to fr.comp.lang.python
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
| From | gil203 <gil203@outlook.com> |
|---|---|
| Date | 2024-10-18 18:13 +0200 |
| Subject | Saisie 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]
| From | Olivier Miakinen <om+news@miakinen.net> |
|---|---|
| Date | 2024-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]
| From | gil203 <gil203@outlook.com> |
|---|---|
| Date | 2024-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]
| From | Olivier Miakinen <om+news@miakinen.net> |
|---|---|
| Date | 2024-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]
| From | yves <yves@free.invalid> |
|---|---|
| Date | 2024-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