Différences entre versions de « Initiation au langage python »

De Didaquest
Aller à la navigationAller à la recherche
 
(21 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{Widget:Fiche-Conceptuelle-Haut}}
 
{{Widget:Fiche-Conceptuelle-Haut}}
 
+
[https://cmapscloud.ihmc.us/viewer/cmap/1YLZ52KMQ-10876FQ-J1V0Z9 Carte conceptuelle Python]
 
= {{Widget:Traduction-Fiche}} =
 
= {{Widget:Traduction-Fiche}} =
  
Ligne 12 : Ligne 12 :
  
 
[[{{FULLPAGENAME}}]] (Français)  
 
[[{{FULLPAGENAME}}]] (Français)  
/ [[Computer science, Developement]]  (Anglais)  
+
/ [[Computer science, Developement with Python, Langage Python]]  (Anglais)  
/ [[برمجة]] (Arabe)
+
/ [[برمجة بايثون]] (Arabe)
  
 
}}<!-- ************** Fin Fiche Didactique Traduction ********************* -->
 
}}<!-- ************** Fin Fiche Didactique Traduction ********************* -->
Ligne 72 : Ligne 72 :
  
 
== {{Widget:Definition-graphique-Fiche}} ==
 
== {{Widget:Definition-graphique-Fiche}} ==
 
