發表文章

黃柏諺tkinter視窗函式庫Entry工具widget

圖片
from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 import math #從函式庫 math 輸入所有 * 方法 from time import * from random import * class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * math.pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*math.cos(i*self.u)) self.y.append(self.cy + self.cr*math.sin(i*self.u)) def drawLine(self, x0, y0, x1, y1): canvas.create_line(x0, y0, x1, y1, width = self.w, fill=self.c) def draw(self): #類別的方法 secondTime = second.get() #取得輸入的second變數,當作區域變數secondTime for i in range( int(self.s * 1.5) - self.t): self.drawLine(self.x[i],

黃柏諺類別class __init__(self, 其他參數)

圖片
class Person: #定義類別class稱為Person def __init__(self, name, age): #起始屬性函數一律稱為__init__ self.name = name self.age = age def myfunc(self): print("Hi,我的\n名字是 " + self.name)#字串中\n換列 print("Hi,我的") print("名字是 " + self.name) p1 = Person("黃柏諺", 36) #利用類別建構物件(實例) p1.myfunc() from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 import math #從函式庫 math 輸入所有 * 方法 from time import * from random import * class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * math.pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*math.cos(i*self.u)) self.y.append(self.cy + self.c

黃柏諺python時間函式time.sleep

圖片
from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 from math import * #從函式庫 math 輸入所有 * 方法 from time import * #黃柏諺輸入time函數庫,取代import time class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*cos(i*self.u)) self.y.append(self.cy + self.cr*sin(i*self.u)) def draw(self): #類別的方法 for i in range( int(self.s * 1.5) - self.t): canvas.create_line(self.x[i], self.y[i], self.x[i + self.t], self.y[i + self.t], fill = self.c, width = self.w) sleep(0.5) tk.update() def show(): #畫圖 define自

黃柏諺python, input, str, float

圖片
from math import * def f(r): print(f"黃柏諺輸入的半徑{r} ") print(f"圓面積: {pi*r*r} ") print(f"球體積: {pi*r*r*r*4/3}") print(f"球表面積:{pi*r*r*4}") def abc(r): print("黃柏諺輸入的半徑 " + str(r)) print("圓面積: "+str(pi*r*r)) print("圓周長: "+str(pi*r*2)) print("球體積: "+str(pi*r*r*r*4/3)) print("球表面積:"+str(pi*r*r*4)) def tri(z): print("黃柏諺輸入的度 " + str(y)) print("正弦sin "+str(sin(z))) print("餘弦cos "+str(cos(z))) def g(z): print(f"正弦sin {sin(z)}") print(f"餘弦cos {cos(z)}") def group(r, t): abc(r) tri(t) f(r) g(t) r = float(input("輸入半徑: ")) y = float(input("輸入角度360度單位: ")) t = y/180*pi #將360較度轉成弧度180=pi group(r,t)

黃柏諺python自訂函數built-in內建函數import輸入函式庫

圖片
w3school程式碼 from math import * #黃柏諺輸入math函式庫輸入所有函數 #取代原來的import math def f(r): #定義函數 define 名稱(參數),以下同縮排都是 print("圓面積pi r*r:"+str(pi*r*r)) print("圓周長pi r*2:"+str(pi*r*2)) print("球體積pi r*r*r*4/3:"+str(pi*r*r*4/3)) print("球面積pi r*r*4:"+str(pi*r*r*4)) def g(angle): print("正弦sin:"+str(sin(angle))) print("餘弦cos:"+str(cos(angle))) def h(x,y): #用在模組化程式碼 f(x) g(y) print("黃柏諺:定函數h呼叫f,g再呼叫內建pi、sin、cos\n") h(1,pi/6) w3school截圖 from math import * #黃柏諺輸入math函式庫輸入所有函數 from tkinter import * #輸入視窗介面函式庫 def f(r): #定義函數 define 名稱(參數),以下同縮排都是 print("圓面積pi r*r:"+str(pi*r*r)) print("圓周長pi r*2:"+str(pi*r*2)) print("球體積pi r*r*r*4/3:"+str(pi*r*r*4/3)) print("球面積pi r*r*4:"+str(pi*r*r*4)) def g(angle): print("正弦sin:"+str(sin(angle))) print("餘弦cos:"+str(cos(angle))) def h(x,y): #用在模組化程式碼 f(x) g(y) print("黃柏諺:定函數h呼叫f,g再呼叫內建pi、sin、cos\n") h(1,pi/6) tk=Tk()

黃柏諺python類別class函數function

圖片
from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 from math import * #從函式庫 math 輸入所有 * 方法 class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*cos(i*self.u)) self.y.append(self.cy + self.cr*sin(i*self.u)) def draw(self): #類別的方法 for i in range( int(self.s * 1.5) - self.t): canvas.create_line(self.x[i], self.y[i], self.x[i + self.t], self.y[i + self.t], fill = self.c, width = self.w) def show(): #畫圖 poly = Regular(cx.get(), cy.get(), cr.get(), s.get(), t.get(), c.get(), w.get()) polyList.append(poly) polyList[len(pol

微軟vscord

圖片
微軟VS Code截圖 程式碼 from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 # math只用三個沒必要輸入所有*, math.pi比 pi 更清楚 import math #連線去找函式庫 t = (3,4,5,6,7,8,9,10,11,12,16,20)#宣告一元組tuple(...) tk = Tk() tk.title("黃柏諺視窗使用者介面GUI") canvas = Canvas(tk, width=800, height=500) canvas.pack() def show(event): #定義由事件event(按鈕選單)呼叫的函數show cx = 200 #宣告圓中心座標cx, cy半徑cr cy = 210 cr = 140 x, y =[],[] #宣告二陣列[...] k = s.get() #取得 ge t按鈕選單的選擇變數 u = 2 * math.pi / k #使用模組 math 圓周率 pi for i in range(k): x.append(cx + cr*math.cos(i*u)) #加入陣列的元素 y.append(cy + cr*math.sin(i*u)) #使用模組 math 三角函數cos, sin for i in range(k-1): canvas.create_line(x[i], y[i], x[i+1], y[i+1]) canvas.create_line(x[k-1], y[k-1], x[0], y[0], fill="blue",width=5) #可考慮增加width寬度,fill顏色 def diagonal(): cx, cy, cr = 500, 210, 150 #宣告圓中心座標cx, cy半徑cr x, y =[],[] #宣告二陣列[...] k = s.get() #取得 ge t按鈕選單的選擇變數 u = 2 * pi / k #模組 math 圓周率 pi for i in range(k): x.append(cx + cr*cos(i*u)) #加入陣列的元素 y.append(cy + cr*sin(i*u)) for i in range(k): for j in