天天看點

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

來源:戀習Python

作者:丁彥軍

近期原創文章:

♥ 2018中國量化投資年度盤點【獨家】

♥ 利用深度學習最新前沿預測股價走勢

♥ 一位資料科學PhD眼中的算法交易

♥ 深度學習是信号處理和時序分析的最後選擇?

♥ 人工智能『AI』應用算法交易,7個必踩的坑!

♥ 神經網絡在算法交易上的應用系列(一)

♥ 預測股市 | 如何避免p-Hacking,為什麼你要看漲?

♥ 如何鑒别那些用深度學習預測股價的花哨模型?

剛剛

被《啥是佩奇》這支廣告片刷屏了

佩奇明明是個喜劇角色

卻看哭了所有人

一定要看啊!!!!!!

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

快過年了

在農村爺爺給城裡的小孫子打電話

小孫子說想要“佩奇”

為了滿足小孫子的願望

爺爺開始滿村子找佩奇

開片爺爺在電話這頭的一段話就很抓人心,

全世界的爺爺都是這樣疼孫兒的,

一下子就讓觀衆有共情的心理。

一句“什麼是佩奇?”

鋪墊了爺爺接下來的一段尋找佩奇之路,

最後爺爺找到的佩奇骨絡清奇,

卻是圈主見過的全世界最可愛的小豬佩奇!

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

不知道大家看完什麼感覺

反正我看完是哭了

我看網友們也紛紛留言

說自己哭笑兩重奏

看着爺爺滿村子找佩奇,我有點心疼了。為此我想用純粹的Python來告訴爺爺,啥是佩奇?

先看看效果視訊:

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

基本思路:

選好畫闆大小,設定好畫筆顔色,粗細,定位好位置,依次畫鼻子,頭、耳朵,眼睛,腮,嘴,身體,手腳,尾巴,完事。

都知道,turtle 是 python 内置的一個比較有趣味的子產品,俗稱 海龜繪圖,它是基于 tkinter 子產品打造,提供一些簡單的繪圖工具。

在海龜作圖中,我們可以編寫指令讓一個虛拟的(想象中的)海龜在螢幕上來回移動。這個海龜帶着一隻鋼筆,我們可以讓海龜無論移動到哪都使用這隻鋼筆來繪制線條。通過編寫代碼,以各種很酷的模式移動海龜,我們可以繪制出令人驚奇的圖檔。使用海龜作圖,我們不僅能夠隻用幾行代碼就建立出令人印象深刻的視覺效果,而且還可以跟随海龜看看每行代碼如何影響到它的移動。這能夠幫助我們了解代碼的邏輯。是以海龜作圖也常被用作新手學習 Python 的一種方式。更豐富詳細的功能及知識可以參考官方文檔:

https://docs.python.org/3/library/turtle.html

了解了turtle的用法之後就可以開始實戰了。

代碼示例:

from turtle import* def nose(x,y):#鼻子    penup()#提起筆    goto(x,y)#定位    pendown()#落筆,開始畫    setheading(-30)#将烏龜的方向設定為to_angle/為數字(0-東、90-北、180-西、270-南)    begin_fill()#準備開始填充圖形    a=0.4    for i in range(120):        if 0<=i<30 or 60<=i<90:            a=a+0.08            left(3) #向左轉3度            forward(a) #向前走a的步長        else:            a=a-0.08            left(3)            forward(a)    end_fill()#填充完成    penup()    setheading(90)    forward(25)    setheading(0)    forward(10)    pendown()    pencolor(255,155,192)#畫筆顔色    setheading(10)    begin_fill()    circle(5)    color(160,82,45)#傳回或設定pencolor和fillcolor    end_fill()    penup()    setheading(0)    forward(20)    pendown()    pencolor(255,155,192)    setheading(10)    begin_fill()    circle(5)    color(160,82,45)    end_fill()def head(x,y):#頭    color((255,155,192),"pink")    penup()    goto(x,y)    setheading(0)    pendown()    begin_fill()    setheading(180)    circle(300,-30)    circle(100,-60)    circle(80,-100)    circle(150,-20)    circle(60,-95)    setheading(161)    circle(-300,15)    penup()    goto(-100,100)    pendown()    setheading(-30)    a=0.4    for i in range(60):        if 0<=i<30 or 60<=i<90:            a=a+0.08            lt(3) #向左轉3度            fd(a) #向前走a的步長        else:            a=a-0.08            lt(3)            fd(a)    end_fill()

def cheek(x,y):#腮    color((255,155,192))    penup()    goto(x,y)    pendown()    setheading(0)    begin_fill()    circle(30)    end_fill()def mouth(x,y): #嘴    color(239,69,19)    penup()    goto(x,y)    pendown()    setheading(-80)    circle(30,40)    circle(40,80)def setting():          #參數設定    pensize(4)    hideturtle()        #使烏龜無形(隐藏)    colormode(255)      #将其設定為1.0或255.随後 顔色三元組的r,g,b值必須在0 .. cmode範圍内    color((255,155,192),"pink")    setup(840,500)    speed(10)def main():    setting()           #畫布、畫筆設定    nose(-100,100)      #鼻子    head(-69,167)       #頭    ears(0,160)         #耳朵    eyes(0,140)         #眼睛    cheek(80,10)        #腮    mouth(-20,30)       #嘴    done()if __name__ == '__main__': main()

思路其實很簡單,就是通過turtle子產品實作基本的圓,橢圓,曲線等,難點在于,如何定位每個部位的位置(建議先草圖畫畫)。

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

源碼擷取

在背景輸入

20190118

背景擷取方式介紹

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

推薦閱讀

01、經過多年交易之後你應該學到的東西(深度分享)

02、監督學習标簽在股市中的應用(代碼+書籍)

03、全球投行頂尖機器學習團隊全面分析

04、使用Tensorflow預測股票市場變動

05、使用LSTM預測股票市場基于Tensorflow

06、美麗的回測——教你定量計算過拟合機率

07、利用動态深度學習預測金融時間序列基于Python

08、Facebook開源神器Prophet預測時間序列基于Python

09、Facebook開源神器Prophet預測股市行情基于Python

10、2018第三季度最受歡迎的券商金工研報前50(附下載下傳)

11、實戰交易政策的精髓(公衆号深度呈現)

12、Markowitz有效邊界和投資組合優化基于Python

13、使用LSTM模型預測股價基于Keras

14、量化金融導論1:資産收益的程式化介紹基于Python

15、預測股市崩盤基于統計機器學習與神經網絡(Python+文檔)

16、實作最優投資組合有效前沿基于Python(附代碼)

17、精心為大家整理了一些超級棒的機器學習資料(附連結)

18、海量Wind資料,與全網使用者零距離邂逅!

19、機器學習、深度學習、量化金融、Python等最新書籍彙總下載下傳

20、各大賣方2019年A股政策報告,都是有故事的人!

公衆号官方QQ群

量化、技術人士深度交流群

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

掃碼關注我們

python海龜作圖不用循環_啥是佩琦?用Python畫給你看!

繼續閱讀