Python: "Des exécutions conditionnelles aux fonctions"

De TravauxIndse
Version datée du 14 juin 2018 à 07:21 par Xavier.gillard@indse.be (discussion | contributions) (→‎Les classes)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Participants à la programmation en 6gt1

  • Gillard Xavier
  • Quoirin Thomas

Objectifs

  • Approfondissement du langage python
  • Découvrir la base du langage de programmation pour mes études de l'an prochain.

    Introduction

    Tout d'abord pour que vous compreniez Python, nous allons vous proposer deux liens avec lesquels vous pourriez comprendre les bases de ce programme.

    https://openclassrooms.com/courses/apprenez-a-programmer-en-python

    https://inforef.be/swi/download/apprendre_python3_5.pdf

    Ce que nous avons appris au cours de l'année

      Quoirin Thomas

    Les exécutions conditionnelles

    Ce sont des fonctions qui prennent en compte certaines conditions Exemple:

    a=150
    if(a>100):
        print ("a depasse la centaine")
    

    Analysons le programme par ligne de code :

    1. une variable est égale à 150
    2. si cette variable est supérieure à 100
    3. imprimer "a dépasse la centaine.

    Dans cet exemple-ci a dépasse 100 donc "a dépasse la centaine" sera affiché dans le cas contraire rien ne sera affiché à l'écran.

    Les instructions en boucle:"WHILE"

    Les boucles permettent d'afficher une suite de nombres qui ont un lien avec le nombre précédent

    Un exemple simple: Afficher les nombres de 1 à 5

    a=0
    while(a<6):
             a=a+1
             print(a)
    

    Le type float consiste à intégrer des nombres décimals dans un programme un exemple 8.5

    le type string qui se constitue à inclure des phrases dans un programme exemple: "je m'appelle Thomas" on utilise les guillemets pour introduire des phrases

    Les CHAINES

    Une chaine est une série de lettres ou de nombres les uns à la suite des autres Exemple:

    ch="Thomas"
    print(ch[0],ch[3])
    T m
    

    Fonctions prédéfinies "INPUT" et "INT"

    la fonction input est définie dans le but d'interagir avec l'utilisateur en faisant participer l'utilisateur qui peut écrire ce qu'il veut lors du lancement du programme

    Exemple:

    nom=input("entrez votre nom : ")
    print("Bonjour,",prenom)
    

    La fonction 'int' a les mêmes caractéristiques que la fonction 'input' mais permet d'entrer des chiffres à la place des lettres

    Importation de module

    Un module est un programme qui comprend différentes fonctions, un module utile est le module 'math' qui permet d'importer dans python la fonction racine (sqrt) par exemple.

    Pour importer un module il suffit de mettre au début du programme from nom du module import* Il y a aussi le module 'turtle' qui existe. Celui-ci permet de tracer des graphiques sur python mais je ne vais pas m'attarder la dessus car ce n'est pas le plus important.

    Définition de fonction

    Fonction sans paramètre

    Prenons comme exemple la fonction table: on définit tout d'abord une fonction qui va nous afficher les 10 premiers chiffres de la table de 6

    def table6():
          n=1
          while n<11:
                print(n*6)
                n=n+1
    

    Ce programme fonctionne comme une simple boucle mais permet de faire plusieurs programmes définis à la fois

    Fonction avec paramètre

    La fonction avec paramètre fonctionne comme une fonction sans paramètre mais permet de faire un programme plus global. Reprenons un programme généralisé avec les tables


    def table(base):
         n=1
         while n<11:
               print(n*base, end=' ')
               n=n+1
    

    Maintenant il faut définir la base et la noter en fin de programme

    table(6)
    

      Gillard Xavier

    Pour le moment j'ai vu exactement la même chose que Thomas mais quand même un peu plus mais sur le lien envoyer ci-dessus. [1]

    J’ai commencé les classes qui sont un peu plus compliquées selon moi.

    Les classes

    Par convention pour nommer une classe nous n’utilisons pas de souligné pour séparer les mots mais une majuscule au début de chaques nouveaux mots comme : MaClasse

    c’est vrai il faut aussi definir que c’est une nouvelle fonction pour se faire utiliser le mot-clé : class

    Ces classes on va les definir pour avoir plus simple plus tard dans des fonctions futures.

    Petit exemple de classe simple :

    class Personne :
    	def __init__(self):
    		self.nom = « Dupont »
    		self.prenom = « Jean »
    		self.age = 33
    		self.lieu_residence = « Paris »
    

    Grace à cela nous pouvons avoir facilement le nom et les autres infos. Par exemple:

    >>> jean = Personne()
    >>> jean.nom
    "Dupont"
    >>> jean.prenom
    "Jean"
    >>> jean.age
    33
    >>> jean.lieu_residence
    "Paris"
    >>>
    

    Mais vous pouvez aussi faire cela de manière plus intelligente en pouvant le modifier toi même comme ceci:

    class Personne:
         def __init__(self, nom, prenom):
              self.nom = nom
              self.prenom = prenom
              self.age = 33
              self.lieu_residence = "Paris"
    

    Et ici nous obtenons:

    >>> bernard = Personne("Micado", "Bernard")
    >>> bernard.nom
    "Micado"
    >>> bernard.prenom
    "Bernard"
    >>> bernard.age
    33
    >>>
    

    On peut aussi définir des attributs dans la classe comme ceci:

    class Compteur:
         objets_crees = 0
         def __init__(self):
              compteur.objets_crees += 1
    

    On peut aussi avoir des classes avec plusieurs fonctions comme ici:

    class TableauNoir:
         def __init__(self):
              self.surface = ""
         def ecrire(self,message_a_ecrire):
              if self.surface != "":
                   self.surface += "\n"
              self.surface += message_a_ecrire
         def lire(self):
              print(self.surface)
         def effacer(self):
              self.surface = "" 
    

    Et on obtient

    >>>tab = TableauNoir()
    >>>tab.lire()
    >>>tab.ecrire("Salut tout le monde.")
    >>>tab.ecrire("La forme ?")
    >>>tab.lire()
    Salut tout le monde.
    La forme ?
    >>>tab.effacer()
    >>>tab.lire()
    >>>
    

    Points forts/faibles

      Quoirin Thomas

    Point fort

    Les boucles

    Point faible

    Les listes

      Gillard Xavier

    Point fort

    Je n'ai pas réellement de point fort je me débrouille un peu dans tout.

    Point faible

    Tout comme Thomas je suis moins bon dans les listes.

    Examen

    Nous ferons l'examen à deux durant les deux heures.