網(wǎng)站首頁 編程語言 正文
彩色圓環(huán)更漂亮
A.課程內(nèi)容
通過繪制彩色的圓環(huán)來學習列表的使用方法、顏色的使用技巧等,通過學習掌握python程序繪制彩色的圖形的方法。
B.知識點
(1)繪制圓形
(2)設置畫筆顏色
(3)變換畫筆顏色的技巧
(4)列表使用技巧
C.用到的基本指令
(1)import
(2)turtle.Pen()
(3)circle()
(4)right()
(5)for循環(huán)
(6)range()
D.繪制漂亮的圓圖形
前面我們已經(jīng)學習通過t.forward(x)語句來讓海龜畫筆來畫直線段的方法,那能不能讓海龜畫圓形呢?當然可以,可以通過t.circle(x)語句來畫出一個半徑為x的圓。其實,只要將之前編寫的程序中的t.forward(x)語句修改為t.circle(x)語句,即可讓海龜繪制一個復雜的圖形,如圖所示:
t.circle(x)語句可以繪制一個半徑為x的圓,每循環(huán)一次,x的值就增加1,所畫圓的半徑就增加1。畫完一個圓后,畫筆就旋轉(zhuǎn)90°。
提示:
circle()命令中如果只有一個參數(shù),則表示半徑:
如果有兩個參數(shù),如circle(10,180),則第一個參數(shù)10為半徑,第二個參數(shù)180為度數(shù)。加上第二個參數(shù)可以繪制圓弧和圓。circle(10,180)繪制出來的圖形為半圓。
E.給圖形添加顏色
之前我們繪制的都是黑色的圖形,接下來我們讓海龜畫筆畫出彩色的圖形。要繪制彩色的圖形,只要將海龜畫筆的顏色變成其他顏色即可。通過t.pencolor(‘red’)語句來設置畫筆顏色。
常用的顏色包括bule(藍色)、green(綠色)、yellow(黃色)、white(白色)、black(黑色)、purple(紫色)、brown(棕色)、gray(灰色)等。
上面講解了將畫筆設置為一種顏色的方法,可不可以讓每個方向的圓環(huán)使用一種顏色呢》這樣會更漂亮。如下圖所示:
上面的程序是如何執(zhí)行的呢?
(1)首先導入海龜繪圖模塊,并將變量t設置為海龜?shù)漠嫻P;然后創(chuàng)建列表colors,并加入red、yellow、blue、green四個元素。
(2)接著range(100)會生成從0到99的連續(xù)的數(shù);t.circle(x)語句讓海龜畫筆畫出一個以x為半徑的圓;t.right(90)語句讓海龜畫筆向右轉(zhuǎn)動90°。
(3)首次執(zhí)行循環(huán)時,for循環(huán)先訪問range列表中的第一個元素0,并將0存儲在變量x中,變量x的值變?yōu)榱?,0除以4得到余數(shù)0.然后執(zhí)行colors[0],從列表colors中取第一個元素“red”作為畫筆顏色的參數(shù)。接著將畫筆顏色設置為紅色(red),并畫一個半徑為0的圓,然后畫筆向右轉(zhuǎn)動90°
(4)執(zhí)行第二次循環(huán),for循環(huán)訪問range列表中的第二個元素1,并將1存儲在變量x中,變量x的值變?yōu)榱?。1除以4得到余數(shù)1,然后執(zhí)行colors[1],從列表colors中取第二個元素“yellow”作為畫筆顏色的參數(shù)。接著將畫筆顏色設置為黃色,畫一個半徑為1的圓,然后畫筆向右轉(zhuǎn)動90°。
(5)這樣一次一次地繼續(xù)執(zhí)行,當for循環(huán)遍歷range中最后一個元素99時,變量x的值變?yōu)?9,99除以4得到余數(shù)3,然后執(zhí)行colors[3],從列表colors中取第四個元素“green”作為畫筆顏色的參數(shù)。接著將畫筆顏色設置為綠色(green),畫一個半徑為99的圓,然后畫筆向右轉(zhuǎn)動90°。這樣就畫出一個四種顏色的圖形。
提示:A除以B,如果A比B小,則相除后的余數(shù)是它自己。比如1除以4,余數(shù)為1。
原文鏈接:https://www.jianshu.com/p/1d45191aff3b
相關推薦
- 2022-07-07 Python數(shù)據(jù)分析之?Matplotlib?散點圖繪制_python
- 2022-07-20 python出現(xiàn)RuntimeError錯誤問題及解決_python
- 2023-12-15 Linux vi 命令保存與退出 使用詳解
- 2022-04-18 Taro編譯小程序的時候,就沒有錄音權限,沒有scope.record這個權限
- 2022-04-08 從頭學習C語言之字符串處理函數(shù)_C 語言
- 2022-06-08 優(yōu)化使用Feign進行Rpc調(diào)用,支持對象傳參自動轉(zhuǎn)換
- 2023-06-04 Pandas通過index選擇并獲取行和列_python
- 2022-11-21 Go語言讀寫鎖RWMutex的源碼分析_Golang
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支