<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Python Turtle繪圖:寫福字(加光束 / 水印文字)【難度2星】 ![](http://h.yiniuedu.com/b59449b5b4b5d6cf27687c0cb718244a) **春節快到了,用Python寫個福字,祝大家福如東海~福與天齊~** **案例1:寫福字(加光束)** 難度:★★☆☆☆☆ ?【配色參考】 **“從喜歡的圖片中找尋配色靈感”** ![](http://h.yiniuedu.com/8e3912de76be6c3644fd0ec8d82daccb) **【重難點突破】** **1. 鏈接初二數學**下冊**知識點——勾股定理** ![](http://h.yiniuedu.com/1e9b6ae1d8184c6f524e992fdbe16d50) **海龜畫旋轉90度的正方形**,關鍵是要確定兩條邊的長度。一條是正方形內等腰直角三角形的直角邊a;另一條是等腰直角三角形的斜邊b,也就是正方形的邊長。 求a和b的關系,需要用到初二數學下冊中的“勾股定理”。**等腰直角三角形的斜邊=√2倍的直角邊。** 求等腰直角三角形斜邊與直角邊的關系? 解:設等腰直角三角形的兩個直角邊為a,斜邊為b, 根據勾股定理 a2+a2=b2 2a2=b2 √2a=b ?? ? ?即斜邊=√2倍的直角邊。 **編程是對課本上數學知識的真正實踐。** **如果還沒上初二的同學,只需要記住結論就好。** **2. 在Python中如何表示“根號2”** ![](http://h.yiniuedu.com/667dddce48eedfb3504ade871f0ce3b5) **3. home( )和setheading(??)函數的區別** home( ) 函數:讓海龜返回原點。 即不管海龜在什么位置,都可以使海龜移至坐標(0,0)位置,并且頭部為初始方向(朝右)。 setheading( ):只能設置海龜的頭部朝向。 setheading(0) 海龜朝右,setheading(180)?海龜朝左, setheading(90)?海龜朝上,setheading(-90) 海龜朝下。 **【代碼參考】** 以下將會分5個步驟來逐漸實現“寫福字”~ **第1步:畫光束** **第2步:畫紅紙灰色陰影** **第3步:畫正方形紅紙** **第4步:寫文字** 畫簡易坐標輔助寫字,會發現海龜寫字的特點: ![](http://h.yiniuedu.com/943e48de187b8d711b22e1261c99b63e) align參數省略 **寫在海龜右上方** ![](http://h.yiniuedu.com/bbe315a06b5d862ffb3f8d15fdb47280) align="center" **寫在海龜正上方** align參數:省略即按默認(align="left"),文字會寫在海龜的右上方位置。align="center",居中對齊時,文字會寫在海龜的正上方位置。 字號越大效果越明顯。所以如果我們想讓海龜在紅紙正中心寫字,海龜就要移到紅紙的下方。具體海龜要從紅紙中心向下移動多少像素,需要反復運行看效果調試。 **第5步:整合前4步代碼,完成“寫福字”** 以下是案例1“寫福字(加光束)”的最終代碼 ``` # 案例1:寫福字(加光束) ### 程序初始化設置 import turtle # 導入turtle庫(模塊) turtle.bgcolor("#ffaa36") # 設置背景顏色為#ffaa36,一種橘色。 turtle.speed(0) ### ① 畫光束 turtle.pensize(5) # 設置光束的粗線 turtle.color("#ffc373") # 設置光束的顏色 for i in range(30): turtle.forward(250) turtle.backward(250) turtle.left(6) turtle.forward(300) turtle.backward(300) turtle.left(6) # turtle.speed(10) #可減慢畫正方形和寫字的速度。 ### ②畫紅紙灰色陰影 turtle.color("#404040") # 同時設置畫筆和填充顏色都為#404040,一種深灰色。 a=200 # 正方形內等腰直角三角形的直角邊為a b=2**0.5*a # 斜邊為b ,等腰直角三角形的斜邊=√2倍的直角邊 turtle.penup() turtle.home() # 步驟1光束畫完后,讓海龜返回原點,即海龜移動至坐標(0,0),并設置朝向為初始方向(向右)。 turtle.forward(a) turtle.pendown() turtle.begin_fill() turtle.left(135) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.end_fill() ### ③ 畫正方形紅紙 turtle.color("#ea182a") # 同時設置畫筆和填充顏色都為#ea182a,一種紅色。 a=200 b=2**0.5*a turtle.penup() turtle.home() # 第2步灰色陰影畫完后,讓海龜返回原點,即海龜移動至坐標(0,0),并設置朝向為初始方向(向右)。 turtle.goto(0,8) turtle.forward(a) turtle.pendown() turtle.begin_fill() turtle.left(135) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.end_fill() ### ④ 寫文字“福” turtle.color("black") turtle.penup() turtle.home() # 讓海龜返回原點 turtle.setheading(-90) # 讓海龜頭部朝下 turtle.forward(150) # 讓海龜向下移動150個像素。這個數字需要不斷調試。 turtle.pendown() turtle.write("福", align="center",font=("對酒當歌行書",180,"bold")) ### 海龜繪圖結束,隱藏海龜 turtle.hideturtle() turtle.done() ``` ***** **案例2:** **寫福字(加文字水印)** 難度:★★☆☆☆☆ ?【效果預覽】 ![](http://h.yiniuedu.com/414b0e71f7d427ea7c414debabd538eb) ?【代碼參考】 溫馨提示:寫4列水印文字時,為了方便理解未使用循環嵌套,所以代碼較長。 ``` # 案例2:寫福字(加水印文字) import turtle # 導入turtle庫(模塊) turtle.bgcolor("#ffaa36") # 設置背景顏色為 turtle.speed(0) ### ① 寫水印文字 x1=-230 # 確定第1列水印文字的橫坐標位置 y1=210 # 確定第1列水印文字的縱坐標位置 # 寫第1列水印文字 turtle.color("#ffc373") for i in range(10) : turtle.penup() turtle.goto(x1,y1) turtle.pendown() turtle.write("沂牛教育", align="center",font=("對酒當歌行書",20,"bold")) y1=y1-50 # 寫第2列水印文字 x2=-70 # 第2列水印文字的坐標也可以使用變量x,對x重新賦值, y2=210 # 但為了方便理解,為每一列坐標都定義為不同的變量。 for i in range(10): turtle.penup() turtle.goto(x2,y2) turtle.pendown() turtle.write("虎年大吉", align="center",font=("對酒當歌行書",20,"bold")) y2=y2-50 # 寫第3列水印文字 x3=80 y3=210 for i in range(10): turtle.penup() turtle.goto(x3,y3) turtle.pendown() turtle.write("虎年大吉", align="center",font=("對酒當歌行書",20,"bold")) y3=y3-50 # 寫第4列水印文字 x4=230 y4=210 for i in range(10): turtle.penup() turtle.goto(x4,y4) turtle.pendown() turtle.write("喜愛少兒編程", align="center",font=("對酒當歌行書",20,"bold")) y4=y4-50 # 海龜寫完水印文字后,返回原點 turtle.penup() turtle.home() turtle.pendown() # turtle.speed(10) # 可減慢畫正方形和寫字的速度 ### ②畫灰色陰影 turtle.color("#404040") # 同時設置畫筆和填充顏色都為#404040,一種深灰色。 a=200 # 正方形內等腰直角三角形的直角邊為a b=2**0.5*a # 斜邊為b ,等腰直角三角形的斜邊=√2倍的直角邊 turtle.penup() turtle.home() # 步驟1光束畫完后,讓海龜返回原點,即海龜移動至坐標(0,0),并設置朝向為初始方向(向右)。 turtle.forward(a) turtle.pendown() turtle.begin_fill() turtle.left(135) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.end_fill() ### ③ 畫正方形紅紙 turtle.color("#ea182a") # 同時設置畫筆和填充顏色都為#ea182a,一種紅色。 a=200 b=2**0.5*a turtle.penup() turtle.home() # 第2步灰色陰影畫完后,讓海龜返回原點,即海龜移動至坐標(0,0),并設置朝向為初始方向(向右)。 turtle.goto(0,8) turtle.forward(a) turtle.pendown() turtle.begin_fill() turtle.left(135) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.left(90) turtle.forward(b) turtle.end_fill() ### ④ 寫文字“福” turtle.color("black") turtle.penup() turtle.home() # 讓海龜返回原點 turtle.setheading(-90) # 讓海龜頭部朝下 turtle.forward(150) # 讓海龜向下移動150個像素。這個數字需要不斷調試。 turtle.pendown() turtle.write("福", align="center",font=("對酒當歌行書",180,"bold")) ### 海龜繪圖結束,隱藏海龜 turtle.hideturtle() turtle.done() ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看