學(xué)習(xí)的主要內(nèi)容 <p class="ql-block">1.畫五角星</p><p class="ql-block">2.畫有填充顏色的五角星</p><p class="ql-block">3.畫五星紅旗</p><p class="ql-block"><br></p><p class="ql-block"> </p> 案例+運(yùn)行結(jié)果? 展示 <p class="ql-block">注意??</p><p class="ql-block">1.<b style="color:rgb(237, 35, 8); font-size:20px;">半角,英文狀</b>態(tài)下輸入程序代碼,否則運(yùn)行?</p><p class="ql-block"><br></p> 案例 一? 畫五角星 <p class="ql-block"><span style="font-size:20px; color:rgb(237, 35, 8);">順序結(jié)構(gòu) 畫一個(gè)五角星</span></p><p class="ql-block">import turtle #繪制五角星</p><p class="ql-block"><br></p><p class="ql-block">turtle.fd(200) #畫第一條200像素直線</p><p class="ql-block">turtle.rt(144) #海龜方向右轉(zhuǎn)144°</p><p class="ql-block"><br></p><p class="ql-block">turtle.fd(200) #畫第二條200像素直線</p><p class="ql-block">turtle.rt(144) #海龜方向右轉(zhuǎn)144°</p><p class="ql-block"><br></p><p class="ql-block">turtle.fd(200) #畫畫第三條200像素直線</p><p class="ql-block">turtle.rt(144) #海龜方向右轉(zhuǎn)144°</p><p class="ql-block"><br></p><p class="ql-block">turtle.fd(200) #畫第四條200像素直線</p><p class="ql-block">turtle.rt(144) #海龜方向右轉(zhuǎn)144°</p><p class="ql-block"><br></p><p class="ql-block">turtle.fd(200) #畫第五條200像素直線</p><p class="ql-block">turtle.rt(144) #海龜方向右轉(zhuǎn)144°</p><p class="ql-block"><br></p><p class="ql-block">turtle.hideturtle() #隱藏鼠標(biāo)</p><p class="ql-block">turtle.done() #保持手動(dòng)關(guān)閉</p> <p class="ql-block"><b style="font-size:20px; color:rgb(237, 35, 8);">循環(huán)結(jié)構(gòu) 畫五角星 (對(duì)比順序結(jié)構(gòu))</b></p><p class="ql-block">import turtle # 繪制五角星</p><p class="ql-block">for i in range(5):</p><p class="ql-block"> turtle.fd(200)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.hideturtle()</p> <p class="ql-block">運(yùn)行結(jié)果</p> 案例二? 畫有顏色填充的五角星 <p class="ql-block">import turtle # 繪制黃色五角星</p><p class="ql-block"><b style="color:rgb(237, 35, 8);">turtle.fillcolor("yellow") #填充色“黃色”</b></p><p class="ql-block">turtle.pencolor("yellow") #畫筆色“黃色”默認(rèn)“黑色”</p><p class="ql-block"><br></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">turtle.begin_fill() #開始填充</b></p><p class="ql-block"><br></p><p class="ql-block">for i in range(5): #畫五角星</p><p class="ql-block"> turtle.fd(200)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">turtle.end_fill() #結(jié)束填充</b></p><p class="ql-block"><br></p><p class="ql-block">turtle.hideturtle() #隱藏海龜畫筆</p><p class="ql-block"><br></p><p class="ql-block">turtle.done() # 保持窗口 手動(dòng)關(guān)閉</p> <p class="ql-block">運(yùn)行結(jié)果</p> <p class="ql-block"><b style="color:rgb(237, 35, 8); font-size:20px;">常用的顏色標(biāo)識(shí)符 </b></p><p class="ql-block">——Python 字符串格式顏色對(duì)照表(常用)</p><p class="ql-block"><b style="color:rgb(1, 1, 1); font-size:20px;">有興趣的同學(xué)可以搜索RGB模式表示顏色的知識(shí)</b></p> 案例三? 畫五星紅旗 <p class="ql-block">import turtle #繪制五星紅旗</p><p class="ql-block"><br></p><p class="ql-block">turtle.setup(600,400,0,0)#設(shè)置畫布大小為600像素寬,400像素寬,畫布左上角在顯示器左上角</p><p class="ql-block">turtle.bgcolor("red") #設(shè)置<b style="color:rgb(237, 35, 8);">畫布顏色為紅色</b></p><p class="ql-block">turtle.pencolor("yellow")#設(shè)置畫筆顏色為黃色</p><p class="ql-block">turtle.fillcolor("yellow")#設(shè)置填充顏色為黃色</p><p class="ql-block"><br></p><p class="ql-block"># 繪制 大五角星</p><p class="ql-block">turtle.penup() #抬起畫筆</p><p class="ql-block">turtle.goto(-260,110) #大五角星起點(diǎn)坐標(biāo)位置</p><p class="ql-block">turtle.seth(0) #海龜頭朝東</p><p class="ql-block">turtle.pendown() #畫筆落下</p><p class="ql-block">turtle.begin_fill() #開始填充顏色,</p><p class="ql-block">for i in range(5): #畫大五角星</p><p class="ql-block"> turtle.fd(150)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.end_fill() #結(jié)束填充顏色</p><p class="ql-block">turtle.hideturtle() #隱藏畫筆</p><p class="ql-block"><br></p><p class="ql-block"># 繪制 最右上角的第一個(gè)小五角星</p><p class="ql-block">turtle.penup() </p><p class="ql-block">turtle.goto(-120,150)</p><p class="ql-block">turtle.seth(305)</p><p class="ql-block">turtle.pendown()</p><p class="ql-block"><br></p><p class="ql-block">turtle.begin_fill()</p><p class="ql-block">turtle.seth(50)</p><p class="ql-block">for i in range(5):</p><p class="ql-block"> turtle.fd(50)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.end_fill()</p><p class="ql-block">turtle.hideturtle()</p><p class="ql-block"><br></p><p class="ql-block"># 繪制 第二個(gè)小五角星</p><p class="ql-block">turtle.penup() </p><p class="ql-block">turtle.goto(-80,100) # 到小五角星的起點(diǎn)處</p><p class="ql-block">turtle.seth(30)</p><p class="ql-block">turtle.pendown() #放下畫筆</p><p class="ql-block"><br></p><p class="ql-block">turtle.begin_fill()</p><p class="ql-block">turtle.seth(50)</p><p class="ql-block">for i in range(5):</p><p class="ql-block"> turtle.fd(50)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.end_fill()</p><p class="ql-block">turtle.hideturtle()</p><p class="ql-block"><br></p><p class="ql-block"># 繪制第三個(gè)小五角星</p><p class="ql-block">turtle.penup() </p><p class="ql-block">turtle.goto(-80,60)</p><p class="ql-block">turtle.pendown()</p><p class="ql-block"><br></p><p class="ql-block">turtle.begin_fill()</p><p class="ql-block">turtle.seth(5)</p><p class="ql-block">for i in range(5):</p><p class="ql-block"> turtle.fd(50)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.end_fill()</p><p class="ql-block">turtle.hideturtle()</p><p class="ql-block"><br></p><p class="ql-block"># 繪制 第四個(gè)小五角星</p><p class="ql-block">turtle.penup() </p><p class="ql-block">turtle.goto(-100,30)</p><p class="ql-block">turtle.pendown()</p><p class="ql-block">turtle.begin_fill()</p><p class="ql-block">turtle.seth(300)</p><p class="ql-block">for i in range(5):</p><p class="ql-block"> turtle.fd(50)</p><p class="ql-block"> turtle.rt(144)</p><p class="ql-block">turtle.end_fill()</p><p class="ql-block">turtle.hideturtle()</p><p class="ql-block">turtle.done() #保持窗口 手動(dòng)關(guān)閉</p> 五星的起始位置(絕對(duì)坐標(biāo))? 大小? 參數(shù) <p class="ql-block">旋轉(zhuǎn)144°的計(jì)算過程</p> <p class="ql-block">運(yùn)行結(jié)果</p> 常用海龜庫中的函數(shù)匯總? 查詢 <p class="ql-block"><b style="color:rgb(237, 35, 8);">一、 基礎(chǔ)初始化/收尾函數(shù)(必用)</b></p><p class="ql-block">- <b style="color:rgb(237, 35, 8);">import turtle :導(dǎo)入庫</b></p><p class="ql-block">- turtle.Turtle() :創(chuàng)建畫筆(核心對(duì)象)</p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.done() :保持繪圖窗口不關(guān)閉</b></p><p class="ql-block">- turtle.Screen() :創(chuàng)建畫布(可選,設(shè)置窗口)</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">二、 畫筆移動(dòng)函數(shù)(繪圖核心)</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.goto(x,y) :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 絕對(duì)坐標(biāo)移動(dòng)(畫三角形常用)</b></p><p class="ql-block">- turtle.forward(n)/turtle.fd(n) :</p><p class="ql-block"> 向前走n像素</p><p class="ql-block">- turtle.backward(n)/turtle.bk(n) :</p><p class="ql-block"> 向后退n像素</p><p class="ql-block">- turtle.setpos(x,y) :</p><p class="ql-block"> 同goto,定位絕對(duì)坐標(biāo)</p><p class="ql-block">- turtle.home() :</p><p class="ql-block"> 回到原點(diǎn)(0,0),朝向默認(rèn)右</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">三、 方向旋轉(zhuǎn)函數(shù)(調(diào)整角度)</b></p><p class="ql-block">- <b style="color:rgb(237, 35, 8);">turtle.left(angle)/turtle.lt(angle) : </b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 向左轉(zhuǎn)angle度</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.right(angle)</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> /turtle.rt(angle) :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 向右轉(zhuǎn)angle度</b></p><p class="ql-block">- turtle.setheading(angle)</p><p class="ql-block"> /turtle.seth(angle) :</p><p class="ql-block"> 設(shè)置朝向(0右、90上、180左、270下)</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">四、 畫筆控制函數(shù)(落筆/抬筆/樣式)</b></p><p class="ql-block">- <b style="color:rgb(237, 35, 8);">turtle.pendown()/turtle.pd() :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 落筆(開始繪圖,默認(rèn))</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.penup()/turtle.pu() :</b></p><p class="ql-block"> <b style="color:rgb(237, 35, 8);">抬筆(移動(dòng)不畫線,定位用)</b></p><p class="ql-block">- turtle.pensize(n) :</p><p class="ql-block"> 設(shè)置畫筆粗細(xì)(n為數(shù)值)</p><p class="ql-block">- turtle.pencolor("顏色") :</p><p class="ql-block"> 設(shè)置畫筆顏色(紅/blue/#000)</p><p class="ql-block">- turtle.speed(n) :</p><p class="ql-block"> 繪圖速度(0最快,1-10遞增)</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">五、 填充函數(shù)(給圖形上色)</b></p><p class="ql-block">-<b style="color:rgb(237, 35, 8);"> turtle.begin_fill() :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 開始填充(畫圖形前用)</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.end_fill() :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 結(jié)束填充(圖形畫完用)</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);">- turtle.fillcolor("顏色") :</b></p><p class="ql-block"><b style="color:rgb(237, 35, 8);"> 設(shè)置填充顏色</b></p><p class="ql-block"> </p><p class="ql-block">六、 畫布/窗口設(shè)置函數(shù)(美化)</p><p class="ql-block">- turtle.bgcolor("顏色") :</p><p class="ql-block"> 設(shè)置畫布背景色</p><p class="ql-block">- turtle.title("標(biāo)題") :</p><p class="ql-block"> 設(shè)置窗口標(biāo)題</p><p class="ql-block">- turtle.setup(w,h) :</p><p class="ql-block"> 設(shè)置窗口寬w、高h(yuǎn)</p><p class="ql-block">- turtle.hideturtle() :</p><p class="ql-block"> 隱藏畫筆箭頭</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">七、 文字標(biāo)注函數(shù)(加說明)</b></p><p class="ql-block">- turtle.write("文字") :</p><p class="ql-block"> 在當(dāng)前位置寫文字</p><p class="ql-block">- turtle.write("文字", align="center", font=("Arial",12,"bold")) :</p><p class="ql-block"> 對(duì)齊+字體設(shè)置</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">八、 圖形繪制快捷函數(shù)(實(shí)用)</b></p><p class="ql-block">- turtle.circle(r) :</p><p class="ql-block"> 畫半徑為r的圓</p><p class="ql-block">- turtle.dot(size, 顏色) :</p><p class="ql-block"> 畫指定大小顏色的圓點(diǎn)</p><p class="ql-block">- turtle.clear() :</p><p class="ql-block"> 清空畫布(保留畫筆)</p><p class="ql-block">- turtle.reset() :</p><p class="ql-block"> 清空畫布+畫筆回原點(diǎn)默認(rèn)狀態(tài)</p><p class="ql-block"> </p><p class="ql-block"><b style="color:rgb(237, 35, 8);">九、 窗口控制函數(shù)(進(jìn)階)</b></p><p class="ql-block">- turtle.bye() :</p><p class="ql-block"> 關(guān)閉繪圖窗口</p><p class="ql-block">- turtle.exit() :</p><p class="ql-block"> 點(diǎn)擊窗口關(guān)閉</p><p class="ql-block">- turtle.tracer(False) :</p><p class="ql-block"> 關(guān)閉動(dòng)畫(繪圖提速)</p><p class="ql-block">- turtle.update() :</p><p class="ql-block"> 手動(dòng)刷新畫布(關(guān)閉動(dòng)畫后用)</p>