用python畫個敬業福字代碼
前言
春節快到瞭,一年一度的支付寶集五福活動就要來瞭,阿牛也是突發奇想,看能不能用python的turtle庫畫個"福"字,試瞭很久,我的這個“福“”字終於看起來可以瞭,現將源碼分享給大傢,拿過去放到python的環境中就可以直接運行哦!嘿嘿嘿!這五福手到擒來啦!
海龜畫筆的介紹
海龜繪圖是 Python 內置的一個比較有趣的模塊,模塊名稱為 turtle,並且依賴python內置的tkinter模塊。它最初源於 20世紀60年代 的 Logo 語言,之後成為瞭 Python 的內置模塊。海龜繪圖提供瞭一些簡單的繪圖方法,可以根據編寫的控制指令(代碼),讓一個 “海龜” 在屏幕上來回移動,而且可以在它爬行的路徑上繪制圖形。通過海龜繪圖,不僅可以在屏幕上繪制圖形,還可以看到整個繪制過程。另外,海龜繪圖對初學者十分友好,它能夠輕松地編寫出很多有趣的實例。
海龜繪圖的三要素:
采用海龜繪圖有三個關鍵要素,即方向、位置和畫筆。在進行海龜繪圖時,主要就是控制這些要素來繪出我們想要的圖形。
主要方法:
方向: 在進行海龜繪圖時,方向主要用於控制海龜的移動方向。
left()/lt() 方法:讓海龜左轉 (逆時針) 指定度數。 right()/rt() 方法:讓海龜右轉 (順時針) 指定度數。 setheading()/seth() 方法:設置海龜的朝向為0(東)、90(北)、180(西)或 270(南)
位置: 在進行海龜繪圖時,位置主要用於控制海龜移動的距離。
forward(distance)/fd(distance):讓海龜向前移動指定距離。 backward(distance)/bk(distance):讓海龜向後退指定距離。 goto(x,y):讓海龜移動到畫佈中的特定位置。即坐標 (x,y) 所指定的位置。 setx(x):設置海龜的橫坐標到 x,縱坐標不變。 sety(y):設置海龜的縱坐標到 y,橫坐標不變。 home():海龜移至初始坐標(0,0),並設置朝向為初始方向。
畫筆:海龜繪圖中的畫筆就相當於現實生活中繪圖所用的畫筆。在海龜繪圖中,通過畫筆可以控制線條的粗細、顏色和運動的速度。
pensize() 設置畫筆的寬度(畫筆線條粗細為指定大小); pencolor() 沒有參數傳入,返回當前畫筆顏色,傳入參數設置畫筆顏色,可以是字符串如"green","red",也可以是rgb顏色元組。 speed(speed) 設置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數,數字越大畫的越快。
“福”字源碼
from turtle import * screensize(800,600,"red") #設置畫佈大小,且將背景變為紅色 pensize(50) #畫筆大小 pencolor('black') #畫筆顏色 shape("circle") #形狀為圓 speed(3) #畫筆速度,參數越大,速度越快 """繪制福字左側偏旁""" #畫點 seth(-60) #畫筆方向(參數相當於度數) penup() #抬筆 bk(240) #後退 seth(-45) pendown() #落筆 fd(50) #前進 #畫橫 seth(45),penup(),bk(135) seth(15),pendown(),fd(135) #畫撇 seth(-125),pendown(),fd(200) #畫豎 seth(55),penup(),fd(150) seth(-90),pendown(),fd(220) #畫點 seth(90),penup(),fd(220) seth(-45),pendown(),fd(60) """畫福字右側部分""" #######畫一 seth(70),penup(),fd(190) seth(10),pendown(),fd(120) #######畫口 seth(38),penup(),bk(150) #畫豎 seth(-85),pendown(),fd(85),penup(),bk(85) #畫橫 seth(10),pendown(),fd(120) #畫豎 seth(-95),pendown(),fd(90) #畫橫 seth(9),penup(),bk(95),pendown(),fd(95) #######畫田 seth(38),penup(),bk(165) #畫豎 seth(-85),pendown(),fd(110),penup(),bk(110) #畫橫 seth(10),pendown(),fd(175) #畫豎 seth(-95),pendown(),fd(145) #畫口裡的橫 penup(),bk(85),pensize(30) seth(-170),fd(150),pendown(),bk(150) #畫口裡的豎 seth(165),penup(),fd(85) seth(-90),pendown(),fd(90) #畫橫 seth(4),penup(),bk(60),pendown(),pensize(50),fd(120) hideturtle() #隱藏畫筆的turtle形狀 mainloop() #tkinter模塊的事件循環函數,讓幕佈畫完圖不關閉,等價於done()
結果展示
總結
到此這篇關於用python畫個敬業福字代碼的文章就介紹到這瞭,更多相關python畫福內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 用Python畫聖誕樹代碼示例
- 詳解Python如何利用turtle繪制中國結
- Python中turtle繪圖模塊的詳細講解
- python turtle庫畫聖誕樹詳細代碼教程
- Python的turtle繪圖庫使用基礎