Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| teaching:progappchim:codes_presentation [2015/02/17 10:53] – créée villersd | teaching:progappchim:codes_presentation [2021/01/28 17:58] (Version actuelle) – villersd | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Codes de la présentation ====== | ====== Codes de la présentation ====== | ||
| - | <sxh python; title : turtle-01.py> | + | ===== Turtle ===== |
| + | //Cf.// la [[https:// | ||
| + | |||
| + | <code python turtle-01.py> | ||
| # | # | ||
| - | # -*- coding: | + | # -*- coding: |
| # exemple de base turtle | # exemple de base turtle | ||
| Ligne 35: | Ligne 38: | ||
| time.sleep(10) | time.sleep(10) | ||
| - | </sxh> | + | </code> |
| + | |||
| + | ===== Tkinter ===== | ||
| + | |||
| + | //Cf.// la [[https:// | ||
| + | |||
| + | <code python tkinter-simple-entry.py> | ||
| + | # | ||
| + | # -*- coding: UTF-8 -*- | ||
| + | |||
| + | # lecture de 2 masses par une fenêtre tk | ||
| + | |||
| + | from tkinter import * | ||
| + | |||
| + | fen01 = Tk() | ||
| + | fen01.title(" | ||
| + | chaine1 = Label (fen01, text = " | ||
| + | chaine2 = Label (fen01, text = " | ||
| + | chaine1.grid(row =0) | ||
| + | chaine2.grid(row =1) | ||
| + | entr1= Entry(fen01) | ||
| + | entr2= Entry(fen01) | ||
| + | entr1.grid(row =0, column =1) | ||
| + | entr2.grid(row =1, column =1) | ||
| + | bou1=Button(fen01, | ||
| + | bou1.grid(row=2, | ||
| + | |||
| + | fen01.mainloop() | ||
| + | |||
| + | m1 = float(entr1.get()) | ||
| + | m2 = float(entr2.get()) | ||
| + | fen01.destroy() | ||
| + | |||
| + | print(' | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Canvas Tkinter : rebond d'une balle ==== | ||
| + | |||
| + | <code python anima_auto_rebond.py> | ||
| + | #! / | ||
| + | # -*- coding: utf-8 -*- | ||
| + | |||
| + | # Petit exercice utilisant la librairie graphique Tkinter | ||
| + | |||
| + | from tkinter import * | ||
| + | |||
| + | # définition des gestionnaires | ||
| + | # d' | ||
| + | |||
| + | def move(): | ||
| + | " | ||
| + | global x1, y1, vx, vy, dt, flag | ||
| + | x1, y1 = x1 +vx*dt, y1 + vy*dt | ||
| + | if x1 < 0 or x1 > 220: | ||
| + | vx=-vx | ||
| + | if y1 < 0 or y1 > 220: | ||
| + | vy = -vy | ||
| + | can1.coords(oval1, | ||
| + | if flag >0: | ||
| + | fen1.after(2, | ||
| + | |||
| + | def stop_it(): | ||
| + | "arret de l' | ||
| + | global flag | ||
| + | flag =0 | ||
| + | |||
| + | def start_it(): | ||
| + | " | ||
| + | global flag | ||
| + | if flag ==0: # pour éviter que le bouton ne puisse lancer plusieurs boucles | ||
| + | flag =1 | ||
| + | | ||
| + | |||
| + | #========== Programme principal ============= | ||
| + | |||
| + | # les variables suivantes seront utilisées de manière globale : | ||
| + | x1, y1 = 40, 115 # coordonnées initiales | ||
| + | vx, vy = 10, 5 # vitesse du déplacement | ||
| + | dt=0.1 | ||
| + | flag =0 # commutateur | ||
| + | |||
| + | # Création du widget principal (" | ||
| + | fen1 = Tk() | ||
| + | fen1.title(" | ||
| + | # création des widgets " | ||
| + | can1 = Canvas(fen1, | ||
| + | can1.pack(side=LEFT, | ||
| + | oval1 = can1.create_oval(x1, | ||
| + | bou1 = Button(fen1, | ||
| + | bou1.pack(side=BOTTOM) | ||
| + | bou2 = Button(fen1, | ||
| + | bou2.pack() | ||
| + | bou3 = Button(fen1, | ||
| + | bou3.pack() | ||
| + | # démarrage du réceptionnaire d' | ||
| + | fen1.mainloop() | ||
| + | fen1.destroy() | ||
| + | </ | ||
| + | |||
| + | ==== DemoTkinter ==== | ||
| + | * télécharger ici : [[http:// | ||
| + | |||
| + | ===== Matplotlib - pylab ===== | ||
| + | |||
| + | <code python simple_fonction.py> | ||
| + | # | ||
| + | # -*- coding: utf-8 -*- | ||
| + | # cosinusoïde amortie | ||
| + | |||
| + | from pylab import * | ||
| + | |||
| + | def my_func(t): | ||
| + | s1 = cos(2*pi*t) | ||
| + | e1 = exp(-t) | ||
| + | return s1*e1 | ||
| + | |||
| + | tvals = arange(0., 5., 0.05) | ||
| + | # | ||
| + | |||
| + | #show() | ||
| + | |||
| + | plot(tvals, my_func(tvals), | ||
| + | |||
| + | show() | ||
| + | </code> | ||