Python学习笔记-Turtle库简单实例之日期时间显示
来源:互联网 发布:淘宝假冒品牌 自动退款 编辑:程序博客网 时间:2024/05/19 03:23
Python语言包含有不少图形工具包,强如Tkinter,底层如python的内置图形库Graphics和Turtle。Turtle库就是通过控制屏幕上小乌龟的移动轨迹绘制图形,本文的一系列操作主要和Turtle库有关。关于Turtle库的详细介绍:点击打开链接,本文仅对用到的几个函数作简要介绍:
引入方式:
import turtlefrom turtle import*控制画笔绘制状态的函数:
pendown() pd() down() 放下画笔penup() pu() up() 提起画笔控制画笔颜色和字体函数:
color() 参数为颜色,如:‘red’,'black'showturtle() st() 显示画笔hideturtle() ht() 隐藏画笔控制画笔运动的函数:
forward(distance) fd(distance) 使turtle前进distance个像素backward(distance) bk(distance) back(distance) 使turtle后退distance个像素right(angle) rt(angle) 运动方向向右转angle°left(angle) lt(angle) 运动方向向左转angle°setheading(angle) seth(angle) 重置方位角为angle(水平向右方向为0°方位角,水平方向顺时针转angle°为方位角angle°)position() pos() 返回画笔的位置(x,y)元组类型goto(x,y) 将画笔移动至(x,y)处Screen类函数:
setup(width,height,startx,starty) 建立一个宽为width像素,高为height像素的屏幕,起始点为(startx,starty)
使用例子:
1.首先引入turtle库和之后会用到的datetime库,定义了左转右转90°和前进后退20个像素点,初始化方位角的简约版函数:
from turtle import*import datetimedef L(): left(90)def R(): right(90) def F(): forward(20)def B(): backward(20)def S(): seth(0)2.定义绘制阿拉伯数字0-9的函数,所有的笔画均为直来直去(自行脑补),每个数字由之前定义的操作组成:
def draw0(): S() F() L() F() F() L() F() L() F() F()def draw1(i,n): #使得1居中 if i<n: up() goto(i*50+20,0) pd() if i>=n: up() goto((i-n)*50+20,-100) pd() seth(90) F() F() def draw2(): S() F() B() seth(90) F() R() F() L() F() L() F()def draw3(): S() F() L() F() L() F() B() seth(90) F() L() F()def draw4(i,n): #使得4靠右对齐 if i<n: up() goto(i*50+20,0) pd() if i>=n: up() goto((i-n)*50+20,-100) pd() seth(90) F() F() B() seth(180) F() R() F()def draw5(): S() F() L() F() L() F() R() F() R() F()def draw6(): draw5() B() seth(-90) F() F()def draw7(i,n): #使得4靠右对齐 if i<n: up() goto(i*50+20,0) pd() if i>=n: up() goto((i-n)*50+20,-100) pd() seth(90) F() F() L() F()def draw8(): draw0() B() S() F()def draw9(): S() F() L() F() F() L() F() L() F() L() F()3.定义主函数,使用datetime库中datetime类中的today()函数获取当前日期和时间,格式为"yyyy-mm-dd hh:mm:ss.xxxxxx"既包括年月日时分秒甚至毫秒。本文所用的信息仅为年月日时分秒,则通过字符串和列表等一系列操作(remove)去掉了‘-’和‘:’。在绘图时以年月日和时分秒中间的空格作为分节符,年月日放在第一行,时分秒安排在第二行,以红颜色的轨迹在宽1000高600的屏幕上通过循环来显示时间和日期。完成绘制后隐藏画笔。
def main(): time=str(datetime.datetime.today()) #用时间函数生成时间 number=list(time) #把'-'和':'去掉 for i in range(2): number.remove('-') number.remove(':') number=number[:15] setup(1000,600,0,0) pythonsize=5 pensize(pythonsize) pencolor('red') n=number.index(' ') speed(6) #画日期 for i in range(n): a=number[i] if a=='0':draw0() if a=='1':draw1(i,n) if a=='2':draw2() if a=='3':draw3() if a=='4':draw4(i,n) if a=='5':draw5() if a=='6':draw6() if a=='7':draw7(i,n) if a=='8':draw8() if a=='9':draw9() up() goto((i+1)*50,0) pd() #提起笔去第二行 up() goto(0,-100) pd() #画时间 for i in range(n,len(number)): a=number[i] if a=='0':draw0() if a=='1':draw1(i,n) if a=='2':draw2() if a=='3':draw3() if a=='4':draw4(i,n) if a=='5':draw5() if a=='6':draw6() if a=='7':draw7(i,n) if a=='8':draw8() if a=='9':draw9() up() goto((i-n+1)*50,-100) pd() hideturtle()4.执行主函数:
main()执行结果如图所示:
阅读全文
0 0
- Python学习笔记-Turtle库简单实例之日期时间显示
- python学习笔记-turtle类库实例
- 【Python学习】 之 Turtle库
- 【Python学习】 之 Turtle库
- Python起步之turtle库应用实例
- [python学习]Turtle库
- python学习笔记2--用turtle简单绘图
- python学习笔记9--用turtle简单绘图2
- python学习笔记1--turtle
- python学习之Turtle 1
- python学习之Turtle 2
- python学习之Turtle 3
- python学习之Turtle 4
- python学习之Turtle 5
- 海龟绘图-python turtle学习笔记1
- 海龟绘图-python turtle学习笔记2
- 海龟绘图-python turtle学习笔记3
- python学习笔记 turtle类使用
- 初识Django-setting.py
- 观察者设计模式-Observable类和Observer接口
- Java——Math
- 常用查找数据结构及算法(Python实现)
- pacemaker+corosync中crm命令用法
- Python学习笔记-Turtle库简单实例之日期时间显示
- Java 基础(8)—— 向上转型、向下转型、动态绑定、静态绑定
- 微信公众号开发:调用微信扫一扫功能
- handler instanceof HandlerMethod 一直是false
- Swift开发:使用SwiftyJSON解析JSON数据
- javascript-replace
- arcgis 无法打开excel文件 提示 无法注册类
- c++primer学习日记 1
- 新手解决class file has wrong version 49.0, should be 48.0