免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
第一個python小程序

(程序開始階段——上一篇博客:https://www.cnblogs.com/love528/p/9873526.html

代碼資源來自:

http://n.miaopai.com/media/K9Qlou7rdPc5TxpPaL1VDvwfv5hP~lHK   (運行有錯誤,缺少date,week和結(jié)尾部分)

https://blog.csdn.net/yangxing2/article/details/78637472/

一、完整代碼:

# coding=UTF-8from turtle import *from datetime import *def Skip(step):               #建立表的外框    penup()    forward(step)    pendown()def mkHand(name,length):      #注冊turtle形狀,建立表針turtle    reset()    Skip(-length*0.1)    begin_poly()    forward(length*1.1)    end_poly()    handForm = get_poly()    register_shape(name,handForm)def Init():    global secHand,minHand,hurHand,printer    mode("logo")             #重置turtle指向北    mkHand("secHand",125)    #建立三個表針并初始化    mkHand("minHand",130)    mkHand("hurHand",90)    secHand = Turtle()    secHand.shape("secHand")    minHand = Turtle()    minHand.shape("minHand")    hurHand = Turtle()    hurHand.shape("hurHand")    for hand in secHand,minHand,hurHand:        hand.shapesize(1,1,3)        hand.speed(0)    printer = Turtle()        #建立輸出文字turtle    printer.hideturtle()    printer.penup()def SetupClock(radius):      #建立表外框    reset()    pensize(7)    for i in range(60):        Skip(radius)        if i % 5 == 0:            forward(20)            Skip(-radius-20)        else:            dot(5)            Skip(-radius)        right(6)def Week(t):    week = ["Mon", "Tues", "Wed","Thur", "Fri", "Sat", "Sun"]    return week[t.weekday()]def Date(t):    y = t.year    m = t.month    d = t.day    return "%s %d %d" % (y, m, d)def Tick():    t = datetime.today()    second = t.second + t.microsecond * 0.000001    minute = t.minute + second/60.0    hour = t.hour + minute/60.0    secHand.setheading(6*second)    minHand.setheading(6*minute)    hurHand.setheading(30*hour)    tracer(False)    printer.forward(65)    printer.write(Week(t),align="center",font=("Courier",14,"bold"))    printer.back(130)    printer.write(Date(t),align="center",font=("Courier",14,"bold"))    printer.home()    tracer(True)    ontimer(Tick,100)                #100ms后繼續(xù)調(diào)用tickdef main():    tracer(False)    Init()    SetupClock(160)    tracer(True)    Tick()    mainloop()if __name__ == "__main__":    main()

二、運行結(jié)果截圖

三、程序解讀

1、思路

  需求:5個Turtle對象, 1個繪制外表盤+1個輸出文字++3個模擬表上針
  Step1:建立5個Turtle對象并初始化 (表盤繪制和文本輸出對象是turtle常見的對象方式;turtle的外觀shape就是指針形狀,在每一時刻以軸心為圓心旋轉(zhuǎn)了一定角度)
  Step2:靜態(tài)表盤繪制 
  Step3:根據(jù)時鐘更新表針位置與時間信息 
  基本庫:Turtle、datetime

2、代碼

(1)from turtle import *

  Turtle庫——Python語言中一個很流行的繪制圖像的函數(shù)庫,想象一個小烏龜(畫筆),在一個橫軸為x、縱軸為y的坐標系(畫布),根據(jù)一組函數(shù)指令的控制,在平面坐標系中移動,從而在它爬行的路徑上繪制了圖形。

        操縱海龜繪圖有3種命令:

    運動命令

    

    畫筆控制命令

    

    全局控制命令

     

    還有其他命令

    

(2)from datetime import *

  datetime模塊重新封裝了time模塊,提供了更多處理日期和時間的接口。包含以下幾個類和兩個常量:

  

  

  每個類中定義了很多屬性和方法,包括對時間的調(diào)用及格式轉(zhuǎn)換等問題在此不再贅述。

(3)幾個重要的函數(shù)  (代碼中的函數(shù)寫成mode(),而不用寫成turtle.mode(),是因為turtle是python的標準庫,在python項目里不會提示“unresolved reference ‘xxx’”,但在解釋器為python2.7的python文件中不會有提示。此提示不影響代碼運行)

  SetupClock(radius):        繪制表盤,表盤半徑radius為參數(shù)

    設置畫筆大小,通過60次循環(huán)繪制刻度,每5個刻度為短線段,其余為小圓點。

  Skip(step):                       由于表盤刻度不連續(xù),需頻繁抬起畫筆,放下畫筆

  mkHand(name,length):    定義指針幾何形狀。

    使用兩個函數(shù)begin_poly() 、end_poly()記錄多邊形形狀,register_shape函數(shù)將handForm幾何形狀注冊為合法的turtle外形.

  Init():                                初始化表針和文本對象

  Tick():                              繪制表針的動態(tài)顯示

    獲取當前的時分秒,設置每個指針轉(zhuǎn)動的角度,繪制星期與日期文本,每隔100ms調(diào)用此函數(shù)更新時間

  tracer(False) :                  實現(xiàn)繪制的效果同時出現(xiàn),用tracer函數(shù)控制刷新,false時動畫關(guān)閉,繪制結(jié)束后一致刷新;true時恢復動畫的繪制效果

     mainloop():                      啟動事件循環(huán) -調(diào)用Tkinter的mainloop函數(shù)。必須是烏龜圖形程序中的最后一個語句。

 

 

 

the end.......

 

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python|心型的繪制
用 Python 畫動態(tài)時鐘
Python turtle模塊中常用方法
《計算機二級Python語言程序設計考試》第9章:Python標準庫概覽
python海龜畫圖方法匯總,繪圖案例實戰(zhàn)!
Python程序打包為exe可執(zhí)行文件
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服