Exemples de programmation Python
https://www.facebook.com/groups/791696432107081
Programme de compteur de vitesse
# Programme - Python - Compteur de vitesse
# www.bgmax.com.br/treinamentos
# Besoin d'installer la bibliothèque plotly
# pip installe plotly
# Importez la bibliothèque Plotly requise pour créer des tracés interactifs
importer plotly.graph_objects en tant que graf
# Créer un objet figure (figure) contenant un compteur de vitesse avec des couleurs
figure = graf.Figure(graf.Indicateur(
mode="gauge number delta", # Mode jauge (jauge = compteur de vitesse, nombre = nombre, delta = différence)
value=420, # Valeur actuelle de l'indicateur (vitesse)
domain={'x' : [0, 1], 'y' : [0, 1]}, # Domaine du graphique (position et taille)
title={'text' : "Vitesse", 'font' : {'size' : 24}}, # Titre de l'indicateur
delta={'reference' : 400, 'increasing' : {'color' : "mediumseagreen"}}, # Paramètres Delta (différence)
jauge={
'axis' : {'range' : [0, 500], 'tickwidth' : 1, 'tickcolor' : "darkblue", 'tickvals' : [0, 100, 200, 300, 400, 500]},
# Paramètres de l'axe du compteur de vitesse (plage, épaisseur et couleurs)
'bar' : {'color' : "darkblue"}, # Paramètres de la barre du compteur de vitesse (couleur)
'bgcolor' : "blanc", # Couleur d'arrière-plan du compteur de vitesse
'borderwidth' : 2, # Largeur de la bordure du compteur de vitesse
'bordercolor' : "gris", # Couleur de la bordure du compteur de vitesse
'pas': [
{'plage' : [0, 100], 'couleur' : 'cyan'},
{'plage' : [100, 200], 'couleur' : 'bleu ciel profond'},
{'plage' : [200, 300], 'couleur' : 'bleu royal'},
{'plage' : [300, 400], 'couleur' : 'bleu bleuet'},
{'plage' : [400, 500], 'couleur' : 'bleu moyen'}
], # Paramètres des gammes de couleurs sur le compteur de vitesse
'seuil': {
'ligne' : {'couleur' : "rouge", 'largeur' : 4},
'épaisseur' : 0,75,
'valeur' : 490
} # Paramètres de seuil
}))
# Mettre à jour la disposition des figures (couleurs de fond, police)
figure.update_layout(
paper_bgcolor="lavande", # Couleur de fond du papier
font={'color': "darkblue", 'family': "Arial"}, # Paramètres de police
annotations=[
{
'x' : 0,5,
'et' : 0,4,
'xréf' : 'papier',
'yref' : 'papier',
'showarrow' : faux,
'text' : 'Unités', # Étiquette pour les unités
'font' : {'size' : 16, 'color' : 'darkblue'} # Paramètres de police d'étiquette
}
]
)
# Afficher le graphique
figure.show()
Python ChatGPT - Intelligence Artificielle
# Programme - Python - Python ChatGPT - Intelligence Artificielle
# Développé par Wilson Borges de Oliveira
# Vous devez créer une "clé API" sur le site OpenAI
# Vous devez installer la bibliothèque openai en utilisant la commande ci-dessous :
# pip installer openai
# -*- codage : cp1252 -*-
importer tkinter en tant que tk
depuis la boîte de message d'importation de tkinter
importer des openai
# Remplacez la clé ici
openai.api_key = "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"
def générer (messages):
réponse = openai.ChatCompletion.create(
modèle="gpt-3.5-turbo",
messages=messages,
max_tokens=1024,
température=0,5
)
retourner [response.choices[0].message.content, réponse.usage]
def préparer() :
mensagens = [{"role": "système", "contenu":
"Tu es un bon assistant."}]
question = txt_pergunta.get("1.0", "fin")
messages.append({"role": "user", "content": str(question)})
réponse = générer (messages)
txt_resposta.config(state= "normal")
txt_resposta.delete("1.0", "fin")
txt_resposta.insert("1.0",répondeur[0])
txt_resposta.config(state= "désactivé")
mensagens.append({"role": "assistant", "content": répondeur[0]})
def new() :
txt_question.delete("1.0","fin")
txt_resposta.config(state= "normal")
txt_resposta.delete("1.0", "fin")
def exit() :
tela.destroy()
corps = tk.Tk()
tela.geometry('1960x800 0 0')
tela.state('zoomé')
screen.title("Python ChatGPT - Intelligence Artificielle")
tela['bg'] = "jaune"
lbl_question = tk.Label(tela, text="Que veux-tu ?", bg="jaune",
fg="noir", font=('Calibri', 12, 'bold'), ancre = "w")
lbl_question.place(x = 20, y = 20, hauteur = 25)
txt_question = tk.Text(tela, font=('Calibri', 20), bg="noir", fg="blanc")
txt_pergunta.place(x = 20, y = 50, largeur=1320, hauteur=70)
btn_generar = tk.Button(écran, texte ="Générer",
bg ='dimgray',premier plan='jaune', font=('Calibri', 14),
commande = préparer)
btn_gerar.place(x = 570, y = 150, largeur = 200, hauteur=60)
lbl_response = tk.Label(écran, text="Réponse :", bg="jaune", fg="noir",
font=('Calibri', 12, 'bold'), ancre = "w")
lbl_resposta.place(x = 20, y = 200, hauteur = 25)
txt_resposta = tk.Text(tela, font=('Calibri', 12), bg="noir", fg="blanc")
txt_resposta.place(x = 20, y = 230, largeur=1300, hauteur=360)
scroll_y = tk.Scrollbar(tela, orient="vertical", command=txt_resposta.yview)
scroll_y.place(x = 1320, y = 230, hauteur=360)
btn_novo = tk.Button(écran, texte ="Nouveau",
bg ='dimgray',premier plan='jaune', font=('Calibri', 14),
commande = novo)
btn_novo.place(x = 570, y = 620, largeur = 80, hauteur=40)
btn_exit = tk.Button(écran, texte ="Quitter",
bg ='dimgray',premier plan='jaune', font=('Calibri', 14),
commande = quitter)
btn_sair.place(x = 690, y = 620, largeur = 80, hauteur=40)
txt_pergunta.focus_set()
tissu.mainloop()
Programme de tirage Mega-Sena
# Programme - Tirage Méga-Sena
# Permet d'effectuer différents tirages
# Développé par Wilson Borges de Oliveira
importer au hasard
importer tkinter en tant que tk
depuis l'importation tkinter *
corps = Tk()
screen.title("Mega-Sena Draw - Divers tirages")
C = Canvas(tela, bg ="vert", hauteur = 600, largeur = 1000)
C.create_text(500,75, text="Mega-Sena Draw",
Anchor="c", fill="jaune", font=('Helvetica','22','bold'))
def draw() :
résultat = []
aléatoire.seed()
tandis que len(résultat) < 6 :
r = aléatoire.randint(1, 60)
si r n'est pas dans le résultat :
résultat.append(r)
résultat.sort()
x = 140
y = 200
suite = 0
tandis que suite <6 :
ovale = C.create_oval(x, y, x 110, y 110, fill ="blanc")
C.create_text(x 52,y 50, text=result[suite],
Anchor="c", fill="black", font=('Helvetica','36','bold'))
suite = 1
x = 120
C.pack()
def exit() :
tela.destroy()
submitbtn = tk.Button(écran, texte ="Nouveau tirage",
bg ='or',premier plan='noir', font=('Calibri', 12, 'gras'),
commande = dessiner)
submitbtn.place(x = 450, y = 380, largeur = 150, hauteur=50)
submitbtn = tk.Button(tela, texte ="Sair",
bg ='Noir',premier plan='blanc', font=('Calibri', 12, 'gras'),
commande = quitter)
submitbtn.place(x = 820, y = 530, largeur = 150, hauteur=50)
tirage au sort()
tissu.mainloop()
Programme Calculer l'aire d'un rectangle, d'un cercle et d'un triangle
# Programme - Calculer l'aire d'un rectangle, d'un cercle et d'un triangle
# Développé par Wilson Borges de Oliveira
importer des mathématiques
importer tkinter en tant que tk
depuis l'importation tkinter *
depuis la boîte de message d'importation de tkinter
corps = Tk()
tela.state('zoomé')
screen.title("Calculer l'aire du rectangle, du cercle et du triangle")
def calc_square() :
essayer:
var_base = float(txt_base_qd.get().replace(',', '.'))
var_height = float(txt_height_qd.get().replace(',', '.'))
sauf:
messagebox.showinfo("Avertissement - Rectangle",
"Veuillez vérifier les chiffres saisis")
autre:
var_area = var_base * var_hauteur
txt_area_qd.delete(0,"fin")
txt_area_qd.insert(0, f'{var_area:.2f}'.replace('.', ','))
def calc_circle() :
essayer:
var_radius = float(txt_radius_ci.get().replace(',', '.'))
sauf:
messagebox.showinfo("Avis - Cercle",
"Veuillez vérifier les chiffres saisis")
autre:
var_area = math.pi * var_raio ** 2
txt_area_ci.delete(0,"fin")
txt_area_ci.insert(0, f'{var_area:.2f}'.replace('.', ','))
def calc_triang() :
essayer:
var_base = float(txt_base_tr.get().replace(',', '.'))
var_height = float(txt_height_tr.get().replace(',', '.'))
sauf:
messagebox.showinfo("Avertissement - Triangle",
"Veuillez vérifier les chiffres saisis")
autre:
var_area = var_base * var_hauteur / 2
txt_area_tr.delete(0,"fin")
txt_area_tr.insert(0, f'{var_area:.2f}'.replace('.', ','))
C = Toile(tela, bg ="or", largeur = 1960, hauteur = 800)
#Texte
C.create_text(660,35,
text="Calculer l'aire d'un rectangle, d'un cercle et d'un triangle",
Anchor="c", fill="black", font=('Helvetica','22','bold'))
#Carré
quadradro = C.create_rectangle(100, 100, 300, 300, contour = "noir",
fill = "bleu", largeur = 2)
lbl_form_quad = tk.Label(screen, text ="Zone = Base × Hauteur", bg="gold",
fg="noir", font=('Calibri', 12, 'gras'))
lbl_form_quad.place(x = 125, y = 310)
lbl_base_qd = tk.Label(tela, text ="Base:", bg="gold", fg="black",
font=('Calibri', 12), ancre = 'w')
lbl_base_qd.place(x = 125, y = 350, largeur=90, hauteur = 25)
txt_base_qd = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_base_qd.place(x = 180, y = 350, largeur = 75, hauteur = 25)
lbl_altura_qd = tk.Label(tela, text ="Altura:", bg="or", fg="noir",
font=('Calibri', 12), ancre = 'w')
lbl_altura_qd.place(x = 125, y = 380, largeur=90, hauteur = 25)
txt_altura_qd = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_altura_qd.place(x = 180, y = 380, largeur = 75, hauteur = 25)
btn_quad = tk.Button(tela, text ="Calculaire", bg ='jaune',foreground='noir',
font=('Calibri', 12, 'gras'), commande = calc_quadrado)
btn_quad.place(x = 180, y = 410, largeur = 75)
lbl_area_qd = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12), ancre = 'w')
lbl_area_qd.place(x = 125, y = 450, largeur=90, hauteur = 25)
txt_area_qd = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_area_qd.place(x = 180, y = 450, largeur = 75, hauteur = 25)
#Cercle
circulo = C.create_oval(580, 100, 780, 300, contour = "noir",
fill ="blanc", largeur = 2)
lbl_form_circ = tk.Label(fabric, text ="Zone = π . r2", bg="gold",
fg="noir", font=('Calibri', 12, 'gras'))
lbl_form_circ.place(x = 640, y = 310)
lbl_raio_ci = tk.Label(tela, text ="Radius:", bg="gold", fg="black",
font=('Calibri', 12), ancre = 'w')
lbl_raio_ci.place(x = 620, y = 350, largeur=90, hauteur = 25)
txt_raio_ci = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_raio_ci.place(x = 675, y = 350, largeur = 75, hauteur = 25)
btn_circ = tk.Button(tela, text ="Calculaire", bg ='jaune',foreground='noir',
font=('Calibri', 12, 'gras'), commande = calc_circulo)
btn_circ.place(x = 675, y = 410, largeur = 75)
lbl_area_ci = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12), ancre = 'w')
lbl_area_ci.place(x = 620, y = 450, largeur=90, hauteur = 25)
txt_area_ci = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_area_ci.place(x = 675, y = 450, largeur = 75, hauteur = 25)
#Triangle
triangle = { 'limites' : [ 1150 , 100 , 1050 , 300 , 1250 , 300 ],
'genre' : 'tri', 'fill' : vrai}
C.create_polygon(list(triangulo.values())[0],outline='black',
fill='rouge', largeur = 2)
lbl_form_tri2 = tk.Label(tela, text="___________", bg="gold",
fg="noir", font=('Calibri', 12, 'gras'))
lbl_form_tri2.place(x = 1132, y = 307)
lbl_form_tri1 = tk.Label(screen, text="Zone = Base × Hauteur", bg="gold",
fg="noir", font=('Calibri', 12, 'gras'))
lbl_form_tri1.place(x = 1080, y = 302)
lbl_form_circ3 = tk.Label(tela, texte ="2", bg="or", fg="noir",
font=('Calibri', 12, 'gras'))
lbl_form_circ3.place(x = 1170, y = 328)
lbl_base_tr = tk.Label(tela, text ="Base:", bg="or", fg="noir",
font=('Calibri', 12), ancre = 'w')
lbl_base_tr.place(x = 1080, y = 350, largeur=90, hauteur = 25)
txt_base_tr = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_base_tr.place(x = 1135, y = 350, largeur = 75, hauteur = 25)
lbl_height_tr = tk.Label(écran, text="Hauteur :", bg="or", fg="noir",
font=('Calibri', 12), ancre = 'w')
lbl_altura_tr.place(x = 1080, y = 380, largeur=90, hauteur = 25)
txt_altura_tr = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_altura_tr.place(x = 1135, y = 380, largeur = 75, hauteur = 25)
btn_triang = tk.Button(tela, text ="Calculaire", bg ='jaune',foreground='noir',
font=('Calibri', 12, 'gras'), commande = calc_triang)
btn_triang.place(x = 1135, y = 410, largeur = 75)
lbl_area_tr = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12), ancre = 'w')
lbl_area_tr.place(x = 1080, y = 450, largeur=90, hauteur = 25)
txt_area_tr = tk.Entry(tela, largeur = 35, justifier=CENTRE)
txt_area_tr.place(x = 1135, y = 450, largeur = 75, hauteur = 25)
C.pack()
tissu.mainloop()
Programme de tables de multiplication avec audio pour l'apprentissage des enfants
# Programme de tables de multiplication avec audio pour l'apprentissage des enfants
# Développé par Wilson Borges de Oliveira
# Vous devez installer la bibliothèque ci-dessous :
# pip installe pyttsx3
importer pyttsx3
moteur = pyttsx3.init("sapi5")
moteur.setProperty("voix", "brésil")
imprimer ('\n')
n = int(input('Pour quel nombre voulez-vous la table de multiplication ? '))
imprimer ('\n')
pour x dans la plage (1,11):
txt_result = str(n) 'X' str(x) ' = ' str(x * n)
txt_audio = str(n) 'fois' str(x) 'égal à' str(x * n)
imprimer(txt_result)
moteur.say(txt_audio)
moteur.runAndWait()
moteur.stop()
Programme Prisma - Réfraction de la lumière
# Programme Prisma - Réfraction de la lumière
importer une tortue comme stylo
depuis l'écran d'importation de tortues
corps = Écran()
screen.title("Prisme - Réfraction de la Lumière")
def start() :
stylo.hideturtle()
caneta.speed('le plus rapide')
stylo.bgcolor('noir')
caneta.pencolor('bleu clair')
stylo.penup()
stylo.goto(POS_TEXT)
pen.write('Prisma - Réfraction de la lumière', True, align='left',font=('Calibri',20,'normal'))
stylo.goto(0,0)
def draw_prism(x,y,côté,couleur,largeur) :
stylo.goto(x,y)
stylo.pendown()
stylo.pencolor(couleur)
stylo.pensize (largeur)
stylo.en arrière (côté/2)
stylo.gauche(60)
stylo.avant (côté)
stylo.droite(120)
stylo.avant (côté)
stylo.droite(120)
stylo.avant (côté/2)
def draw_beam(x,y,longueur):
stylo.penup()
stylo.goto (longueur x, y DÉCALAGE)
stylo.pendown()
stylo.pencolor('blanc')
stylo.pensize(15)
stylo.goto(x,y OFFSET)
def draw_refraction(color,x,ate_x,y,ate_y) :
stylo.penup()
stylo.goto(x,y DÉCALAGE)
stylo.pendown()
stylo.pencolor(couleur)
stylo.pensize(15)
stylo.goto(ate_x,ate_y)
POS_TEXTE = (-130,-190)
DÉPLACEMENT = 60
AZULMAGENTA = '#4B0082'
début()
draw_prisma(0,-50,200,"blanc",2)
caneta.speed('le plus lent')
draw_beam(0,0,400)
draw_refraction('rouge',0,400,0,-80)
draw_refraction('orange',0,400,0,-105)
draw_refraction('jaune',0,400,0,-130)
draw_refraction('vert',0,400,0,-155)
draw_refraction('bleu moyen',0,400,0,-180)
draw_refraction('marine',0,400,0,-205)
draw_refraction(AZULMAGENTA,0,400,0,-230)
stylo.done()
Rua Carlos Felipe, 31 - Centre
Suzano-SP