"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je obtenir efficacement une liste d’entiers en entrée d’un utilisateur en Python ?

Comment puis-je obtenir efficacement une liste d’entiers en entrée d’un utilisateur en Python ?

Publié le 2024-12-23
Parcourir:786

How Can I Efficiently Get a List of Integers as Input from a User in Python?

Obtenir une liste de numéros en entrée de l'utilisateur : solution pythonique

Lors de la tentative de récupération d'une liste de numéros d'un utilisateur à l'aide d'une entrée () ou raw_input(), vous pouvez rencontrer des résultats inattendus en raison de la tendance de Python à interpréter les entrées sous forme de chaînes. Pour éviter ce problème et obtenir une liste d'entiers, utilisez une approche plus pythonique utilisant la compréhension de liste et le fractionnement des entrées.

a = [int(x) for x in input().split()]

Exemple :

>>> a = [int(x) for x in input().split()]
3 4 5
>>> a
[3, 4, 5]

Cette solution concise utilise :

  • Splitting input : Divisez la chaîne d'entrée de l'utilisateur en une liste de sous-chaînes à l'aide du split( ) méthode. Par défaut, il est divisé en caractères d'espacement.
  • Conversion en entiers : Utilisez la compréhension de liste pour convertir chaque sous-chaîne en un entier, en vous assurant que la liste résultante contient des valeurs numériques.

En utilisant cette approche, vous pouvez facilement capturer une liste de nombres de l'utilisateur en Python, éliminant ainsi le besoin d'expressions régulières complexes ou d'analyses supplémentaires. étapes.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3