Le « FizzBuzz » est à l’origine un jeu pour apprendre aux enfants le principe de la division. Les enfants doivent énoncer les chiffres dans l’ordre et remplacer le nombre par « Fizz » s’il est divisible par 3 ou « Buzz » s’il est divisible par 5.
Et en quoi ça me concerne ?
Dans le monde des développeurs, ce jeu est repris sous forme de test. Lors d’un entretien d’embauche, ce test peut être proposé parmi d’autres tests techniques. Il permet à l’employeur de vérifier si, sous environ 15 minutes, le candidat est capable d’écrire ce programme dans le langage demandé.
L’énoncé est simple : Écrivez un programme qui affiche tous les nombres entre 1 et 100 avec les exceptions suivantes : Il affiche : – « Fizz » à la place du nombre si celui-ci est divisible par 3. – « Buzz » à la place du nombre si celui-ci est divisible par 5 et non par 3. – « FizzBuzz » à la place du nombre si celui-ci est divisible à la fois par 3 et par 5.
Pour réussir, il faut utiliser l’opérateur modulo « % » qui renvoie le reste de la division d’un entier par un autre. Plus simplement si un chiffre est divisible par un autre, le reste est nul :
10 % 2 => 0 (divisible)
alors que
5 % 2 => 1 (non divisible)
Je vous laisse chercher le programme en JavaScript… Avec un peu de recherche, je suis sure que vous allez trouver la solution !!! 😉
N’allez pas plus loin… Entraînez-vous avant !
Allez je partage avec vous ma solution en JavaScript…
let i=1;
while (i <= 100) {
if ((i % 3 === 0) && (i % 5 === 0)) {
console.log("FizzBuzz");
} else if (i % 3 === 0) {
console.log("Fizz");
} else if (i % 5 === 0) {
console.log("Buzz");
} else {
console.log(i);
}
i++;
}
Les langages HTML et CSS permettent d’obtenir une page web statique. Le langage CSS apporte la mise en forme (le visuel) de la page. Le langage JavaScript va ensuite permettre de dynamiser les pages web.
Mais qu’est ce que c’est ?
Le langage JavaScript a été inventé en 1995 et permet de dynamiser de façon simple les pages Web. En effet, ces dernières étaient jusqu’alors très simples (voire statiques). L’ampleur qu’a alors prise le langage Javacript est telle qu’il est devenu incontournable dans le développement de l’affichage des pages Web sur les navigateurs (c’est ce que l’on nomme développement front-end). Il est aussi très présent dans le développement côté serveur (ou développement back-end), côté mobile ou logiciels. La communauté autour de ce langage est aujourd’hui très importante, ce qui permet d’accéder à de nombreuses nouveautés (fonctionnalités, aides, etc.).
Après avoir étudié Python, JavaScript me semble très facile… C’est principalement la syntaxe qui change. Il va falloir que je me réhabitue ! 😉
Les changements par rapport à Python
La première nouveauté pour moi c’est que JavaScript utilise des blocs de code obligatoirement mis entre accolades » { } « .
Il faut aussi penser à mettre un point-virgule » ; » à la fin de chaque ligne définissant une consigne.
Concernant les variables, on peut déclarer 2 types de variables :
– les variables constantes : elles ne changent jamais tout au long du programme et ne s’affichent pas.
const variable ;
– les variables « standard » : leur valeur peut être modifiée au cours du programme.
let variable ;
Et il ne faut pas oublier que lors de la programmation, il est très important de déclarer une variable vide pour pouvoir ensuite l’incrémenter.
let variable = " " ;
// ... suite du programme
variable = variable + 1 ;
// ... suite du programme
L’affichage des variables est aussi différent.
Pour exprimer une chaîne de caractère avec une variable à l’intérieur, la syntaxe se fait avec des accents graves » ` ` » puis la variable est mise sous la forme « ${variable} « .
const country = "France" ;
console.log(`Je vis en ${country}`);
Autre grande différence avec Python : JavaScript permet d’affichage d’une boite de dialogue dans un navigateur web.
Il existe des instructions spécifiques pour le faire : « prompt( ) » et « alert( ) ».
Je poursuis mon apprentissage dans l’optique de devenir développeuse web… Et pour ça, j’ai changé de langage ! En effet, pour pouvoir coder les sites web il faut impérativement que je connaisse les langages adaptés au web : notamment HTML et CSS.
Langage HTML
Le HTML (HyperText Markup Language ou Langage de balisage d’hypertexte) a été créé en même temps que le World Wild Web, dans les années 1990. Ce n’est pas un langage de programmation. Il permet d’écrire du texte en hypertexte. Ainsi que de mettre en forme du contenu grâce à des balises. Ces balises définissent où mettre des titres, des sous-titres, du texte en gras. Elles définissent aussi où ajouter des éléments interactifs (photos, vidéos, liens, etc.). La visualisation d’une page écrite en HTML se fait uniquement via un navigateur. Après de nombreuses évolutions, ce langage de balisage propose depuis 2014 une version plus aboutie : le HTML5.
Langage CSS
Le CSS (Cascading Style Sheets ou Feuilles de style en cascade) est apparu en même temps que le HTML. C’est une feuille de style qui définit comment les éléments de la page HTML doivent être affichés sur l’écran (police de caractère, couleur, alignement, etc.).
Vers 2010, le langage évolue vers sa 3ème version : CSS3.
Le CSS est complémentaire au HTML, ils fonctionnent de concert. C’est pour cette raison qu’il est important de les étudier en même temps. Il est bon de noter que ces 2 langages sont améliorés et approuvés au fil de temps par le W3C (World Wild Web Consortium, thème que j’aborderai dans un prochain post !).
Leur apprentissage
Pour ce faire, j’ai suivi un cours sur OpenClassrooms : Apprenez à créer votre site web avec HTML5 et CSS3 Dans ce cours, j’ai appris les fondamentaux pour créer une page web. Et j’ai créé un CV fictif pour mettre en application ce nouvel apprentissage : celui de Marie Curie ! 😉 Ce cours permet de donner de bonnes bases sur ces deux langages. Il est simple et permet de mettre rapidement en application ce qu’on a appris.
Mon conseil
Lors de l’apprentissage de ces 2 langages, l’important est de prendre des notes. En effet, lorsqu’on débute, il est difficile de se souvenir de toutes les balises. Or l’utilisation et le positionnement de ces balises sont très importants pour avoir un code lisible et structuré. Il est impératif d’avoir un dossier commun contenant le fichier .html, .css, les images et polices spéciales. Sinon la page html ne s’affichera pas correctement !
Je vous mets mes deux codes qui permettent d’afficher le CV de Marie Curie que j’ai réalisé.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="stylecv.css" />
<title>Mon CV - Marie Curie</title>
</head>
<body>
<nav class="lisere">
<p>
</p>
</nav>
<header>
<a href="marie_curie.jpeg"><img src="marie_curie_mini.jpg" class="image" alt="portrait de marie curie" title="cliquez pour agrandir la photo !" /></a> <!-- image-->
<div class="titre"> <!-- titre-->
<h1>Marie Curie</h1>
1867-1934<br/>
Première femme a avoir reçu le prix Nobel de Chimie pour ses travaux sur le polonium et le radium.
</div>
</header>
<section id="corps">
<div class="experience">
<h2>Son Expérience</h2>
<ul>
<li><strong>1893</strong> : Obtention de la licence en Sciences Physiques</li>
<li><strong>1894</strong> : Obtention de la licence en Sciences Mathématiques</li>
<li><strong>1896</strong> : Première au concours d'agrégation pour l'enseignement des jeunes filles - section Mathématiques</li>
<li><strong>1897-1903</strong> : Thèse intitulée Recherches sur les substances radioactives</li>
<li><strong>1903</strong> : Prix Nobel de Physique (reçu conjointement avec Pierre Curie, son mari, et Henri Becquerel)</li>
<li><strong>1911</strong> : Prix Nobel de Chimie (<a href="https://fr.wikipedia.org/wiki/Marie_Curie#/media/Fichier:Marie_Sk%C5%82odowska-Curie's_Nobel_Prize_in_Chemistry_1911.jpg">diplôme accompagnant le prix Nobel</a> )</li>
</ul>
</div>
<div class="competence">
<h2>Ses Compétences</h2>
<ul>
<li>Mathématiques</li>
<li>Physique</li>
<li>Chimie</li>
<li>Découverte du polonium</li>
<li>Découverte du radium</li>
<li>Liste non exhaustive !</li>
</ul>
</div>
<div class="formation">
<h2>Sa Formation</h2>
<ul>
<li><strong>1883</strong> : diplôme de fin d’études secondaires avec la médaille d’or</li>
<li><strong>1891</strong> : études de Physique à la Faculté des Sciences de Paris</li>
</ul>
</div>
</section>
</body>
</html>
/* polices spéciales */
@font-face
{
font-family: "gothic";
src: url("Elementary_Gothic.otf") format("opentype"),
url("Elementary_Gothic.ttf") format("truetype");
}
@font-face
{
font-family: "summertime";
src: url("SummertO.ttf") format("truetype");
}
/* En Tête */
header
{
display: flex;
flex-direction: row-reverse;
justify-content: center;
align-items: center;
height: 10%;
max-width: 90%;
position: relative;
left: 10%;
}
.image /* image avec bordure et ombre */
{
margin: auto;
border: 6px navy double;
box-shadow: 8px 4px 6px blue;
width: 60%;
height: 60%;
}
.titre
{
margin: auto;
text-align: center;
color: gray;
font-size: 1em;
font-style: italic;
}
h1 /* titre de couleur différente, centré et avec police spéciale */
{
font-family: "gothic", Impact, Georgia, Verdana, sans-serif;
font-weight: bold;
color : gray;
text-align: center;
}
/* Liseré */
.lisere
{
position: absolute;
left: 1px;
top: 1px;
width: 10%;
height: 100%;
background: url("fondchimie.png") repeat-y center;
border-right: 1px teal solid;
border-radius: 6px/8px;
}
/* Corps de Texte */
body
{
font-family: Arial, "Times New Roman", sans-serif;
}
#corps
{
display: flex;
justify-content: flex-start;
align-items: stretch;
max-width: 90%;
position: relative;
left: 10%;
}
div
{
margin: top;
width: auto;
min-width: 33%;
}
ul /*ne pas afficher les puces*/
{
list-style-type: none;
}
h2 /* mise en forme titre h2*/
{
font-family: "summertime", Impact, sans-serif;
font-size: 2em;
font-style: italic;
color: teal;
text-align: center;
}
/* style des liens */
a
{
color: blue;
}
a:hover
{
text-decoration: underline;
color: aqua;
}
/* affichage sur des écrans plus petits que 1024px */
@media screen and (max-width: 1024px)
{
.lisere
{
display: none; /* suppression du liseré */
}
#corps
{
display: flex;
flex-direction: column;
}
}
Aujourd’hui, j’ai enfin fait la découverte et le montage du Raspberry Pi 4B que j’ai eu à Noël !
Et ce ne fut pas une mince affaire… 😉
Heureusement que YouTube existe…
En effet, dans mon kit de démarrage, il n’y avait pas de notice de montage. Aïe, pour une débutante la tâche me semblait ardue !
J’ai donc cherché sur YouTube une vidéo me permettant de monter mon Raspberry Pi pour pouvoir m’en servir. J’ai alors trouvé une super vidéo de GuiPoM qui teste le même kit de démarrage que j’ai eu.
Il donne beaucoup d’explications et fait un comparatif complet avec son expérience sur le Raspberry Pi 3. a noter que pour les plus impatients, vous pouvez aller directement à la 27ème minute pour commencer le montage !
J’ai donc suivi scrupuleusement ses conseils et j’ai monté mon Raspberry Pi rapidement.
Me voici donc avec mon « nouvel ordinateur » branché sur la télé… 😉
Et c’est parti pour le paramétrage du Raspberry Pi…
L’avantage de ce kit de démarrage c’est que sur la carte SD incluse, tout est déjà installé dessus. Je n’ai donc pas eu besoin de télécharger le système d’exploitation (Raspbian) ni les éléments de base (comme, par exemple, la suite Open Office). J’ai donc suivi les instructions de démarrage qui permettent d’initialiser l’ordinateur… Et après une mise à jour et un redémarrage, je peux enfin l’utiliser !
Direction l’environnement mis en place spécialement pour Python sur le Raspberry Pi : Thonny.
Et pour bien démarrer, quoi de plus normal que de commencer avec un « Hello World » ?
C’est chose faite…
Je peux enfin dire que j’ai bien inauguré mon Raspberry Pi !!! 😀
Ça y est, c’est fait… Je viens de terminer mon programme du jeu de roulette en Python orienté objet ! Et je peux vous dire que je suis vraiment contente d’y être arrivée… 😀
En détail, ça donne quoi ?
J’ai donc créé deux objets : – l’objet « joueur » qui est défini par son pseudo, son porte-monnaie (l’argent qu’il a au départ), le numéro sur lequel il mise et la somme qu’il mise sur ce numéro. – l’objet « jeu » qui est défini par un numéro gagnant et un calcul des gains.
Pour simplifier la visualisation de ces objets, j’ai créé 2 fichiers distincts enregistrés dans le même dossier que le fichier avec mon programme final (ce qui permet d’appeler plus facilement ces fichiers).
L’objet « Joueur »
Pour chaque caractéristique de mon objet « Joueur », j’ai défini une fonction (ou méthode) qui sera utilisée dans le programme final. Je me suis servi du code que j’avais déjà créé lors de mon premier programme : j’en ai extrait les éléments nécessaires et les ai amélioré pour un meilleur fonctionnement du programme.
Voici le code de mon objet « Joueur » :
class Joueur:
"""Classe définissant un joueur de roulette caractérisé par :
- son pseudo ;
- son porte monnaie ;
- un numéro misé
- une somme misée """
def __init__(self, pseudo, porte_monnaie, numero_mise, somme_misee):
"""Constructeur de notre classe"""
self.pseudo = pseudo
self.porte_monnaie = porte_monnaie
self.numero_mise = numero_mise
self.somme_misee = somme_misee
def nom_joueur(self, pseudo):
"""Méthode permettant de vérifier que le nom du joueur n'est pas un chiffre et de l'afficher """
NomCorrect = False
while NomCorrect == False :
self.pseudo = input("Quel est votre nom ?")
#self.pseudo = 'Anonyme' if len(self.pseudo) == 0 else self.pseudo
try:
int(self.pseudo) != False
except ValueError:
print("Bienvenue {} sur la table de la Roulette du Zcasino !".format(self.pseudo))
NomCorrect = True
else :
print("Il y a une erreur, êtes vous certain de votre frappe ?")
def argent_joueur(self, porte_monnaie):
"""Méthode permettant de vérifier que le joueur a de l'argent pour jouer"""
Argent = False
while Argent == False :
self.porte_monnaie = input("\nAvec quelle somme d'argent souhaitez vous jouer ? ")
try:
int(self.porte_monnaie) != False
except ValueError:
print("Il y a une erreur, êtes vous certain de votre frappe ?")
else :
self.porte_monnaie = int(self.porte_monnaie)
if self.porte_monnaie < 1 :
print("Vous ne pouvez pas jouer sans argent !")
else :
Argent = True
def num_joueur(self, numero_mise):
"""Méthode permettant de vérifier que le joueur a bien misé sur un numéro de la roulette"""
Numero = False
while Numero == False :
self.numero_mise = input("\nSur quel numéro souhaitez vous miser (entre 0 et 49) ? : ")
try:
int(self.numero_mise) != False
except ValueError:
print("Il y a une erreur, êtes vous certain de votre frappe ?")
else :
self.numero_mise = int(self.numero_mise)
if self.numero_mise < 0 or self.numero_mise > 49:
print("Le numéro choisi n'existe pas, veuillez en choisir un autre !")
else :
Numero = True
def mise_joueur(self, somme_misee):
""" Methode permettant de vérifier que le joueur mise l'argent qu'il a dans son porte monnaie """
Mise = False
while Mise == False :
self.somme_misee = input("\nQuelle somme souhaitez vous miser sur ce numéro ? : ")
try:
int(self.somme_misee) != False
except ValueError :
print("Etes vous certain de votre frappe ?")
else :
self.somme_misee = int(self.somme_misee)
if self.somme_misee < 0:
print("Vous ne pouvez pas miser un nombre négatif !")
elif self.somme_misee > self.porte_monnaie:
print("Vous n'avez pas assez d'argent !")
else :
Mise = True
L’objet « Jeu »
Cet objet est plus simple, car il ne contient qu’une seule fonction : celle du calcul des gains. Il y a une petite particularité importante à prendre en compte : seule la variable « gain » est associée à l’objet. Lors de la rédaction de la fonction de l’objet, il n’y aura donc que cette variable qui sera nommée avec « self.~ ».
Voici le code de mon objet « Jeu »
class Jeu:
"""Classe définissant le jeu de la roulette caractérisé par :
- un numéro gagnant ;
- un gain rapporté """
def __init__(self, gagne, gain):
"""Constructeur de notre classe"""
self.gagne = gagne
self.gain = gain
import random
def num_gagnant(self, gagne):
"""Méthode permettant de selectionner le numéro gagnant """
self.gagne = random.randrange(50)
print("Le numéro gagnant est le numéro ", self.gagne)
import math
def gain_partie(self, gagne, somme_misee, numero_mise, gain):
"""Méthode permettant de déterminer le gain du joueur en fonction du numéro gagnant """
import math
if gagne != numero_mise :
if (self.gagne %2 == 0 and numero_mise %2 == 0) or (gagne %2 != 0 and numero_mise %2 != 0):
self.gain = math.ceil(somme_misee * 0.5)
print("\n Vous avez misé sur la bonne couleur, vous gagnez {} $".format(self.gain))
else:
print("\n Loupé, Vous venez de perdre votre mise !")
self.gain = -somme_misee
else:
self.gain = 3 * somme_misee
print("\n Votre gain est de 3 fois votre mise, soit {} $".format(self.gain))
Le programme final
J’ai ensuite remplacé dans mon programme initial tous les morceaux mis dans mes objets par l’appel des objets eux-mêmes. Là j’ai eu a me creuser les méninges, car un remplacement brut ne marche pas… 😉 Déjà, il faut bien penser à importer les 2 fichiers objets.
import ZCasino_jeu
import ZCasino_joueur
Ensuite, l’appel des objets et de ses fonctions doit être fait correctement. J’ai commencé par créer les variables et je les ai mises nulles au départ. Puis j’ai créé le « joueur1 » auquel j’ai attribué mon objet « Joueur » (récupéré depuis mon fichier).
# appel de variables 'nulles'
pseudo = 0
porte_monnaie = 0
numero_mise = 0
somme_misee = 0
# description du joueur
joueur1 = ZCasino_joueur.Joueur(pseudo, porte_monnaie, numero_mise, somme_misee)
Puis j’ai appelé les différentes fonctions du joueur. Il ne faut pas oublier d’attribuer les fonctions directement au « joueur1 » ! 😉
Lors du calcul des gains, j’ai ensuite créé la variable « gain » nulle pour pouvoir créer le système de calcul en appelant mon objet « Jeu » (via le fichier !).
# gains
gain = 0
jeu = ZCasino_jeu.Jeu(gagne, gain)
gain = jeu.gain_partie(gagne, joueur1.somme_misee, joueur1.numero_mise, gain)
Il reste ensuite à mettre à jour le porte-monnaie du « joueur1 ».
joueur1.porte_monnaie = joueur1.porte_monnaie + jeu.gain
print("Il vous reste donc {} $ pour continuer de jouer.".format(joueur1.porte_monnaie))
Et voila le programme est fait ! 😉
Le voici complet :
import os
import random
import math
import ZCasino_jeu
import ZCasino_joueur
# ****** programme du jeu de la roulette **********
print("Bienvenue au ZCasino, voici le jeu de la Roulette !")
# appel de variables 'nulles'
pseudo = 0
porte_monnaie = 0
numero_mise = 0
somme_misee = 0
# description du joueur
joueur1 = ZCasino_joueur.Joueur(pseudo, porte_monnaie, numero_mise, somme_misee)
pseudo = joueur1.nom_joueur(pseudo)
porte_monnaie = joueur1.argent_joueur(porte_monnaie)
# début du jeu
j=1
while j != 0 :
# numéro choisi par le joueur
numero_mise = joueur1.num_joueur(numero_mise)
# choisir sa mise
somme_misee = joueur1.mise_joueur(somme_misee)
print("\n Votre mise est de {} $ sur le numéro {} \n".format(joueur1.somme_misee, joueur1.numero_mise))
# lance la roulette
print("A vos jeux... La roulette est lancée... \n")
gagne=random.randrange(50)
print("Le numéro gagnant est le numéro ", gagne)
# gains
gain = 0
jeu = ZCasino_jeu.Jeu(gagne, gain)
gain = jeu.gain_partie(gagne, joueur1.somme_misee, joueur1.numero_mise, gain)
# argent restant au joueur
joueur1.porte_monnaie = joueur1.porte_monnaie + jeu.gain
print("Il vous reste donc {} $ pour continuer de jouer.".format(joueur1.porte_monnaie))
# possibilité de rejouer ou non
if joueur1.porte_monnaie == 0:
print("\nVous n'avez plus d'argent ! Au revoir et à bientôt au ZCasino ")
j=0
else:
r=input(" Voulez vous rejouer ? (O / N) ")
if r == "O" or r == "o" :
j=1
else:
print("Au revoir et à bientôt au ZCasino ")
j=0
os.system("pause") # met en pause le système Windows
Pour conclure
Voici une citation qui correspond tout à fait à mon état d’esprit après ma réussite.
Car oui, je suis fière d’avoir réussi cette étape ! 🙂
Devinez ce que le père Noël a déposé au pied du sapin… Un Raspberry Pi !
Qu’est ce que c’est ?
Le Raspberry Pi est ce qu’on appelle un nano-ordinateur. En effet, il est composé uniquement d’une carte mère sur laquelle il va falloir ajouter tous les composants, comme par exemple le boitier, le clavier, la souris, l’écran, etc. (il existe aussi de nombreux kits « tout en un » proposés pour débuter avec le Raspberry Pi !). Puis il faudra programmer cet ordinateur pour qu’il puisse fonctionner.
Le Raspberry Pi a été conçu dès 2006 puis amélioré par la Fondation Raspberry Pi (avec le soutien de l’Université de Cambridge et du fabricant de semi-conducteurs Broadcom) dès 2009. Il a été officiellement lancé en 2012. Son objectif est de rendre accessible l’informatique et d’encourager les jeunes à s’intéresser à la programmation informatique. En effet, le fait qu’il soit « nu », diminue considérablement le prix d’achat et le rend donc accessible à tous.
Que faire avec le Raspberry Pi ?
Il y a de nombreux sites qui proposent des idées de projets (dont le site officiel de Raspberry Pi !). Pour être très vaste, on peut citer les jeux vidéo (ou non !), un robot, un site web, de la musique, etc.
Alors, qu’est ce que je vais en faire ?
Dès que j’aurais fini mon apprentissage du Python (et de ses objets !), je vais me lancer dans la découverte de mon Raspberry Pi. Je n’ai pas encore fait le tour de tout ce qu’il est possible de faire, mais aujourd’hui j’en ferais bien un serveur web ou pourquoi pas quelque chose de plus pratique comme un arrosage automatique des plantes de mon balcon (car vous ne le savez peut-être pas, mais je n’ai pas du tout la main verte ! 😉 )… Je pense qu’en découvrant cet ordinateur je vais avoir de plus en plus d’idées !!!
Un petit plus…
En attendant, voici les premiers sites sur lesquels je suis tombée et qui fourmillent d’idées : – Le site officiel de Raspberry Pi et ses projets – Le site Français de Raspberry Pi et ses tutoriels – Korben et ses 60 idées – Le blog de Nouvelles Technologies et ses 10 projets pour débutants – Hitek et ses 10 idées cool
Allez, je me lance dans l’aventure de l’orienté objet en Python…
Mais qu’est ce que c’est ?
En Python (ainsi que dans d’autres langages), il est possible de faire des programmes dits « orientés objets ».
Pour cela, il faut définir une classe. C’est la représentation informatique d’un objet issu du monde réel.
L’exemple le plus simple pour comprendre est le cas d’une voiture.
On définit une classe « Voiture ». Les objets de cette classe contiennent des attributs ou caractéristiques : « Marque », « Couleur », « Moteur », « Nombre de roues », etc. Ainsi que des méthodes ou actions à effectuer : « Démarrer », « Accélérer », « Ralentir », etc.
Chaque objet sera ensuite défini selon ses attributs et ses méthodes, l’objet est alors une instance de la classe.
Nous pourrons donc définir des objets différents, par exemple : – la voiture de Jonathan, qui est de couleur rouge avec une vitesse de 30 km/h, – la voiture de Denis, qui est de couleur grise avec une vitesse de 50 km/h, – etc.
Comment coder un objet en Python ?
On définit en premier la « class ». Puis on ajoute un constructeur permettant qu’un certain nombre d’actions puissent être réalisées. Un constructeur n’est rien d’autre qu’une méthode, sans valeur de retour, qui porte un nom imposé par le langage Python : « __init__( ) ». Il peut avoir plusieurs paramètres, sachant qu’au minimum le paramètre « self » lui sera attribué. Puis on incrémente avec d’autres méthodes permettant de caractériser chaque action de l’objet.
class Voiture ():
def __init__(self, nom, couleur, vitesse):
self.nom = nom
self.couleur = couleur
self.vitesse = vitesse
def Avance(self):
print("La voiture {} de {} roule à {} km/h ".format(couleur, nom, vitesse))
Voiture1 = Voiture("Jonhatan", "rouge", 30)
Voiture2 = Voiture("Denis", "grise", 50)
Voiture1.Avance()
La voiture rouge de Jonhatan roule à 30 km/h