用python畫(huà)個(gè)敬業(yè)福字代碼
前言
春節(jié)快到了,一年一度的支付寶集五?;顒?dòng)就要來(lái)了,阿牛也是突發(fā)奇想,看能不能用python的turtle庫(kù)畫(huà)個(gè)"福"字,試了很久,我的這個(gè)“福“”字終于看起來(lái)可以了,現(xiàn)將源碼分享給大家,拿過(guò)去放到python的環(huán)境中就可以直接運(yùn)行哦!嘿嘿嘿!這五福手到擒來(lái)啦!
海龜畫(huà)筆的介紹
海龜繪圖是 Python 內(nèi)置的一個(gè)比較有趣的模塊,模塊名稱為 turtle,并且依賴python內(nèi)置的tkinter模塊。它最初源于 20世紀(jì)60年代 的 Logo 語(yǔ)言,之后成為了 Python 的內(nèi)置模塊。海龜繪圖提供了一些簡(jiǎn)單的繪圖方法,可以根據(jù)編寫(xiě)的控制指令(代碼),讓一個(gè) “海龜” 在屏幕上來(lái)回移動(dòng),而且可以在它爬行的路徑上繪制圖形。通過(guò)海龜繪圖,不僅可以在屏幕上繪制圖形,還可以看到整個(gè)繪制過(guò)程。另外,海龜繪圖對(duì)初學(xué)者十分友好,它能夠輕松地編寫(xiě)出很多有趣的實(shí)例。
海龜繪圖的三要素:
采用海龜繪圖有三個(gè)關(guān)鍵要素,即方向、位置和畫(huà)筆。在進(jìn)行海龜繪圖時(shí),主要就是控制這些要素來(lái)繪出我們想要的圖形。
主要方法:
方向: 在進(jìn)行海龜繪圖時(shí),方向主要用于控制海龜?shù)囊苿?dòng)方向。
left()/lt() 方法:讓海龜左轉(zhuǎn) (逆時(shí)針) 指定度數(shù)。 right()/rt() 方法:讓海龜右轉(zhuǎn) (順時(shí)針) 指定度數(shù)。 setheading()/seth() 方法:設(shè)置海龜?shù)某驗(yàn)?(東)、90(北)、180(西)或 270(南)
位置: 在進(jìn)行海龜繪圖時(shí),位置主要用于控制海龜移動(dòng)的距離。
forward(distance)/fd(distance):讓海龜向前移動(dòng)指定距離。 backward(distance)/bk(distance):讓海龜向后退指定距離。 goto(x,y):讓海龜移動(dòng)到畫(huà)布中的特定位置。即坐標(biāo) (x,y) 所指定的位置。 setx(x):設(shè)置海龜?shù)臋M坐標(biāo)到 x,縱坐標(biāo)不變。 sety(y):設(shè)置海龜?shù)目v坐標(biāo)到 y,橫坐標(biāo)不變。 home():海龜移至初始坐標(biāo)(0,0),并設(shè)置朝向?yàn)槌跏挤较颉?
畫(huà)筆:海龜繪圖中的畫(huà)筆就相當(dāng)于現(xiàn)實(shí)生活中繪圖所用的畫(huà)筆。在海龜繪圖中,通過(guò)畫(huà)筆可以控制線條的粗細(xì)、顏色和運(yùn)動(dòng)的速度。
pensize() 設(shè)置畫(huà)筆的寬度(畫(huà)筆線條粗細(xì)為指定大?。?; pencolor() 沒(méi)有參數(shù)傳入,返回當(dāng)前畫(huà)筆顏色,傳入?yún)?shù)設(shè)置畫(huà)筆顏色,可以是字符串如"green","red",也可以是rgb顏色元組。 speed(speed) 設(shè)置畫(huà)筆移動(dòng)速度,畫(huà)筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大畫(huà)的越快。
“福”字源碼
from turtle import * screensize(800,600,"red") #設(shè)置畫(huà)布大小,且將背景變?yōu)榧t色 pensize(50) #畫(huà)筆大小 pencolor('black') #畫(huà)筆顏色 shape("circle") #形狀為圓 speed(3) #畫(huà)筆速度,參數(shù)越大,速度越快 """繪制福字左側(cè)偏旁""" #畫(huà)點(diǎn) seth(-60) #畫(huà)筆方向(參數(shù)相當(dāng)于度數(shù)) penup() #抬筆 bk(240) #后退 seth(-45) pendown() #落筆 fd(50) #前進(jìn) #畫(huà)橫 seth(45),penup(),bk(135) seth(15),pendown(),fd(135) #畫(huà)撇 seth(-125),pendown(),fd(200) #畫(huà)豎 seth(55),penup(),fd(150) seth(-90),pendown(),fd(220) #畫(huà)點(diǎn) seth(90),penup(),fd(220) seth(-45),pendown(),fd(60) """畫(huà)福字右側(cè)部分""" #######畫(huà)一 seth(70),penup(),fd(190) seth(10),pendown(),fd(120) #######畫(huà)口 seth(38),penup(),bk(150) #畫(huà)豎 seth(-85),pendown(),fd(85),penup(),bk(85) #畫(huà)橫 seth(10),pendown(),fd(120) #畫(huà)豎 seth(-95),pendown(),fd(90) #畫(huà)橫 seth(9),penup(),bk(95),pendown(),fd(95) #######畫(huà)田 seth(38),penup(),bk(165) #畫(huà)豎 seth(-85),pendown(),fd(110),penup(),bk(110) #畫(huà)橫 seth(10),pendown(),fd(175) #畫(huà)豎 seth(-95),pendown(),fd(145) #畫(huà)口里的橫 penup(),bk(85),pensize(30) seth(-170),fd(150),pendown(),bk(150) #畫(huà)口里的豎 seth(165),penup(),fd(85) seth(-90),pendown(),fd(90) #畫(huà)橫 seth(4),penup(),bk(60),pendown(),pensize(50),fd(120) hideturtle() #隱藏畫(huà)筆的turtle形狀 mainloop() #tkinter模塊的事件循環(huán)函數(shù),讓幕布畫(huà)完圖不關(guān)閉,等價(jià)于done()
結(jié)果展示
總結(jié)
到此這篇關(guān)于用python畫(huà)個(gè)敬業(yè)福字代碼的文章就介紹到這了,更多相關(guān)python畫(huà)福內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python游戲開(kāi)發(fā)實(shí)例之graphics實(shí)現(xiàn)AI五子棋
五子棋是經(jīng)典的棋牌類(lèi)游戲,很多人都玩過(guò),那么如何用Python實(shí)現(xiàn)五子棋呢,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11如何用Python Beautiful?Soup解析HTML內(nèi)容
Beautiful Soup是一種Python的解析庫(kù),主要用于解析和處理HTML/XML內(nèi)容,詳細(xì)介紹Beautiful Soup的使用方式和應(yīng)用場(chǎng)景,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05python爬取網(wǎng)頁(yè)轉(zhuǎn)換為PDF文件
這篇文章主要為大家詳細(xì)介紹了python爬取網(wǎng)頁(yè)轉(zhuǎn)換為PDF文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06Python SMTP發(fā)送郵件遇到的一些問(wèn)題及解決辦法
今天小編就為大家分享一篇關(guān)于Python SMTP發(fā)送郵件遇到的一些問(wèn)題及解決辦法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10一步步教你用python連接oracle數(shù)據(jù)庫(kù)
oracle作為最強(qiáng)大的數(shù)據(jù)庫(kù),Python也提供了足夠的支持。不過(guò)與其他數(shù)據(jù)庫(kù)略有不同,下面這篇文章主要給大家介紹了關(guān)于如何使用python連接oracle數(shù)據(jù)庫(kù)的相關(guān)資料,需要的朋友可以參考下2023-04-04Python中numpy模塊常見(jiàn)用法demo實(shí)例小結(jié)
這篇文章主要介紹了Python中numpy模塊常見(jiàn)用法,結(jié)合實(shí)例形式總結(jié)分析了numpy常見(jiàn)的運(yùn)算操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-03-03