+
{{cc}} [https://cmapscloud.ihmc.us/viewer/cmap/1YLZ52KMQ-10876FQ-J1V0Z9 Carte conceptuelle]
 
<!-- ************************* Début ****************************** -->
 
<!-- ************************* Début ****************************** -->
 
{{Fiche Didactique Media <!------------------------------------------->
 
{{Fiche Didactique Media <!------------------------------------------->
Ligne 83 : Ligne 83 :
  
 
<!-- Remplacez, Adaptez, Ajoutez ou Supprimez les images et lignes non utilisées-->
 
<!-- Remplacez, Adaptez, Ajoutez ou Supprimez les images et lignes non utilisées-->
Image:python-logo.png|Titre de Votre Image 1
+
Image:python-logo.png|Python
Image:https://cmapscloud.ihmc.us/viewer/cmap/1YLZ52KMQ-10876FQ-J1V0Z9|Titre de Votre Image 2
+
Image:ccpython.png|[https://cmapscloud.ihmc.us/viewer/cmap/1YLZ52KMQ-10876FQ-J1V0Z9 Carte conceptuelle]|Carte conceptuelle
Image:Definition-graphique-concept3.png|Titre de Votre Image 3
+
Image:logopycharm.png|[https://www.jetbrains.com/pycharm/download/#section=windows EDI Pycharm]
  
 
</gallery><!-- ************** Fin modification images***************************-->
 
</gallery><!-- ************** Fin modification images***************************-->
Ligne 96 : Ligne 96 :
 
<!-- ****************** Commercez les modifications pour les Vidéos *******************************************************-->
 
<!-- ****************** Commercez les modifications pour les Vidéos *******************************************************-->
  
<youtube width="220" height="220">k0O8-0kPQmM</youtube>
+
<youtube width="220" height="220">https://www.youtube.com/watch?v=psaDHhZ0cPs</youtube>
<youtube width="220" height="220">iIlCg439eHQ</youtube>
+
<youtube width="220" height="220">https://www.youtube.com/watch?v=oUJolR5bX6g</youtube>
<youtube width="220" height="220">k0O8-0kPQmM</youtube>
+
<youtube width="220" height="220">https://www.youtube.com/watch?v=LamjAFnybo0</youtube>
 
+
<youtube width="220" height="220">https://www.youtube.com/watch?v=nyz2sieUtsI</youtube>
 
}}<!-- ************************* Fin modifications pour les Médias *******************************************************-->
 
}}<!-- ************************* Fin modifications pour les Médias *******************************************************-->
  
Ligne 134 : Ligne 134 :
 
<!-- ****************** Commercez les modifications ***********************  -->
 
<!-- ****************** Commercez les modifications ***********************  -->
  
*...............................................................................
+
*1- Le juste prix :
................................................................................
+
Le juste prix projet python débutant
................................................................................
+
Ce premier projet est un jeu amusant pour les débutants connu de tous. Le programme génère un prix rond aléatoire. Le but pour l’utilisateur est de deviner le prix. Chaque fois que l’utilisateur se trompe, l’ordinateur lui dit si c’est plus ou moins que le prix qu’il a donné. À chaque aide de l’ordinateur, le score final atteignable par le joueur baisse.
................................................................................
+
 
*...............................................................................
+
Le but du juste prix est de deviner un nombre entier choisi aléatoirement par Python. Écrivez un script qui attribue un nombre à une variable. Dans une boucle, demandez un input à l’utilisateur et informez le joueur si le nombre entré est égale, plus grand ou plus petit que le juste prix.
................................................................................
+
 
................................................................................
+
En réalisant ce petit script, vous apprendrez à :
................................................................................
+
 
 +
saisir des entrées clavier par un utilisateur
 +
créer des fonctions pour valider que le nombre entré est bien un nombre entier
 +
comparer une variable de référence (le prix) avec une autre variable
 +
calculer la différence entre deux nombres
 +
<pre>
 +
import random
 +
prix = random.randint(1, 10)
 +
score = 100
 +
tentatives = 0
 +
print("Devinez le juste prix ! Le prix est un nombre compris entre 1 et 10 inclus.")
 +
while True:
 +
    nombre = int(input())
 +
    tentatives += 1
 +
    if nombre < prix:
 +
        print("Le just prix est plus haut")
 +
    if nombre > prix:
 +
        print("Le juste prix est plus bas")
 +
    if nombre == prix:
 +
        print("Félicitations, vous avez trouvé le juste prix {} en {} essais, votre score est {} !".format(prix, tentatives, int(score / tentatives)))
 +
        break
 +
print("Partie terminée")
 +
 
 +
</pre>
 +
*2- Générateur des nombres de la suite de Fibonacci
 +
Suite Fibonacci Python
 +
 
 +
La série mathématique connue sous le nom de suite de Fibonacci a été l’une des questions informatique les plus populaires. Essentiellement, vous commencez avec deux nombres, de préférence 0 et 1, et vous les ajoutez pour créer votre troisième nombre de Fibonacci. Ensuite, il suffit d’additionner la somme et l’avant-dernier terme de Fibonacci pour générer le suivant.
 +
Ce qui donne :
 +
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987...
 +
Pour réaliser la suite de Fibonnaci, demandez la position du nombre à l’utilisateur puis générez la suite jusqu’à ce nombre. Une fois généré, vous pouvez afficher le nombre correspondant à l’utilisateur. Vous pouvez aller plus loin et montrer à l’utilisateur la série entière jusqu’à ce point.
 +
C’est l’un des meilleurs projets Python pour s’initier au concept de la fonction récursive.
 +
Voici l’exemple d’une implémentation basique d’un générateur de nombres de la suite de Fibonacci’ :
 +
<pre>
 +
nombres = int(input("Entrez la quantité de nombres à afficher : "))
 +
a = 0
 +
b = 1
 +
total = 0
 +
print("Les {0} premiers nombres de la suite de Fibonacci sont :".format(nombres), end = " ")
 +
for _ in range(nombres):
 +
  print(total, end = " ")
 +
  a = b
 +
  b = total
 +
  total = a + b
 +
</pre>
 +
Ou de manière récursive :
 +
<pre>
 +
nombres = int(input("Entrez la quantité de nombres à afficher : "))
 +
def fibonacci_recursive(n):
 +
  if n <= 1:
 +
      return n
 +
  else:
 +
      return fibonacci_recursive(n - 2) + fibonacci_recursive(n - 1)
 +
print("Les {0} premiers nombres de la suite de Fibonacci sont :".format(nombres), end = " ")
 +
for i in range(nombres):
 +
    print(fibonacci_recursive(i), end = " ")
 +
</pre>
 
}}<!--************** Fin Fiche Didactique Explicitations ******************* -->
 
}}<!--************** Fin Fiche Didactique Explicitations ******************* -->
 
  
 
