Infoforall

Identification

Infoforall

Résumé 15 - INTERFACE CONSOLE


Lien vers l'activité : Interface Console

Dernière modif. : 02 01 2022

7.1 - Fonction native input

Permet de récupérer sous forme d'un string la réponse-utilisateur à la question fournie en argument.

1
reponse = input("Quel est votre nom ?")
  • Affiche "Quel est votre nom ?" dans la console
  • Attend la réponse clavier d'un utilisateur (validant avec ENTREE)
  • Place la réponse sous forme d'un string dans la variable reponse

L'association des deux fonctions input et print permet d'utiliser la console comme INTERFACE entre le programme et l'utilisateur humain.

7.2 - Modification de type

  • la fonction type() permet de récupérer le type d'un résultat évalué.
  • la fonction int(x) renvoie une tentative de conversion de x en intéger
  • la fonction float(x) renvoie une tentative de conversion de x en float
  • la fonction str(x) renvoie une tentative de conversion de x en string
Exemple
1
pocheDroite = int(pocheDroite)

7.3 - Concaténation

Python ne sait pas concaténer (+) un string et un entier ou un float.

Dans un print, il faut donc mieux utiliser des virgules pour dire "Affichage à côté".

# Ceci provoque une erreur si `argentTotal` est un nombre et pas un string print("Dans les poches, on trouve " + argentTotal + " euros au total.") # Ceci ne provoque pas d'erreur même si argentTotal est un nombre print("Dans les poches, on trouve " , argentTotal , " euros au total.")

7.4 - fStrings

Le mieux reste néanmoins d'utiliser les fStrings lorsque vous voulez mettre un résultat en forme.

On place un f devant le string qui doit contenir des accolades. Lors de la génération du string, le contenu de la variable va remplacer le nom de la variable.

Exemple

print( f"Dans les poches, {argentTotal} euros au total" )

7.5 Fonctions d'interface

Les interactions entre le programme et l'utilisateur doivent être encapsulées dans des fonctions qu'on nommera fonctions d'interface.

Pourquoi ? Tout simplement car en cas de changement d'interface, il suffira de changer ces quelques fonctions et pas l'intégralité du programme.