Python程序开发基础 课件 任务3 模拟时钟.pptx

Python程序开发基础 课件 任务3 模拟时钟.pptx

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

time库——模拟时钟

任务描述钟表是一种计时装置,其样式千变万化,但用来显示时间的表盘却相差无几。对于指针式钟表的表盘一般是由刻度、时针、分针和秒针、星期显示、日期显示组成。本任务要求编写程序,使用time模块绘制并控制所示时钟。

时间管理在Python程序开发过程中根据时间来选择不同的处理场景的情况很多,譬如,动态时钟秒针的运动时间、游戏的防沉迷控制、外卖平台店铺的营业时间管理、数据的记录及日志的处理等。Python语言提供了两个与时间管理有关的库,它们是time库、datetime库。

01time库02datetime库04任务实现

time库01

time库time库是Python中最常用的与时间处理相关的库。中常用的time库函数如表所示。函数说明time()获取当前时间,结果为实数,单位为秒。sleep(secs)进入休眠状态,时长由secs确定,单位为秒。strptime(string[,format])将一个年月日时间格式的字符串解析为时间元组。localtime([secs])以struct_time类型输出本地时间。asctime([tuple])获取时间字符串,或将时间元组转换为字符串。mktime(tuple)将时间元组转换为秒数。strftime(format[,tuple])返回字符串表示的当地时间,格式由format决定。

计算时间。时间是可以进行加减运算的,一般情况下,时间是以时间戳的形式来进行加减运算。本实例首先导入time库,获取系统的第一个当前时间,这个时间是以时间戳的形式表示。然后让系统等待几秒后,再获取系统的第二个当前时间,计算这两个时间的和和差,即完成时间的计算。time实例其代码如下:importtimetime_1=time.time()time.sleep(3)time_2=time.time()print(time_1+time_2)print(time_1+time_2)

Datetime库02

datetime库以不同格式显示日期和时间是程序中最常用到的功能。datetime?库可以从系统中获得时间,并以用户选择的格式进行输出。常用的datetime库函数如表所示。函数说明date()获取当前的日期。time()获取当前的时间。datetime()获取当前的日期和时间。timedelta()获取两个时间的时间差。tzinfo()获取时区信息。

编程确定某天是该年的第几天。时间和日期是可以进行操作的。本实例首先导入datetime库,获取指定的日期,然后从这一年的1月1日起计算天数。datetime实例其代码如下:importdatetimedefday_year(year,month,day):date1=datetime.date(year=int(year),month=int(month),day=int(day))date2=datetime.date(year=int(year),month=1,day=1)return(date1-date2).days+1y=input(请输入年份:)m=input(请输入月份:)d=input(请输入日期:)n=day_year(y,m,d)print(f{y}年{m}月{d}日是这一年的第{n}天)

任务实现——模拟时钟03

模拟时钟根据题意,使用turtle模块绘制如下表盘(屏幕显示表盘)。表盘有三根指针:时针、分针、秒针。它们的一端被固定在表盘中心,另一端可以沿顺时针方向进行旋转。表盘中最顶端的刻度为12,它是所有指针的起始点,指针按顺时针刻度依次是1,2,3……59。这里,秒针旋转一周,分针移动一个刻度,同样,分针移动一周,时针移动一格刻度。它们是通过datetime模块控制时钟动态显示。

模拟时钟#模拟时钟fromturtleimport*fromdatetimeimport*defskip(step):跳跃给定的距离penup()forward(step)pendown()defsetup_clock(radius):建立钟表的外框reset()pensize(7) #设置画笔线条的粗细foriinrange(60):skip(radius) #在距离圆心为r的位置落笔ifi%5==0:#若能整除5,则画一条短直线forward(2

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档