= {{Widget:Erreurs-confusions-Fiche}} =
 
= {{Widget:Erreurs-confusions-Fiche}} =
Ligne 156 : Ligne 211 :
  
 
{{@}} '''Erreur: Croire que'''
 
{{@}} '''Erreur: Croire que'''
* .........................................
+
* Le pas d'une boucle est toujours obligatoire : on peut dans une boucle mentionner le pas comme ne pas le mentionner.
* .........................................
+
* Le pas d'une boucle est toujours égal à 1 : un pas d'une boucle peut avoir n'importe quelle valeur.
 +
* Le pas d'une boucle est toujours positif : le pas peut avoir une valeur positive (on parle dans ce cas d'incrémentation) comme il peut avoir une valeur négative (on parle dans ce cas de décrémentation).
  
 
{{@}} '''Confusion possible ou glissement de sens'''
 
{{@}} '''Confusion possible ou glissement de sens'''
* Confusion entre [[....... - ........]]
+
* Confusion entre [[Tuple - Liste]] : la première est une structure de données non modifiable alors que la deuxième est modifiable (on peut ajhouter ou supprimer un élément).
* Confusion entre [[....... - ........]]
+
* Confusion entre [[Tableau - Liste]] : les éléments d'un tableau doivent être homogènes (ils ont le même type) alors que les éléments d'une liste peut être hétérogènes (de typs différents).
  
 
{{@}} '''Erreur fréquente''':  
 
{{@}} '''Erreur fréquente''':  
* ....................
+
* Quand on fait de la programmation avec le langage Python, on a tendance à oublier que la saisie a un type par défaut qui est chaînes de caractères. De ce fait, il ne faut pas oublier de faire appel aux fonctions de conversions si on veut les données en entrée avec un autre type. Sinon, ça va générer des erreurs.
  
 
}}<!-- ************** Fin Fiche Didactique Conceptions ********************* -->
 
}}<!-- ************** Fin Fiche Didactique Conceptions ********************* -->
Ligne 177 : Ligne 233 :
 
<!-- ************ Commercez les modifications *********************-->
 
<!-- ************ Commercez les modifications *********************-->
  
* [[..................]]?
+
* [[Pour manipuler des éléments, quelle structure de données utiliser ?]]?
* [[..................]]?
+
* [[Pour faire un traitement répétitif, comment choisir entre les deux structures répétitives ]]?
* [[..................]]?
+
 
  
 
}}<!-- ******** Fin Fiche Didactique Questions ******************* -->
 
}}<!-- ******** Fin Fiche Didactique Questions ******************* -->
Ligne 195 : Ligne 251 :
 
<!-- ****************** Commercez les modifications **************************  -->
 
<!-- ****************** Commercez les modifications **************************  -->
  
* ..................                                               
+
* Avant de démarrer le cours, il faudrait mieux commencer par une activité simple, un questionnaire par exemple, contenant quelques mots clés pour que les apprenants soient familiarisés avec d'une façon souple.
:* .................
+
 
* ..................                                                  
+
* Pour résoudre les exercices, il est déconseillé de donner rapidement la réponse. Au contraire, inciter les apprenants à utiliser les trois formes de boucles pour qu'ils dégagent tous seuls la solution adéquate                                                  
:* .................                                               
+
                                         
  
 
}}<!-- ************************* Fin Idées-Enseignement ********************** -->
 
}}<!-- ************************* Fin Idées-Enseignement ********************** -->
 
  
 
== {{Widget:Aides et astuces-Fiche}} ==
 
== {{Widget:Aides et astuces-Fiche}} ==
Ligne 212 : Ligne 267 :
 
