Initial commit
This commit is contained in:
3
training/code/02-language-basics/01-prints/prints_01.py
Normal file
3
training/code/02-language-basics/01-prints/prints_01.py
Normal file
@ -0,0 +1,3 @@
|
||||
print("La rue Rostand,")
|
||||
print(" se trouve au")
|
||||
print("Feu à droite")
|
1
training/code/02-language-basics/01-prints/prints_02.py
Normal file
1
training/code/02-language-basics/01-prints/prints_02.py
Normal file
@ -0,0 +1 @@
|
||||
print("Hauts", "les", "cœurs", "!")
|
@ -0,0 +1,11 @@
|
||||
prenom = "Paul"
|
||||
temperature = 24.5
|
||||
age = 35
|
||||
|
||||
# Afficher les valeurs des variables
|
||||
print(prenom)
|
||||
print(temperature)
|
||||
print(age)
|
||||
|
||||
# Ou bien sur une seule ligne
|
||||
print(prenom, temperature, age)
|
@ -0,0 +1,4 @@
|
||||
saisie = input("Saisissez du texte :")
|
||||
|
||||
# Afficher le texte qui a été récupéré de la fonction input
|
||||
print(saisie)
|
@ -0,0 +1,10 @@
|
||||
result1 = 5 * 15 + 30 # Expression avec opérateurs arithmétiques
|
||||
result2 = 9 > 4 # Stocke si 9 est supérieur à 4, donc `True`
|
||||
result3 = "Chapi" + "Chapo" # concaténation
|
||||
result4 = (59 * 62 + 13) / 6.5 # tester la valeur
|
||||
|
||||
# Afficher les expressions
|
||||
print(result1)
|
||||
print(result2)
|
||||
print(result3)
|
||||
print(result4)
|
@ -0,0 +1,7 @@
|
||||
distance = 42195 # distance en mètres
|
||||
kilometers = distance // 1000 # nombre entier de paquets de 1 000
|
||||
meters = distance % 1000 # Reste après division entière par 1 000
|
||||
|
||||
# Affichage avec un peu de texte en plus.
|
||||
print(kilometers, "km et", meters, "mètres.")
|
||||
|
@ -0,0 +1,9 @@
|
||||
weight = 17_254_433 # Poids en grammes
|
||||
tons = weight // 1_000_000 # Combien de paquets de 1 tonne
|
||||
kilograms = (weight // 1_000) % 1_000 # Nombre de kilos restants sous la tonne
|
||||
grams = weight % 1_000 # Nombre de grammes sous le kilo
|
||||
|
||||
# Afficher les unités
|
||||
print("Tonnes :", tons)
|
||||
print("Kilogrammes :", kilograms)
|
||||
print("Grammes :", grams)
|
@ -0,0 +1,11 @@
|
||||
saisie1 = input("Entrez un premier nombre :")
|
||||
saisie2 = input("Entrez un second nombre :")
|
||||
# Convertir les deux entrées en entiers pour pouvoir les comparer
|
||||
saisie1 = float(saisie1)
|
||||
saisie2 = float(saisie2)
|
||||
|
||||
# Afficher le nombre le plus grand, nécessite d'avoir vu les conditions
|
||||
if saisie1 > saisie2:
|
||||
print(saisie1, "est le plus grand nombre")
|
||||
else:
|
||||
print(saisie2, "est le plus grand nombre")
|
@ -0,0 +1,5 @@
|
||||
if __name__ == '__main__':
|
||||
dice_roll = 5
|
||||
|
||||
if dice_roll > 4:
|
||||
print("Lancer réussi !")
|
@ -0,0 +1,5 @@
|
||||
if __name__ == '__main__':
|
||||
text = "Bonjour"
|
||||
# Ne devrait rien afficher puisque la chaîne ne correspond pas
|
||||
if text == "bonjouR":
|
||||
print("Bien le bonjour !")
|
@ -0,0 +1,7 @@
|
||||
if __name__ == '__main__':
|
||||
text = "Bonjour"
|
||||
# Ne devrait rien afficher puisque la chaîne ne correspond pas
|
||||
if text == "bonjouR":
|
||||
print("Bien le bonjour !")
|
||||
else:
|
||||
print("Je n'ai pas compris !")
|
@ -0,0 +1,12 @@
|
||||
# Valeur de départ à changer au besoin pour tester
|
||||
value = 8
|
||||
|
||||
# Tester plusieurs cas de figure s'excluant progressivement
|
||||
if value >= 9:
|
||||
print("Élevé")
|
||||
elif value >= 7:
|
||||
print("Haut")
|
||||
elif value >= 4:
|
||||
print("Standard")
|
||||
else:
|
||||
print("Bas")
|
@ -0,0 +1,7 @@
|
||||
a1 = 6
|
||||
a2 = 5
|
||||
|
||||
if a1 > 5 and a2 < 6:
|
||||
print("Conditions OK")
|
||||
else:
|
||||
print("Valeurs incorrectes")
|
@ -0,0 +1,7 @@
|
||||
a1 = 6
|
||||
a2 = 5
|
||||
|
||||
if a1 > 5 or a2 < 6:
|
||||
print("Conditions OK")
|
||||
else:
|
||||
print("Valeurs incorrectes")
|
@ -0,0 +1,13 @@
|
||||
is_on = True
|
||||
saisie = input("Saisissez une commande (Marche ou Arrêt) :")
|
||||
|
||||
if saisie == "Marche":
|
||||
if is_on is False:
|
||||
print("Allumage en cours…")
|
||||
else:
|
||||
print("Déjà allumé !")
|
||||
elif saisie == "Arrêt":
|
||||
if is_on:
|
||||
print("Extinction…")
|
||||
else:
|
||||
print("Déjà éteint !")
|
@ -0,0 +1,2 @@
|
||||
for number in range(10):
|
||||
print(number)
|
@ -0,0 +1,3 @@
|
||||
for number in range(10):
|
||||
if number % 2 == 0: # Est pair / reste 0 quand on fait la division entière
|
||||
print(number)
|
@ -0,0 +1,3 @@
|
||||
for item1 in range(10):
|
||||
for item2 in range(item1):
|
||||
print(item1, item2)
|
@ -0,0 +1,5 @@
|
||||
number = 10
|
||||
|
||||
while number >= 0:
|
||||
print(number)
|
||||
number -= 1 # ou number = number - 1
|
@ -0,0 +1,6 @@
|
||||
iteration = 1
|
||||
|
||||
# Quitter la boucle avec Ctrl+C ou le bouton Stop de PyCharm
|
||||
while True:
|
||||
print("Itération", iteration)
|
||||
iteration += 1
|
@ -0,0 +1,6 @@
|
||||
iteration = 1
|
||||
|
||||
# Ne se lancera pas
|
||||
while iteration > 10:
|
||||
print("Itération", iteration)
|
||||
iteration += 1
|
@ -0,0 +1,45 @@
|
||||
# Possibilité 1
|
||||
left = 0
|
||||
right = 1
|
||||
new = 1
|
||||
|
||||
# Afficher les éléments successifs de la séquence avec une variable new
|
||||
while new < 10_000:
|
||||
new = left + right
|
||||
print(new)
|
||||
left = right
|
||||
right = new
|
||||
|
||||
|
||||
# Possibilité 2
|
||||
left = 0
|
||||
right = 1
|
||||
temp = None
|
||||
|
||||
# Afficher les éléments successifs de la séquence avec une variable temporaire
|
||||
while left + right < 10_000:
|
||||
print(left + right)
|
||||
temp = left
|
||||
left = right
|
||||
right = temp + right
|
||||
|
||||
|
||||
# Possibilité 3 : algorithme
|
||||
left = 0
|
||||
right = 1
|
||||
|
||||
# Afficher les éléments successifs de la séquence sans variable temporaire
|
||||
while left + right < 10_000:
|
||||
print(left + right)
|
||||
right = left + right
|
||||
left = right - left
|
||||
|
||||
|
||||
# Possibilité 4
|
||||
left = 0
|
||||
right = 1
|
||||
|
||||
# Afficher les éléments successifs de la séquence via l'unpacking
|
||||
while left + right < 10_000:
|
||||
print(left + right)
|
||||
left, right = (right, left + right)
|
7
training/code/02-language-basics/07-lists/lists_01.py
Normal file
7
training/code/02-language-basics/07-lists/lists_01.py
Normal file
@ -0,0 +1,7 @@
|
||||
even_numbers = [0, 2, 4, 6, 8, 10]
|
||||
length = len(even_numbers)
|
||||
# Afficher le dernier élément
|
||||
print(even_numbers[length - 1])
|
||||
# Ajouter un élément et vérifier la modification
|
||||
even_numbers.append(12)
|
||||
print(even_numbers)
|
11
training/code/02-language-basics/07-lists/lists_02.py
Normal file
11
training/code/02-language-basics/07-lists/lists_02.py
Normal file
@ -0,0 +1,11 @@
|
||||
# Puissances de 2 de 0 à 6
|
||||
numbers = [1, 2, 4, 8, 16, 32, 64]
|
||||
|
||||
# Retirer le nombre 8 (par sa valeur)
|
||||
numbers.remove(8)
|
||||
|
||||
# Ajouter la valeur 128 à la fin
|
||||
numbers.append(128)
|
||||
|
||||
# Affiher le résultat
|
||||
print(numbers)
|
8
training/code/02-language-basics/07-lists/lists_03.py
Normal file
8
training/code/02-language-basics/07-lists/lists_03.py
Normal file
@ -0,0 +1,8 @@
|
||||
# Liste contenant quelques valeurs
|
||||
values = ["text", 3.14159, 16, True]
|
||||
|
||||
# Afficher le dernier élément, quelle que soit la taille de la liste
|
||||
print(values[-1])
|
||||
|
||||
# Afficher le premier élément en utilisant un index négatif
|
||||
print(values[-len(values)])
|
9
training/code/02-language-basics/07-lists/lists_04.py
Normal file
9
training/code/02-language-basics/07-lists/lists_04.py
Normal file
@ -0,0 +1,9 @@
|
||||
# Créer une liste de 6 nombres
|
||||
numbers = [2, 3, 5, 8, 13, 21]
|
||||
|
||||
# Afficher une liste contenant les 3 premiers éléments
|
||||
print(numbers[0:3])
|
||||
|
||||
# Afficher une liste contenant les éléments de numbers du 2nd au dernier
|
||||
print(numbers[1:])
|
||||
|
15
training/code/02-language-basics/07-lists/lists_05.py
Normal file
15
training/code/02-language-basics/07-lists/lists_05.py
Normal file
@ -0,0 +1,15 @@
|
||||
# Créer une liste de 6 nombres
|
||||
numbers = [2, 3, 5, 8, 13, 21]
|
||||
|
||||
# Afficher une liste contenant les 3 premiers éléments
|
||||
print(numbers[0:3])
|
||||
|
||||
# Afficher une liste contenant les éléments de numbers du 2nd au dernier
|
||||
print(numbers[1:])
|
||||
|
||||
# Afficher une liste contenant les éléments à l'envers
|
||||
print(numbers[::-1])
|
||||
|
||||
# Afficher une liste contenant les éléments aux index pairs
|
||||
print(numbers[0::2])
|
||||
print(numbers[::2])
|
7
training/code/02-language-basics/07-lists/lists_a1.py
Normal file
7
training/code/02-language-basics/07-lists/lists_a1.py
Normal file
@ -0,0 +1,7 @@
|
||||
# Multiples de 3
|
||||
numbers = [0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45]
|
||||
|
||||
# Parcourir la liste et afficher les éléments pairs
|
||||
for number in numbers:
|
||||
if (number % 2) == 0:
|
||||
print(number)
|
15
training/code/02-language-basics/08-sets/sets_01.py
Normal file
15
training/code/02-language-basics/08-sets/sets_01.py
Normal file
@ -0,0 +1,15 @@
|
||||
# Créer des ensembles avec au moins deux valeurs en commun
|
||||
set1 = {2, 4, 6, 8, 10}
|
||||
set2 = {8, 10, 12, 14, 16}
|
||||
|
||||
# Tenter d'ajouter une valeur déjà présente dans set1
|
||||
set1.add(6)
|
||||
|
||||
# Afficher l'intersection des deux ensembles (valeurs en commun)
|
||||
print(set1 & set2) # c'est pareil mais moins explicite
|
||||
print(set1.intersection(set2)) # c'est pareil mais plus explicite
|
||||
|
||||
# Afficher l'union des deux ensembles (toutes valeurs)
|
||||
print(set1 | set2)
|
||||
print(set1.union(set2))
|
||||
|
7
training/code/02-language-basics/08-sets/sets_02.py
Normal file
7
training/code/02-language-basics/08-sets/sets_02.py
Normal file
@ -0,0 +1,7 @@
|
||||
# Déclarer une liste avec des doublons
|
||||
duplicated = [1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7]
|
||||
print(duplicated)
|
||||
|
||||
# Créer un ensemble dédupliquant les éléments
|
||||
deduplicated = set(duplicated)
|
||||
print(deduplicated)
|
21
training/code/02-language-basics/08-sets/sets_03.py
Normal file
21
training/code/02-language-basics/08-sets/sets_03.py
Normal file
@ -0,0 +1,21 @@
|
||||
# Al et Kim sont inscrits sur un réseau social. Al a les amis suivants :
|
||||
#
|
||||
# - Josephine
|
||||
# - Meghan
|
||||
# - Amy
|
||||
# - Bob
|
||||
#
|
||||
# Kim a les amis suivants :
|
||||
#
|
||||
# - Frank
|
||||
# - Amy
|
||||
# - Josephine
|
||||
# - Susan
|
||||
#
|
||||
# Quels sont leurs amis en commun ? Écrivez un code qui représente et résout cet énoncé.
|
||||
al_friends = {"Josephine", "Meghan", "Amy", "Bob"}
|
||||
kim_friends = {"Frank", "Amy", "Josephine", "Susan"}
|
||||
|
||||
# Afficher le bon résultat
|
||||
print(al_friends & kim_friends) # Affichier l'intersection avec des opérateurs
|
||||
print(al_friends.intersection(kim_friends)) # Affichier l'intersection plus explicite
|
5
training/code/02-language-basics/08-sets/sets_04.py
Normal file
5
training/code/02-language-basics/08-sets/sets_04.py
Normal file
@ -0,0 +1,5 @@
|
||||
# Partant du tuple suivant :
|
||||
# `(1, 4, 6, 9, 1, 3, 6, 12, 2, 5, 7, 10, 3, 5, 2, 6, 4, 6, 1, 8, 5, 2, 3, 6)`
|
||||
# - Affichez le nombre de valeurs différentes présentes dans le tuple.
|
||||
sample = (1, 4, 6, 9, 1, 3, 6, 12, 2, 5, 7, 10, 3, 5, 2, 6, 4, 6, 1, 8, 5, 2, 3, 6)
|
||||
print(len(set(sample)))
|
@ -0,0 +1,15 @@
|
||||
# - Écrivez un simple dictionnaire associant des noms à des âges :
|
||||
# * Paul → 30
|
||||
# * Karim → 22
|
||||
# * Gina → 41
|
||||
# * Anna → 25
|
||||
# - Affichez l'âge de Gina
|
||||
# - Ajoutez les associations suivantes :
|
||||
# * Alina → 33
|
||||
# * Victor → 55
|
||||
# - Affichez le contenu du dictionnaire
|
||||
ages = {"Paul": 30, "Karim": 22, "Gina": 41, "Anna": 25}
|
||||
print(ages["Gina"])
|
||||
ages["Victor"] = 55
|
||||
ages["Alina"] = 33
|
||||
print(ages)
|
@ -0,0 +1,18 @@
|
||||
# - Écrivez un simple dictionnaire associant des noms à des âges :
|
||||
# * Paul → 30
|
||||
# * Karim → 22
|
||||
# * Gina → 41
|
||||
# * Anna → 25
|
||||
# - Affichez l'âge de Gina
|
||||
# - Ajoutez les associations suivantes :
|
||||
# * Alina → 33
|
||||
# * Victor → 55
|
||||
# - Affichez le contenu du dictionnaire
|
||||
ages = {"Paul": 30, "Karim": 22, "Gina": 41, "Anna": 25}
|
||||
ages["Victor"] = 55
|
||||
ages["Alina"] = 33
|
||||
|
||||
# Parcourir les clés et afficher la valeur associée
|
||||
for name in ages:
|
||||
print(name)
|
||||
print(ages[name])
|
@ -0,0 +1,18 @@
|
||||
# - Écrivez un simple dictionnaire associant des noms à des âges :
|
||||
# * Paul → 30
|
||||
# * Karim → 22
|
||||
# * Gina → 41
|
||||
# * Anna → 25
|
||||
# - Affichez l'âge de Gina
|
||||
# - Ajoutez les associations suivantes :
|
||||
# * Alina → 33
|
||||
# * Victor → 55
|
||||
# - Affichez le contenu du dictionnaire
|
||||
ages = {"Paul": 30, "Karim": 22, "Gina": 41, "Anna": 25}
|
||||
ages["Victor"] = 55
|
||||
ages["Alina"] = 33
|
||||
|
||||
# Parcourir les clés et afficher la valeur associée
|
||||
for name, age in ages.items(): # Utiliser l'unpacking
|
||||
print(name)
|
||||
print(age)
|
@ -0,0 +1,6 @@
|
||||
# Conditions météo
|
||||
meteo = {"Pau": (21.0, "Nuageux", 1015), "Gap": (20.3, "Dégagé", 1019), "Osny": (19.1, "Brouillard", 1015)}
|
||||
|
||||
# Conditions avec uniquement la température comme valeur associée
|
||||
converted = {ville: meteo[ville][0] for ville in meteo}
|
||||
print(converted)
|
@ -0,0 +1,9 @@
|
||||
# Nombres pairs non divisibles par 5
|
||||
values = [x * 2 for x in range(50) if (x * 2) % 5 != 0]
|
||||
print(values)
|
||||
|
||||
# Liste de mots
|
||||
words = ["matin", "le", "pour", "lapin", "carotte", "justesse", "ambroisie", "cuticule", "aube", "flanc", "flan"]
|
||||
# Créer une liste avec uniquement les mots de plus de 4 lettres
|
||||
short_words = [w for w in words if len(w) > 4]
|
||||
print(short_words)
|
6
training/code/04-functions/01-base/base_01.py
Normal file
6
training/code/04-functions/01-base/base_01.py
Normal file
@ -0,0 +1,6 @@
|
||||
"""Déclaration de fonction simple."""
|
||||
def show_something():
|
||||
print("Something")
|
||||
|
||||
# Exécuter la fonction
|
||||
show_something()
|
8
training/code/04-functions/01-base/base_02.py
Normal file
8
training/code/04-functions/01-base/base_02.py
Normal file
@ -0,0 +1,8 @@
|
||||
"""Fonction simple retournant une constante."""
|
||||
def return_constant():
|
||||
print("Texte : 99")
|
||||
return 99 # renvoie un nombre entier
|
||||
|
||||
# Appeler la fonction et récupérer la valeur renvoyée
|
||||
result = return_constant()
|
||||
print(result)
|
10
training/code/04-functions/01-base/base_03.py
Normal file
10
training/code/04-functions/01-base/base_03.py
Normal file
@ -0,0 +1,10 @@
|
||||
# Fonction produit
|
||||
def product(x, y):
|
||||
return x * y
|
||||
|
||||
|
||||
# Tests d'appel de la fonction
|
||||
print(product(10, 10))
|
||||
print(product(15, -15))
|
||||
print(product("hello ", 3))
|
||||
print(product([1, 2, 3], 2))
|
22
training/code/04-functions/01-base/base_04.py
Normal file
22
training/code/04-functions/01-base/base_04.py
Normal file
@ -0,0 +1,22 @@
|
||||
"""Fonction qui calcule un quotient."""
|
||||
|
||||
|
||||
def quotient(numerator, denominator=1):
|
||||
"""
|
||||
Fonction de quotient.
|
||||
|
||||
Renvoie `None` si l'argument `denominator` vaut 0.
|
||||
|
||||
"""
|
||||
try:
|
||||
return numerator / denominator
|
||||
except ZeroDivisionError:
|
||||
# Si impossible d'évaluer l'expression ligne 4
|
||||
return None
|
||||
|
||||
|
||||
# Tester plusieurs arguments pour la fonction
|
||||
print(quotient(10, denominator=4))
|
||||
print(quotient(10, denominator=-1))
|
||||
print(quotient(1, denominator=0))
|
||||
print(quotient(5))
|
Reference in New Issue
Block a user