Différences entre versions de « Python-Turtle-Exemple »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(15 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{Python-Turtle-Online-NAV}}
 
{{Python-Turtle-Online-NAV}}
  
== Introduction ==
+
== Démarrer Turtle ==
 
Voici une petite série d'exemples Turtle dont la complexité du code augmente progressivement.  
 
Voici une petite série d'exemples Turtle dont la complexité du code augmente progressivement.  
  
Ligne 7 : Ligne 7 :
  
 
{{download-box|Démarrer Python Turtle en ligne|https://repl.it/languages/python_turtle}}
 
{{download-box|Démarrer Python Turtle en ligne|https://repl.it/languages/python_turtle}}
 +
 +
Avant de débuter le tracé graphique, point de départ de la tortue est celui ci:
 +
* Au centre de la zone de dessin
 +
* Tourné vers la droite
 +
 +
[[Fichier:Python-Turtle-Exemple-00b.png]]
  
 
== Dessiner une ligne ==
 
== Dessiner une ligne ==
Ligne 30 : Ligne 36 :
 
[[Fichier:Python-Turtle-Exemple-00a.png]]
 
[[Fichier:Python-Turtle-Exemple-00a.png]]
  
== Faire un carré ==   
+
A noter que la flèche en bout de ligne est la dite "tortue" et indique la direction dans laquelle est pointe.
 +
 
 +
Ce second exemple ci-dessous dessine deux sections de lignes avec une rotation de la tortue de 35 degrés sur la gauche.
 +
 
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
 
 +
t = turtle.Turtle()
 +
 
 +
t.forward( 50 )
 +
 
 +
# Tourner à gauche de 35 degrés
 +
t.left(35)
 +
# Avancer de 25 pixels
 +
t.forward( 25 )
 +
</syntaxhighlight>
 +
 
 +
[[Fichier:Python-Turtle-Exemple-00c.png]]
 +
 
 +
== Dessiner un carré ==   
 +
 
 +
Dessiner un carré se résume a parcourir 4 fois la même distance en effectuant une rotation de 90° entre chaque tronçon.
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
Ligne 56 : Ligne 83 :
 
[[Fichier:Python-Turtle-Exemple-00.png]]
 
[[Fichier:Python-Turtle-Exemple-00.png]]
  
== Faire un carré : syntaxe abrégée ==
+
== Dessiner un carré : syntaxe abrégée ==
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
Ligne 82 : Ligne 109 :
 
[[Fichier:Python-Turtle-Exemple-00.png]]
 
[[Fichier:Python-Turtle-Exemple-00.png]]
  
== faire un carré : avec plusieurs couleurs ==
+
== Dessiner un carré : avec plusieurs couleurs ==
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
Ligne 100 : Ligne 127 :
 
[[Fichier:Python-Turtle-Exemple-01.png]]
 
[[Fichier:Python-Turtle-Exemple-01.png]]
  
== Faire un carré : avec une fonction ==  
+
== Dessiner un carré : avec une fonction ==  
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
Ligne 120 : Ligne 147 :
  
 
[[Fichier:Python-Turtle-Exemple-02.png]]
 
[[Fichier:Python-Turtle-Exemple-02.png]]
 +
 +
== Dessiner une étoile ==
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
 +
t = turtle.Turtle()
 +
 +
for i in range(5): # répéter 5 fois
 +
    t.forward(50)
 +
    t.right(144)
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple-10.png]]
 +
 +
== Dessiner une étoile spiralée ==
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
 +
t = turtle.Turtle()
 +
 +
for i in range(20): # i de 0 à 19
 +
    t.forward(i * 10)
 +
    t.right(144)
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple-11.png]]
 +
 +
'''Note''': à chaque fois que l'on déplace la tortue vers l'avant d'une quantité différente. Comme {{fname|i}} varie de 0 à 19, la distance parcourue de par {{fname|forward}} à chaque itération sera de {{fname|i * 10}} soit la suite 0, 10, 20, 30, 40, ... 180, 190.
  
 
== SpiroGraphe simple ==   
 
== SpiroGraphe simple ==   
Ligne 142 : Ligne 203 :
 
faire_fleur()
 
faire_fleur()
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
Résultat attendu:
  
 
[[Fichier:Python-Turtle-Exemple-03.png]]
 
[[Fichier:Python-Turtle-Exemple-03.png]]
Ligne 160 : Ligne 223 :
 
done()
 
done()
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
Résultat attendu:
  
 
[[Fichier:Python-Turtle-Exemple-04.png]]
 
[[Fichier:Python-Turtle-Exemple-04.png]]
  
 
{{Python-Turtle-Online-TRAILER}}
 
{{Python-Turtle-Online-TRAILER}}

Version actuelle datée du 19 mars 2020 à 21:56


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Démarrer Turtle

Voici une petite série d'exemples Turtle dont la complexité du code augmente progressivement.

Cela permet de se faire une petite idée des possibilités offertes par Turtle, vous pouvez tester ces script directement dans Turtle sur REPL.it.