<!-- ****************** Commercez les modifications **************************  -->
 
<!-- ****************** Commercez les modifications **************************  -->
  
* ..................                                               
+
* Pour faire de la programmation avec Python, il y a pplusieurs façons :
:* .................
+
:*EDI en ligne comme :
* ..................                                               
+
  -[https://www.onlinegdb.com/online_python_compiler OnlineGDB]   
:* .................                                               
+
  -[https://www.programiz.com/python-programming/online-compiler/ Programiz]                                     
 
+
:*EDI installables sur PC :   
 +
  -[https://www.jetbrains.com/pycharm/ PyCharm]
 +
  -[https://thonny.org/ Thonny] 
 +
:*EDI installables sur smartphones :                                           
 +
  -[https://play.google.com/store/apps/details?id=ru.iiec.pydroid3&hl=en_US&gl=US Pydroid 3]
 +
  -[https://play.google.com/store/apps/details?id=com.creativeide.niyko.creativeide&hl=en&gl=US Creative IDE3]
 
}}<!-- ************************* Fin Astuces-Enseignement ********************** -->
 
}}<!-- ************************* Fin Astuces-Enseignement ********************** -->
  
Ligne 227 : Ligne 287 :
 
<!-- ****************** Commercez les modifications ************-->
 
<!-- ****************** Commercez les modifications ************-->
  
:* ..................
+
:* [https://didactique.info/formation/course/view.php?id=465 Cours sur didactique.info]
:* ..................
+
:* [https://courspython.com/introduction-python.html Cours (lien externe)]
:* ..................
+
:* [https://forms.gle/UXtHT3RT9779AFe66 Quizz]
  
 
}}<!-- ************ Fin Liens Education ********************** -->
 
}}<!-- ************ Fin Liens Education ********************** -->
Ligne 243 : Ligne 303 :
 
<!-- ****************** Commercez les modifications *********************-->
 
<!-- ****************** Commercez les modifications *********************-->
  
* ..................                                               
+
* Henri G., Programmer en Python, Département d’Informatique – Faculté des Sciences de Luminy – Université d’Aix-Marseille                                               
* ..................
+
                                                  
* ..................                                               
 
* ..................                                                  
 
  
 
}}<!-- ************* Fin Fiche Didactique Bibliographie *************** -->
 
}}<!-- ************* Fin Fiche Didactique Bibliographie *************** -->
  
 
{{Widget:Fiche-Conceptuelle-Bas}}
 
{{Widget:Fiche-Conceptuelle-Bas}}

Version actuelle datée du 11 janvier 2023 à 14:42


Autres Fiches Conceptuelles
Posez une Question


(+)

Target Icon.pngVotre Publicité sur le Réseau Target Icon.png

Carte conceptuelle Python

Puce-didaquest.png Traduction


More-didaquest.png Traductions


Puce-didaquest.png Définition

Domaine, Discipline, Thématique


More-didaquest.png Justification


Définition écrite


  • Python c'est quoi?

Python est un langage de programmation inventé par Guido van Rossum. La première version de python est sortie en 1991.

Python est un langage de programmation interprété, c'est-à-dire qu'il n'est pas nécessaire de le compiler avant de l'exécuter. Si vous avez déjà touché un peu à la programmation, vous verrez que ce langage possède une certaine poésie. Les programmeurs s'amusent souvent à trouver la manière la plus élégante et efficace d'écrire une suite d'instructions.


  • Que fait Python?

Python est à la fois simple et puissant, il vous permet d'écrire des scripts très simples et grâce à ses nombreuses bibliothèques, vous pouvez travailler sur des projets plus ambitieux.

- Web: Aujourd'hui python combiné avec le framework Django est un très bon choix technologique pour des gros projets de sites internet.

- Système: Python est également souvent utilisé par les admin système pour créer des tâches dites répétitives ou simplement de maintenance. D'ailleurs si vous voulez créer des applications java en codant en python, c'est possible grâce au projet Jython.


