python制作一個實時鐘表

      網友投稿 1089 2022-05-28

      @TOC

      源代碼

      Python引入兩個內置庫turtle和datetime即可制作一個實時鐘表,代碼如下:

      # 用turtle畫時鐘 # 以自定義shape的方式實現 import turtle as t import datetime as d def skip(step): # 抬筆,跳到一個地方 t.penup() t.forward(step) t.pendown() def drawClock(radius): # 畫表盤 t.speed(0) t.mode("logo") # 以Logo坐標、角度方式 t.hideturtle() t.pensize(7) t.home() # 回到圓點 for j in range(60): skip(radius) if (j % 5 == 0): t.forward(20) skip(-radius - 20) else: t.dot(5) skip(-radius) t.right(6) def makePoint(pointName, len): # 鐘的指針,時針、分針、秒針 t.penup() t.home() t.begin_poly() t.back(0.1 * len) t.forward(len * 1.1) t.end_poly() poly = t.get_poly() t.register_shape(pointName, poly) # 注冊為一個shape def drawPoint(): # 畫指針 global hourPoint, minPoint, secPoint, fontWriter makePoint("hourPoint", 100) makePoint("minPoint", 120) makePoint("secPoint", 140) hourPoint = t.Pen() # 每個指針是一只新turtle hourPoint.shape("hourPoint") hourPoint.shapesize(1, 1, 6) minPoint = t.Pen() minPoint.shape("minPoint") minPoint.shapesize(1, 1, 4) secPoint = t.Pen() secPoint.shape("secPoint") secPoint.pencolor('red') fontWriter = t.Pen() fontWriter.pencolor('gray') fontWriter.hideturtle() def getWeek(weekday): weekName = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日'] return weekName[weekday] def getDate(year, month, day): return "%s-%s-%s" % (year, month, day) def getRealtime(): curr = d.datetime.now() curr_year = curr.year curr_month = curr.month curr_day = curr.day curr_hour = curr.hour curr_minute = curr.minute curr_second = curr.second curr_weekday = curr.weekday() t.tracer(False) secPoint.setheading(360 / 60 * curr_second) minPoint.setheading(360 / 60 * curr_minute) hourPoint.setheading(360 / 12 * curr_hour + 30 / 60 * curr_minute) fontWriter.clear() fontWriter.home() fontWriter.penup() fontWriter.forward(80) # 用turtle寫文字 fontWriter.write(getWeek(curr_weekday), align="center", font=("Courier", 14, "bold")) fontWriter.forward(-160) fontWriter.write(getDate(curr_year, curr_month, curr_day), align="center", font=("Courier", 14, "bold")) t.tracer(True) print(curr_second) t.ontimer(getRealtime, 1000) # 每隔1000毫秒調用一次realTime() def main(): t.tracer(False) drawClock(160) drawPoint() getRealtime() t.tracer(True) t.mainloop() if __name__ == '__main__': main()

      ==引用模塊==:turtle,datetime

      ==定義函數==:

      skip():重復指定動作

      python制作一個實時鐘表

      drawClock():畫表盤

      drawPoint():畫指針

      getWeek():顯示星期

      getDate():顯示日期

      getRealtime():顯示實時時間

      main():主函數

      運行效果如下:

      打包exe

      也可打包為exe,這樣在沒有編譯環境的情況下也可以運行(發給你的小伙伴展示一下你的技術,豈不美哉)

      效果如下(不會打包看我的博客pyinstaller打包exe詳細教程)

      這里就不做演示了,直接上效果圖

      以上就是利用turtle庫和datetime庫制作實時鐘表,如果覺得有幫助的話,三連支持一下,歡迎各位博主來訪~

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:ClickHouse表引擎簡單介紹
      下一篇:VirtualBox添加ISO文件
      相關文章
      亚洲三级在线播放| 中文字幕第13亚洲另类| 亚洲精品动漫免费二区| 亚洲精品第一国产综合精品99| 亚洲午夜精品国产电影在线观看| 久久99国产亚洲高清观看首页| 久久久久亚洲精品无码网址| 国产亚洲Av综合人人澡精品| 精品久久久久久久久亚洲偷窥女厕| 亚洲神级电影国语版| 亚洲色图综合网站| 91亚洲精品视频| 亚洲精品国产肉丝袜久久| 亚洲午夜视频在线观看| 亚洲好看的理论片电影| 精品亚洲麻豆1区2区3区| 亚洲人成电影亚洲人成9999网| 亚洲视频在线视频| 亚洲色图古典武侠| 亚洲18在线天美| 亚洲人配人种jizz| 亚洲精品动漫免费二区| 亚洲已满18点击进入在线观看| 亚洲xxxx18| 亚洲国产av玩弄放荡人妇| 亚洲一区二区无码偷拍| 亚洲AV女人18毛片水真多| 国产亚洲综合久久| 国产亚洲精aa成人网站| 国产亚洲福利精品一区| 亚洲国产日韩一区高清在线 | 亚洲精品无码专区久久| 亚洲精品成a人在线观看夫| 亚洲日韩在线中文字幕综合 | 最新亚洲成av人免费看| 国产成人亚洲综合色影视| 亚洲天天在线日亚洲洲精| 亚洲最大黄色网址| 亚洲乱码中文字幕在线| 亚洲国产成人精品女人久久久| 亚洲色大成网站www永久一区 |