一、新建文件以及笔记本命名
1.新建
选择自己要放入的文件夹,新建new,选择python3
2.笔记本命名
打开为此界面,点击untited修改笔记本名称,此处修改为Function_Time
二、案例:绘制七段电子数码管时间
运行结果展示
(截图时间为下图显示时间):
分析如何绘制
七段数码管由七个基本线条组成,七条数码管有固定顺序,不同数字显示不同线条 ,不同数字对应不同的数码管,此题将起点设为为一个间隔, 先绘制单个数码管,再获取一段数字,绘制对应的数码管,再获取系统时间进行最终的绘制。 绘制顺序依次为上图。
0、导入库模块
1)将需要用到的库导入模块:turtle画图库(用于绘制),time时间库和random随机库(七段电子数码管的随机颜色)
注:图中介绍了两种导入库的用法
1、绘制单段间隔
1)定义一个间隔函数drawGap( ),绘制间隔。
2、绘制单段数码管
1)定义drawline( )函数,应用if else语句判断,如果画了间隔,画笔放下继续画线条,没有则继续抬起画笔(飞行模式)。
3、绘制单个数字
1)定义绘制数字的函数drawDigit( ),根据不同数字显示不同线条 用if语句判断是否需要画线条。
2)设置画笔随机颜色,先绘制一个正六边形查看思路,代码是否可行,如图运行,可行,继续。
3)依次根据不同的数字绘制七段数码管。一个数字绘制完后抬笔向前,为绘制下一个数字确定位置,为前后两数字分离距离(预留“年,月,日,时,分,秒”的空隙)。
4、获取绘制的时间数字
1)定义一个函数drawdata( )。运用for循环识别打印获取或输入的日期。
5、编写主函数(设置画布和画笔的属性)
调用drawData函数,先从键盘输入生日日期尝试输出。
6、调用主函数
从输入的0123456789接着推导到输出系统时间的编写
1)for循环中嵌套日期的多分支if..elif..else条件语句
data为日期,格式为:‘%Y-%m=%d+’,依次循环识别获取到的 i 值,通过if..elif..else条件语句判断输出。
write(' ',font=(' fontname','fontsize','fonttype'))
' '中为写入想要输出的内容,font()中分别为字体名,字号,字体类型
2)time库常用方法
time.time()返回1970年1月1日到现在的秒数,返回值为浮点数。
time.localtime(时间戳),将时间戳转换为本地时间,时间戳默认为当地时间。
time.strftime(格式,时间元组) 将指定的时间元组转换成相应的字符串格式,时间元组默认为当地时间。
常用时间格式化字符:
%Y四位的年份 ;%m 月份[0,12] ;%d 日期[01,31] ;%H 24小时制[00,23] ;%M 分钟[00,59];
%S 秒钟[00,59]