More-didaquest.png Initiation au langage python - Historique (+)


Définition graphique


Ing-connaissance.png Carte conceptuelle






Puce-didaquest.png Concepts ou notions associés


More-didaquest.png Initiation au langage python - Glossaire / (+)



Puce-didaquest.png Exemples, applications, utilisations

  • 1- Le juste prix :

Le juste prix projet python débutant Ce premier projet est un jeu amusant pour les débutants connu de tous. Le programme génère un prix rond aléatoire. Le but pour l’utilisateur est de deviner le prix. Chaque fois que l’utilisateur se trompe, l’ordinateur lui dit si c’est plus ou moins que le prix qu’il a donné. À chaque aide de l’ordinateur, le score final atteignable par le joueur baisse.

Le but du juste prix est de deviner un nombre entier choisi aléatoirement par Python. Écrivez un script qui attribue un nombre à une variable. Dans une boucle, demandez un input à l’utilisateur et informez le joueur si le nombre entré est égale, plus grand ou plus petit que le juste prix.

En réalisant ce petit script, vous apprendrez à :

saisir des entrées clavier par un utilisateur créer des fonctions pour valider que le nombre entré est bien un nombre entier comparer une variable de référence (le prix) avec une autre variable calculer la différence entre deux nombres

import random
prix = random.randint(1, 10)
score = 100
tentatives = 0
print("Devinez le juste prix ! Le prix est un nombre compris entre 1 et 10 inclus.")
while True:
    nombre = int(input())
    tentatives += 1
    if nombre < prix:
        print("Le just prix est plus haut")
    if nombre > prix:
        print("Le juste prix est plus bas")
    if nombre == prix:
        print("Félicitations, vous avez trouvé le juste prix {} en {} essais, votre score est {} !".format(prix, tentatives, int(score / tentatives)))
        break
print("Partie terminée")

  • 2- Générateur des nombres de la suite de Fibonacci

Suite Fibonacci Python

La série mathématique connue sous le nom de suite de Fibonacci a été l’une des questions informatique les plus populaires. Essentiellement, vous commencez avec deux nombres, de préférence 0 et 1, et vous les ajoutez pour créer votre troisième nombre de Fibonacci. Ensuite, il suffit d’additionner la somme et l’avant-dernier terme de Fibonacci pour générer le suivant. Ce qui donne : 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987... Pour réaliser la suite de Fibonnaci, demandez la position du nombre à l’utilisateur puis générez la suite jusqu’à ce nombre. Une fois généré, vous pouvez afficher le nombre correspondant à l’utilisateur. Vous pouvez aller plus loin et montrer à l’utilisateur la série entière jusqu’à ce point. C’est l’un des meilleurs projets Python pour s’initier au concept de la fonction récursive. Voici l’exemple d’une implémentation basique d’un générateur de nombres de la suite de Fibonacci’ :

nombres = int(input("Entrez la quantité de nombres à afficher : "))
a = 0
b = 1
total = 0
print("Les {0} premiers nombres de la suite de Fibonacci sont :".format(nombres), end = " ")
for _ in range(nombres):
  print(total, end = " ")
  a = b
  b = total
  total = a + b

Ou de manière récursive :

nombres = int(input("Entrez la quantité de nombres à afficher : "))
def fibonacci_recursive(n):
   if n <= 1:
       return n
   else:
       return fibonacci_recursive(n - 2) + fibonacci_recursive(n - 1)
print("Les {0} premiers nombres de la suite de Fibonacci sont :".format(nombres), end = " ")
for i in range(nombres):
    print(fibonacci_recursive(i), end = " ")

(+)


Puce-didaquest.png Erreurs ou confusions éventuelles



Puce-didaquest.png Questions possibles



Puce-didaquest.png Liaisons enseignements et programmes

Idées ou Réflexions liées à son enseignement



Aides et astuces



Education: Autres liens, sites ou portails




Puce-didaquest.png Bibliographie