Download-icon.pngDémarrer Python Turtle en ligne

Avant de débuter le tracé graphique, point de départ de la tortue est celui ci:

  • Au centre de la zone de dessin
  • Tourné vers la droite

Python-Turtle-Exemple-00b.png

Dessiner une ligne

# Etape 1: rendre les instructions "turtle" 
#          disponible pour le script.
import turtle

# Etape 2: Créer une nouvelle tortue. Elle s'appelle "t"
t = turtle.Turtle()

# Etape 3: Déplacer la tortue "t" vers 
#          l'avant de 50 pixels
t.forward(50)

# Etape 4: Indiquer que c'est fini (OPTIONNEL)
turtle.done()

Résultat attendu:

Python-Turtle-Exemple-00a.png

A noter que la flèche en bout de ligne est la dite "tortue" et indique la direction dans laquelle est pointe.

Ce second exemple ci-dessous dessine deux sections de lignes avec une rotation de la tortue de 35 degrés sur la gauche.

import turtle

t = turtle.Turtle()

t.forward( 50 )

# Tourner à gauche de 35 degrés
t.left(35)
# Avancer de 25 pixels
t.forward( 25 )

Python-Turtle-Exemple-00c.png

Dessiner un carré

Dessiner un carré se résume a parcourir 4 fois la même distance en effectuant une rotation de 90° entre chaque tronçon.

import turtle

t = turtle.Turtle()

t.clear() # Efface écran

t.forward( 100 ) # Avancer 100 points
t.right( 90 ) # Tourner droite 90 degrés

t.forward( 100 ) # Avancer 100 points
t.right( 90 ) # Tourner droite 90 degrés

t.forward( 100 ) # Avancer 100 points
t.right( 90 ) # Tourner droite 90 degrés

t.forward( 100 ) # Avancer 100 points
t.right( 90 ) # Tourner droite 90 degrés

Résultat attendu:

Python-Turtle-Exemple-00.png

Dessiner un carré : syntaxe abrégée

import turtle

t = turtle.Turtle()

t.clear() # Efface écran

t.fd( 100 ) # Avancer 100 points
t.rt( 90 ) # Tourner droite 90 degrés

t.fd( 100 ) # Avancer 100 points
t.rt( 90 ) # Tourner droite 90 degrés

t.fd( 100 ) # Avancer 100 points
t.rt( 90 ) # Tourner droite 90 degrés

t.fd( 100 ) # Avancer 100 points
t.rt( 90 ) # Tourner droite 90 degrés

Résultat attendu:

Python-Turtle-Exemple-00.png

Dessiner un carré : avec plusieurs couleurs

import turtle

t = turtle.Turtle()

# Cycler une liste de couleurs
for c in ['red', 'green', 'yellow', 'blue']: # rougen vert, jaune, bleu 
    t.color(c)    # Fixer la couleur
    t.forward(75) # Avancer
    t.left(90)    # Tourner a gauche de 90 degrés

Résultat attendu:

Python-Turtle-Exemple-01.png

Dessiner un carré : avec une fonction

import turtle

t = turtle.Turtle()

# Definir une fonction
def faire_carre():
  for i in range( 4 ): # boucle de 0 à 3
    t.forward( 100 )
    t.right(90)

t.clear()     # Effacer écran
faire_carre() # appel de la fonction

Résultat attendu:

Python-Turtle-Exemple-02.png

Dessiner une étoile

import turtle 

t = turtle.Turtle()

for i in range(5): # répéter 5 fois
    t.forward(50)
    t.right(144)

Résultat attendu:

Python-Turtle-Exemple-10.png

Dessiner une étoile spiralée

import turtle 

t = turtle.Turtle()

for i in range(20): # i de 0 à 19
    t.forward(i * 10)
    t.right(144)

Résultat attendu:

Python-Turtle-Exemple-11.png

Note: à chaque fois que l'on déplace la tortue vers l'avant d'une quantité différente. Comme i varie de 0 à 19, la distance parcourue de par forward à chaque itération sera de i * 10 soit la suite 0, 10, 20, 30, 40, ... 180, 190.

SpiroGraphe simple

import turtle

t = turtle.Turtle()

def faire_carre():
  for i in range( 4 ):
    t.forward( 100 )
    t.right(90)

def faire_fleur():
  angle = 5 # en degrés
  for i in range( 360 // angle ):
    faire_carre()
    t.left( angle )

t.clear()
faire_fleur()

Résultat attendu:

Python-Turtle-Exemple-03.png

Une rose

from turtle import *
color('red', 'yellow')
begin_fill()
while True:
    forward(200)
    left(170)
    if (abs(pos()[0]) < 1) and (abs(pos()[1]) < 1) :
        break
        print( "break")
end_fill()
done()

Résultat attendu:

Python-Turtle-Exemple-04.png


Réalisé par Meurisse D. pour MCHobby.be à partir de différentes ressources.

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.