Input, print and numbers - Learn Python 3 - Snakify

Lesson 1
Entrée, impression et numéros


1. Comment lire et écrire en Python

Chaque programme est finalement un processeur de données, nous devrions donc savoir comment entrer et sortir des données à l'intérieur. Il existe une fonction, print() , pour générer des données à partir de n'importe quel programme Python. Pour l'utiliser, transmettez une liste d'arguments séparés par des virgules que vous souhaitez imprimer dans la fonction print() . Voyons voir un exemple. Appuyez sur "Exécuter" puis "Suivant" pour voir comment le programme est exécuté ligne par ligne:

print(5 + 10)
print(3 * 7, (17 - 2) * 8)
print(2 ** 16)  # deux étoiles sont utilisées pour l'exponentiation (2 à la puissance de 16)
print(37 / 3)  # barre oblique unique est une division
print(37 // 3)  # double barre oblique est une division entière
        # il renvoie seulement le quotient de la division (c'est-à-dire pas de reste)
print(37 % 3)  # signe de pourcentage est un opérateur de module
        # il donne le reste de la valeur de gauche divisé par la bonne valeur

Pour entrer des données dans un programme, nous utilisons input() . Cette fonction lit une seule ligne de texte, sous la forme d'une chaîne.

Voici un programme qui lit le nom de l'utilisateur et les accueille:

print('What is your name?')
name = input()  # lire une seule ligne et la stocker dans la variable "nom"
print('Hi ' + name + '!')
    

Advertising by Google, may be based on your interests

2. Somme des nombres et des chaînes

Essayons d'écrire un programme qui entre deux nombres et imprime leur somme. Nous lisons les deux nombres et les stockons dans les variables a et b utilisant l'opérateur d'affectation = . Sur le côté gauche d'un opérateur d'affectation, nous mettons le nom de la variable. Le nom peut être une chaîne de caractères latins ( AZ , az , 0-9 , _ ) mais doit commencer par une lettre de la plage AZ ou az . Sur le côté droit d'un opérateur d'affectation, nous mettons toute expression que Python peut évaluer. Le nom commence à pointer sur le résultat de l'évaluation. Lisez cet exemple, lancez-le et regardez la sortie:

a = input()
b = input()
s = a + b
print(s)
    

Après avoir exécuté l'exemple, nous pouvons voir qu'il imprime 57 . Comme on nous l'a appris à l'école, 5 + 7 donne 12 . Donc, le programme est mauvais, et il est important de comprendre pourquoi. La chose est, dans la troisième ligne s = a + b Python a "sommé" deux chaînes, plutôt que deux nombres. La somme de deux chaînes en Python fonctionne comme suit: elles sont simplement collées l'une après l'autre. C'est aussi parfois appelé "concaténation de chaînes".

Voyez-vous dans l'inspecteur de variables, sur le côté droit, que les valeurs liées aux variables a et b sont entourées de guillemets? Cela signifie que les valeurs sont des chaînes, pas des nombres. Les chaînes et les nombres sont représentés différemment dans Python.

Toutes les valeurs de Python sont appelées "objets". Chaque objet a un certain type. Le nombre 2 correspond à un objet "numéro 2" de type "int" (c'est-à-dire un nombre entier). La chaîne 'hello' correspond à un objet "string 'hello'" de type "str". Chaque nombre à virgule flottante est représenté comme un objet de type "float". Le type d'un objet spécifie le type d'opérations qui peuvent lui être appliquées. Par exemple, si les deux variables "first" et "second" pointent vers les objets de type int , Python peut les multiplier. Cependant, s'ils pointent vers les objets de type str , Python ne peut pas faire cela:

first = 5
second = 7
print(first * second)

# vous pouvez utiliser des guillemets simples ou doubles pour définir une chaîne
first = '5'
second = "7"
print(first * second)
    

Pour convertir (convertir) la chaîne de chiffres en un nombre entier, nous pouvons utiliser la fonction int() . Par exemple, int('23') donne un objet int avec la valeur 23 .

Étant donné les informations ci-dessus, nous pouvons maintenant corriger la sortie incorrecte et afficher la somme des deux nombres correctement:

a = int(input())
b = int(input())
s = a + b
print(s)
    

Advertising by Google, may be based on your interests