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

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(6 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 55 : Ligne 55 :
 
[[Fichier:Python-Turtle-Exemple-00c.png]]
 
[[Fichier:Python-Turtle-Exemple-00c.png]]
  
== Faire un carré ==   
+
== 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 149 : Ligne 151 :
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
xx
+
import turtle
 +
 
 +
t = turtle.Turtle()
 +
 
 +
for i in range(5): # répéter 5 fois
 +
    t.forward(50)
 +
    t.right(144)
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
Résultat attendu:
  
 
[[Fichier:Python-Turtle-Exemple-10.png]]
 
[[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 ==   

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.