今天很興奮,只用了一小段Python turtle代碼(附在文末)就把電腦變成了繪畫大師,太神奇了。
仿佛有種悟道的感覺,哈哈。編程之美就是一種簡(jiǎn)單重復(fù)的哲學(xué)。
其實(shí)縱觀計(jì)算機(jī)程序的本質(zhì),也不過(guò)是0與1的結(jié)合。
絕招:簡(jiǎn)單的元素,重復(fù)、重復(fù)、再重復(fù)。
工具:Python IDLE
我們先看下效果圖吧:




代碼解釋:draw()函數(shù)——畫閉合圖形;runTurtle()------畫一個(gè)類圖效果圖1的圖案單元;main()函數(shù)就是隨機(jī)創(chuàng)作的函數(shù),效果圖2-3就是它的作品。
你需要做什么?只要做一件事情——修改數(shù)字!
第一層次的電腦畫家:
用runTurtle()函數(shù),修改參數(shù)。
第二層次的電腦畫家:
用main()函數(shù),修改參數(shù)
第三層次的畫家:
結(jié)合runTurtle()函數(shù)、main()函數(shù)、修改參數(shù)、同時(shí)在Python shell中進(jìn)行互動(dòng)操作(位置、筆觸顏色粗細(xì))、寫上藝術(shù)字。
附錄:代碼
```
from turtle import *
import random
def draw(numOfLine,lenghth):#numOfLine代表邊數(shù),lenghth邊長(zhǎng)
? ? for i in range(numOfLine):
? ? ? ? forward(lenghth)
? ? ? ? right(180-180*(numOfLine-2)/numOfLine)
def runTurtle(numOfObj,angle,numofL,Len):#numOfObj形狀個(gè)數(shù),angle旋轉(zhuǎn)角度
? ? for i in range(numOfObj):
? ? ? ? draw(numofL,Len)
? ? ? ? right(angle)
def main(num):
? ? screensize(800,600,'white')
? ? for i in range(num):
? ? ? ? turtleX=random.randint(-400,400)
? ? ? ? turtleY=random.randint(-300,300)
? ? ? ? penup()
? ? ? ? goto(turtleX,turtleY)
? ? ? ? pendown()
? ? ? ? runTurtle(36,10,4,100*random.random())
```