天天看點

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

本節知識點

1. 設定畫布大小

2. 兩個案例對比分析

3. 複習自定義函數

案例:餐布桌布設計

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

課堂筆記

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用
python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用
python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

作業布置

1、完成視訊中兩款餐布桌布的圖案設計。

2、自己設計一款餐布桌布(可參考網上的圖案)。

3、多嘗試用自定義函數去簡化主程式。

4、畫五角星,并思考随機星空的繪制思路。

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

觀察并思考

星星的位置、大小、顔色

有哪些變化?

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

代碼分享

此處的代碼隻做參考,同一個問題可以有很多種解決方法,同一種解決方法也可以用不同的代碼去實作。

對比分析以下兩個案例中的相同點和不同點。

根據畫布的寬和高,平均分布線或點。并推到出循環次數的計算公式是本案例的難點。

【餐布桌布設計1   效果展示】

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用
# 餐布桌布設計1  | 灰底白線# 程式初始化操作import turtle            # 導入 turtle 庫turtle.setup(800,600)    # 設定視窗的大小為 寬800*高600像素,視窗位于螢幕中心。turtle.pensize(2)        # 設定畫筆的粗細為 2turtle.bgcolor("gray")   # 設定背景顔色為 grayturtle.pencolor("white") # 設定畫布顔色為 whiteturtle.speed(0)          # 設定海龜的繪圖速度為0,最快。參數為1時最慢。# 海龜畫橫線x=-400                   # 将 x坐标 初始化為 -400y=300                    # 将 y坐标 初始化為 300i=1while i<=16:             # 确定循環次數 ,畫【15+1】行橫線    turtle.penup()       # 畫筆擡起    turtle.goto(x,y)     # 讓海龜移至坐标(-400,300),即視窗的左上角。    turtle.pendown()     # 畫筆落下    turtle.forward(800)  # 海龜向前走800像素,畫出一條800像素長的橫線    y=y-40               # 每次循環将y坐标減少40,【600/40=15】将畫布上線平均分成15塊。要畫出16行橫線    i=i+1# 讓海龜頭朝下,準備畫豎線turtle.right(90)# 海龜畫豎線x=-400y=300j=1while j<=21:             # 确定循環次數,畫【20+1】列豎線    turtle.penup()       # 畫筆擡起    turtle.goto(x,y)     # 讓海龜移至坐标(-400,300),即視窗的左上角。    turtle.pendown()     # 畫筆落下    turtle.forward(600)  # 海龜向前走600像素,畫出一條600像素長的豎線    x=x+40               # 每次循環将x坐标增加40,【800/40=20】将畫布左右平均分成20塊。要畫出21行豎線    j=j+1turtle.hideturtle()      # 隐藏海龜
           

【餐布桌布設計2   效果展示】

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用
# 餐布桌布設計2 | 粉底白點# 程式初始化操作import turtle                 # 導入 turtle 庫turtle.setup(800,600)         # 設定視窗的大小為 800*600像素,視窗位于螢幕中心turtle.colormode(255)         # 改變顔色模式為RGBturtle.bgcolor(255,160,180)   # 設定背景顔色為 255,160,180 (粉色系)turtle.speed(0)               # 設定海龜的繪圖速度為0,最快。#turtle.delay(0)               # 海龜繪圖延遲時間設定為0,繪圖速度最快x=-350                        # 将 x坐标 初始化為-330y=250                         # 将 y坐标 初始化為300# 自定義函數,海龜畫一行白點(1行 i 個)def draw_line():                        # 自定義函數(無參函數) draw_line    turtle.penup()                      # 畫筆擡起    turtle.goto(x,y)                    # 海龜移動至坐标(x,y)    i=1    while i<=15:                        # 一行列印出【16-1】個點        turtle.pendown()                # 畫筆落下        turtle.dot(20,(255,205,203))    # 畫直徑為20像素的點,顔色為 255,205,203        turtle.penup()                  # 畫筆擡起        turtle.forward(50)              # 每次循環畫完一個點後,海龜前進50像素 【800/50=16】        i=i+1# 主程式j=1while j<=11:                # 畫【12-1】行白點    draw_line()             # 調用自定義函數 draw_line    y=y-50                  # 每次循環将y坐标減少50像素,【600/50=12】    j=j+1turtle.hideturtle()         # 隐藏海龜
           

為了簡化案例,代碼中将畫布的大小設定為固定值,也可優化代碼,實作在任意大小的畫布上都可以平均分布畫線或點。(提示:需要定義有參函數)

-----

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

end-----

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

程式設計風已至,我們需迎風前行

『 成功的路上并不擁擠,

因為堅持下來的人不多。』

期待……

你是堅持的那一個

python海龜繪圖_Python第25課:海龜繪圖_自定義函數的應用

點選左下方"", 可檢視 Python 所有課程目錄