Python プログラミングの例
https://www.facebook.com/groups/791696432107081
スピードメータープログラム
# プログラム - Python - スピードメーター
#www.bgmax.com.br/treinamentos
# Plotly ライブラリをインストールする必要があります
# pip インストールプロット
# インタラクティブなプロットを作成するために必要な Plotly ライブラリをインポートします
グラフとしてplotly.graph_objectsをインポートします
# 色付きの速度計を含む図オブジェクト (図) を作成する
図 = graf.Figure(graf.Indicator(
mode="gauge number delta", # ゲージモード (gauge = 速度計、number = 数値、delta = 差)
value=420, # 現在のインジケーター値 (速度)
domain={'x': [0, 1], 'y': [0, 1]}, # グラフドメイン (位置とサイズ)
title={'text': "速度", 'font': {'size': 24}}, # インジケーターのタイトル
delta={'reference': 400, 'increeasing': {'color': "mediumseagreen"}}、# デルタ設定 (差分)
ゲージ={
'axis': {'range': [0, 500], 'tickwidth': 1, 'tickcolor': "darkblue", 'tickvals': [0, 100, 200, 300, 400, 500]},
# スピードメーターの軸設定(範囲、太さ、色)
'bar': {'color': "darkblue"}, # スピードメーターバーの設定 (色)
'bgcolor': "white", # スピードメーターの背景色
'borderwidth': 2, # スピードメーターの境界線の幅
'bordercolor': "gray", # スピードメーターの境界線の色
'ステップ': [
{'範囲': [0, 100], '色': 'シアン'},
{'範囲': [100, 200], '色': 'ディープスカイブルー'},
{'範囲': [200, 300]、'色': 'ロイヤルブルー'},
{'範囲': [300, 400], '色': 'コーンフラワーブルー'},
{'範囲': [400, 500]、'色': 'mediumblue'}
], # スピードメーターの色範囲の設定
'しきい値': {
'線': {'色': "赤", '幅': 4},
「厚さ」: 0.75、
「値」: 490
} # しきい値の設定
}))
# 図のレイアウトを更新(背景色、フォント)
figura.update_layout(
Paper_bgcolor="lavender", # 用紙の背景色
font={'color': "darkblue", 'family': "Arial"}, # フォント設定
注釈=[
{
「x」: 0.5、
「および」: 0.4、
'xref': '紙',
'yref': '紙',
'showarrow': 偽、
'text': 'Units', # 単位のラベル
'font': {'size': 16, 'color': 'darkblue'} # ラベルのフォント設定
}
】
)
# グラフを表示する
figura.show()
Python ChatGPT - 人工知能
# プログラム - Python - Python ChatGPT - 人工知能
# ウィルソン・ボルヘス・デ・オリベイラが開発
# OpenAI Webサイトで「APIキー」を作成する必要があります
# 以下のコマンドを使用して、openai ライブラリをインストールする必要があります。
# pip インストール openai
# -*- コーディング: cp1252 -*-
tkinterをtkとしてインポートします
tkinterインポートメッセージボックスから
輸入オープンアイ
# ここでキーを置き換えます
openai.api_key = "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"
def 生成(メッセージ):
応答 = openai.ChatCompletion.create(
モデル="gpt-3.5-ターボ",
メッセージ=メッセージ、
max_tokens=1024、
温度=0.5
)
return [response.choices[0].message.content、response.usage]
def prepare():
Mensagens = [{"役割": "システム", "コンテンツ":
「あなたは良いアシスタントです。」}]
question = txt_pergunta.get("1.0","end")
messages.append({"役割": "ユーザー", "コンテンツ": str(質問)})
Reply = 生成(メッセージ)
txt_resposta.config(state= "通常")
txt_resposta.delete("1.0","終了")
txt_resposta.insert("1.0",レスポンダー[0])
txt_resposta.config(state= "無効")
Mensagens.append({"役割": "アシスタント", "コンテンツ": レスポンダー[0]})
def new():
txt_question.delete("1.0","終了")
txt_resposta.config(state= "通常")
txt_resposta.delete("1.0","終了")
def exit():
tela.destroy()
ボディ = tk.Tk()
tela.geometry('1960x800 0 0')
tela.state('ズーム済み')
screen.title("Python ChatGPT - 人工知能")
tela['bg'] = "黄色"
lbl_question = tk.Label(tela, text="何が欲しいですか?", bg=" yellow",
fg="黒"、フォント=('Calibri', 12, '太字')、アンカー= "w")
lbl_question.place(x = 20、y = 20、高さ = 25)
txt_question = tk.Text(tela, font=('Calibri', 20), bg="黒", fg="白")
txt_pergunta.place(x = 20、y = 50、幅=1320、高さ=70)
btn_generar = tk.Button(screen, text ="生成",
bg ='dimgray',foreground=' yellow', font=('Calibri', 14),
コマンド = 準備)
btn_gerar.place(x = 570、y = 150、幅 = 200、高さ = 60)
lbl_response = tk.Label(screen, text="レスポンス:", bg="黄", fg="黒",
font=('Calibri', 12, 'bold')、アンカー = "w")
lbl_resposta.place(x = 20、y = 200、高さ = 25)
txt_resposta = tk.Text(tela, font=('Calibri', 12), bg="黒", fg="白")
txt_resposta.place(x = 20、y = 230、幅=1300、高さ=360)
scroll_y = tk.Scrollbar(tela, orient="vertical", command=txt_resposta.yview)
スクロール_y.place(x = 1320, y = 230,height=360)
btn_novo = tk.Button(画面、テキスト ="新規",
bg ='dimgray',foreground=' yellow', font=('Calibri', 14),
コマンド = novo)
btn_novo.place(x = 570、y = 620、幅 = 80、高さ = 40)
btn_exit = tk.Button(screen, text ="終了",
bg ='dimgray',foreground=' yellow', font=('Calibri', 14),
コマンド = 終了)
btn_sair.place(x = 690、y = 620、幅 = 80、高さ = 40)
txt_pergunta.focus_set()
ファブリック.メインループ()
メガセナ抽選プログラム
# プログラム - メガセナドロー
# さまざまな抽選を実行できます
# ウィルソン・ボルヘス・デ・オリベイラが開発
ランダムにインポート
tkinterをtkとしてインポートします
tkinter インポートから *
本体 = Tk()
screen.title("メガセナドロー 各種ドロー")
C = キャンバス(テラ、bg ="グリーン"、高さ = 600、幅 = 1000)
C.create_text(500,75, text="メガセナドロー",
アンカー = "c"、塗りつぶし = "黄色"、フォント =('ヘルベチカ','22','太字'))
def 描画():
結果 = []
ランダムシード()
while len(結果) < 6:
r = ランダム.randint(1, 60)
r が結果にない場合:
result.append(r)
結果.sort()
x = 140
y = 200
継続 = 0
継続 <6:
oval = C.create_oval(x, y, x 110, y 110, fill ="white")
C.create_text(x 52,y 50, text=結果[続き],
アンカー = "c"、塗りつぶし = "黒"、フォント =('ヘルベチカ','36','太字'))
続き = 1
x = 120
C.pack()
def exit():
tela.destroy()
submitbtn = tk.Button(screen, text ="新規描画",
bg ='ゴールド'、フォアグラウンド='ブラック'、フォント=('Calibri', 12, 'ボールド'),
コマンド = 描画)
submitbtn.place(x = 450、y = 380、幅 = 150、高さ = 50)
submitbtn = tk.Button(tela, text ="Sair",
bg ='黒',foreground='白', font=('Calibri', 12, '太字'),
コマンド = 終了)
submitbtn.place(x = 820、y = 530、幅 = 150、高さ = 50)
賞品の抽選()
ファブリック.メインループ()
プログラムは長方形、円、三角形の面積を計算します
# プログラム - 長方形、円、三角形の面積を計算する
# ウィルソン・ボルヘス・デ・オリベイラが開発
数学をインポートする
tkinterをtkとしてインポートします
tkinter インポートから *
tkinterインポートメッセージボックスから
本体 = Tk()
tela.state('ズーム済み')
screen.title("長方形、円、三角形の面積を計算する")
def calc_square():
試す:
var_base = float(txt_base_qd.get().replace(',', '.'))
var_height = float(txt_height_qd.get().replace(',', '.'))
を除外する:
messagebox.showinfo("警告 - 四角形",
「入力した数字を確認してください」)
それ以外:
var_area = var_base * var_height
txt_area_qd.delete(0,"終了")
txt_area_qd.insert(0, f'{var_area:.2f}'.replace('.', ','))
def calc_circle():
試す:
var_radius = float(txt_radius_ci.get().replace(',', '.'))
を除外する:
messagebox.showinfo("お知らせ - サークル",
「入力した数字を確認してください」)
それ以外:
var_area = math.pi * var_raio ** 2
txt_area_ci.delete(0,"終了")
txt_area_ci.insert(0, f'{var_area:.2f}'.replace('.', ','))
def calc_triang():
試す:
var_base = float(txt_base_tr.get().replace(',', '.'))
var_height = float(txt_height_tr.get().replace(',', '.'))
を除外する:
messagebox.showinfo("警告 - 三角形",
「入力した数字を確認してください」)
それ以外:
var_area = var_base * var_height / 2
txt_area_tr.delete(0,"終了")
txt_area_tr.insert(0, f'{var_area:.2f}'.replace('.', ','))
C = キャンバス(テラ、bg ="ゴールド"、幅 = 1960、高さ = 800)
#文章
C.create_text(660,35,
text="長方形、円、三角形の面積を計算",
アンカー = "c"、塗りつぶし = "黒"、フォント =('ヘルベチカ','22','太字'))
#四角
quadradro = C.create_rectangle(100, 100, 300, 300, アウトライン = "黒",
塗りつぶし = "青"、幅 = 2)
lbl_form_quad = tk.Label(screen, text ="面積 = 底辺 × 高さ", bg="ゴールド",
fg="黒", font=('Calibri', 12, '太字'))
lbl_form_quad.place(x = 125, y = 310)
lbl_base_qd = tk.Label(tela, text ="Base:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_base_qd.place(x = 125、y = 350、幅 = 90、高さ = 25)
txt_base_qd = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_base_qd.place(x = 180、y = 350、幅 = 75、高さ = 25)
lbl_altura_qd = tk.Label(tela, text ="Altura:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_altura_qd.place(x = 125、y = 380、幅 = 90、高さ = 25)
txt_altura_qd = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_altura_qd.place(x = 180、y = 380、幅 = 75、高さ = 25)
btn_quad = tk.Button(tela, text ="Calcular", bg =' yellow',foreground=' black',
font=('Calibri', 12, 'bold'), コマンド = calc_quadrado)
btn_quad.place(x = 180、y = 410、幅 = 75)
lbl_area_qd = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_area_qd.place(x = 125、y = 450、幅 = 90、高さ = 25)
txt_area_qd = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_area_qd.place(x = 180、y = 450、幅 = 75、高さ = 25)
#丸
circulo = C.create_oval(580, 100, 780, 300, アウトライン = "黒",
塗りつぶし = "白"、幅 = 2)
lbl_form_circ = tk.Label(fabric, text ="面積 = π . r2", bg="ゴールド",
fg="黒", font=('Calibri', 12, '太字'))
lbl_form_circ.place(x = 640, y = 310)
lbl_raio_ci = tk.Label(tela, text ="半径:", bg="ゴールド", fg="ブラック",
font=('Calibri', 12)、アンカー = 'w')
lbl_raio_ci.place(x = 620、y = 350、幅 = 90、高さ = 25)
txt_raio_ci = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_raio_ci.place(x = 675、y = 350、幅 = 75、高さ = 25)
btn_circ = tk.Button(tela, text ="計算", bg =' yellow',foreground=' black',
font=('Calibri', 12, 'bold'), コマンド = calc_circulo)
btn_circ.place(x = 675、y = 410、幅 = 75)
lbl_area_ci = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_area_ci.place(x = 620、y = 450、幅 = 90、高さ = 25)
txt_area_ci = tk.Entry(tela、幅 = 35、justify=CENTER)
txt_area_ci.place(x = 675、y = 450、幅 = 75、高さ = 25)
#三角形
三角形 = { '境界' : [ 1150 , 100 , 1050 , 300 , 1250 , 300 ],
'kind': 'tri'、'fill': True}
C.create_polygon(list(triangulo.values())[0],outline='black',
塗りつぶし = '赤'、幅 = 2)
lbl_form_tri2 = tk.Label(テラ, テキスト ="____________", bg="ゴールド",
fg="黒", font=('Calibri', 12, '太字'))
lbl_form_tri2.place(x = 1132, y = 307)
lbl_form_tri1 = tk.Label(screen, text="面積 = 底辺 × 高さ", bg="ゴールド",
fg="黒", font=('Calibri', 12, '太字'))
lbl_form_tri1.place(x = 1080, y = 302)
lbl_form_circ3 = tk.Label(tela, text ="2", bg="gold", fg="black",
font=('Calibri', 12, '太字'))
lbl_form_circ3.place(x = 1170, y = 328)
lbl_base_tr = tk.Label(tela, text ="Base:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_base_tr.place(x = 1080、y = 350、幅 = 90、高さ = 25)
txt_base_tr = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_base_tr.place(x = 1135、y = 350、幅 = 75、高さ = 25)
lbl_height_tr = tk.Label(screen, text="高さ:", bg="ゴールド", fg="黒",
font=('Calibri', 12)、アンカー = 'w')
lbl_altura_tr.place(x = 1080、y = 380、幅 = 90、高さ = 25)
txt_altura_tr = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_altura_tr.place(x = 1135、y = 380、幅 = 75、高さ = 25)
btn_triang = tk.Button(tela, text ="Calcular", bg =' yellow',foreground=' black',
font=('Calibri', 12, 'bold'), コマンド = calc_triang)
btn_triang.place(x = 1135、y = 410、幅 = 75)
lbl_area_tr = tk.Label(tela, text ="Área:", bg="gold", fg="black",
font=('Calibri', 12)、アンカー = 'w')
lbl_area_tr.place(x = 1080、y = 450、幅 = 90、高さ = 25)
txt_area_tr = tk.Entry(テラ、幅 = 35、justify=CENTER)
txt_area_tr.place(x = 1135、y = 450、幅 = 75、高さ = 25)
C.pack()
ファブリック.メインループ()
子供の学習のための音声付き九九プログラム
# 子供の学習のための音声付き九九プログラム
# ウィルソン・ボルヘス・デ・オリベイラが開発
# 以下のライブラリをインストールする必要があります。
# pip インストール pyttsx3
pyttsx3をインポートする
エンジン = pyttsx3.init("sapi5")
Engine.setProperty("音声", "ブラジル")
印刷 ('\n')
n = int(input('どの数字の九九が必要ですか? '))
印刷 ('\n')
range(1,11) の x の場合:
txt_result = str(n) ' X ' str(x) ' = ' str(x * n)
txt_audio = str(n) ' 回 ' str(x) ' 等しい ' str(x * n)
print(txt_result)
エンジン.say(txt_audio)
エンジン.runAndWait()
エンジン.ストップ()
プリズマ プログラム - 光の屈折
# プリズマプログラム - 光の屈折
カメをペンとしてインポート
タートルインポート画面より
ボディ = スクリーン()
screen.title("プリズム - 光の屈折")
def start():
ペン.ヒデタートル()
caneta.speed('最速')
ペン.bgcolor('黒')
caneta.pencolor('ライトブルー')
ペン.ペンアップ()
ペン.goto(POS_TEXTO)
pen.write('プリズマ - 光の屈折', True, align='left',font=('Calibri',20,'normal'))
ペン.goto(0,0)
defdraw_prism(x,y,side,color,width):
ペン.goto(x,y)
ペン.ペンダウン()
ペン.ペンカラー(カラー)
ペン.ペンサイズ(幅)
ペン.後方(サイド/2)
ペン左(60)
ペンの前方(横)
ペン右(120)
ペンの前方(横)
ペン右(120)
ペン.フォワード(サイド/2)
defdraw_beam(x,y,length):
ペン.ペンアップ()
pen.goto(x-length,y OFFSET)
ペン.ペンダウン()
ペン.ペンカラー('白')
ペン.ペンサイズ(15)
ペン.goto(x,y OFFSET)
defdraw_refraction(color,x,ate_x,y,ate_y):
ペン.ペンアップ()
ペン.goto(x,y OFFSET)
ペン.ペンダウン()
ペン.ペンカラー(カラー)
ペン.ペンサイズ(15)
ペン.goto(ate_x,ate_y)
POS_TEXT = (-130,-190)
変位 = 60
アズルマゼンタ = '#4B0082'
始める()
draw_prisma(0,-50,200,"白",2)
caneta.speed('最も遅い')
ドロービーム(0,0,400)
draw_refraction('赤',0,400,0,-80)
draw_refraction('オレンジ',0,400,0,-105)
draw_refraction('黄色',0,400,0,-130)
draw_refraction('緑',0,400,0,-155)
draw_refraction('mediumblue',0,400,0,-180)
draw_refraction('ネイビー',0,400,0,-205)
draw_refraction(AZULMAGENTA,0,400,0,-230)
ペン.done()