头歌 Python开发技术—面向对象程序设计1

  1. 数字时钟走字

任务描述
本关任务:本题中已给出一个时钟类的定义,请模拟数字时钟走字过程。

相关知识
为了完成本关任务,你需要掌握:1.类和对象。

编程要求
根据提示,在右侧编辑器补充代码,模拟数字时钟走字,只需输出60次走字。

测试说明
平台会对你编写的代码进行测试:

测试输入:23,59,58;
说明:输入格式为23,59,58,其中23为时,59为分,58为秒;
预期输出:23:59:58
23:59:59
00:00:00
00:00:01
00:00:02
00:00:03
00:00:04
00:00:05
00:00:06
00:00:07
00:00:08
00:00:09
00:00:10
00:00:11
00:00:12
00:00:13
00:00:14
00:00:15
00:00:16
00:00:17
00:00:18
00:00:19
00:00:20
00:00:21
00:00:22
00:00:23
00:00:24
00:00:25
00:00:26
00:00:27
00:00:28
00:00:29
00:00:30
00:00:31
00:00:32
00:00:33
00:00:34
00:00:35
00:00:36
00:00:37
00:00:38
00:00:39
00:00:40
00:00:41
00:00:42
00:00:43
00:00:44
00:00:45
00:00:46
00:00:47
00:00:48
00:00:49
00:00:50
00:00:51
00:00:52
00:00:53
00:00:54
00:00:55
00:00:56
00:00:57
测试输入:0,0,0;
预期输出:

00:00:00
00:00:01
00:00:02
00:00:03
00:00:04
00:00:05
00:00:06
00:00:07
00:00:08
00:00:09
00:00:10
00:00:11
00:00:12
00:00:13
00:00:14
00:00:15
00:00:16
00:00:17
00:00:18
00:00:19
00:00:20
00:00:21
00:00:22
00:00:23
00:00:24
00:00:25
00:00:26
00:00:27
00:00:28
00:00:29
00:00:30
00:00:31
00:00:32
00:00:33
00:00:34
00:00:35
00:00:36
00:00:37
00:00:38
00:00:39
00:00:40
00:00:41
00:00:42
00:00:43
00:00:44
00:00:45
00:00:46
00:00:47
00:00:48
00:00:49
00:00:50
00:00:51
00:00:52
00:00:53
00:00:54
00:00:55
00:00:56
00:00:57
00:00:58
00:00:59

from time import sleep


class Clock(object):
    """数字时钟"""

    def __init__(self, hour=0, minute=0, second=0):
        """初始化方法

        :param hour: 时
        :param minute: 分
        :param second: 秒
        """
        self._hour = hour
        self._minute = minute
        self._second = second

    def run(self):
        """走字"""
        self._second += 1
        if self._second == 60:
            self._second = 0
            self._minute += 1
            if self._minute == 60:
                self._minute = 0
                self._hour += 1
                if self._hour == 24:
                    self._hour = 0

    def show(self):
        """显示时间"""
        return '%02d:%02d:%02d' % \
               (self._hour, self._minute, self._second)


def main():
    #h为时,m为分,s为秒
    h,m,s = input().split(',')
    h = int(h)
    m = int(m)
    s = int(s)
    #        请在此处添加代码       #
    # *************begin************#

    # **************end*************#


if __name__ == '__main__':
    main()

任务描述
本关任务:定义一个类描述平面上的点并提供移动点和计算到另一个点距离的方法。

相关知识
为了完成本关任务,你需要掌握:1.类和对象,2.math的相关操作。

编程要求
根据提示,在右侧编辑器补充代码,定义一个类描述平面上的点并提供移动点和计算到另一个点距离的方法。
说明:代码中有相关提示;

测试说明
平台会对你编写的代码进行测试

# 定义一个类描述平面上的点并提供移动点和计算到另一个点距离的方法。
# 开平方
from math import sqrt
 
 
class Point(object):
    def __init__(self, x=0, y=0):
        """
        构造器
        :param x:横坐标
        :param y:纵坐标
        """
        self.x = x
        self.y = y
 
    def move_to(self, x, y):
        """
        移动到指定的位置
        :param x:
        :param y:
        :return:
        """
        self.x = x
        self.y = y
 
    def move_by(self, dx, dy):
        """
        移动指定的增量
        :param dx:横坐标的增量
        :param dy:纵坐标的增量
        :return:
        """
        self.x += dx
        self.y += dy
 
    def distance_to(self, other):
        """
        计算与另外一个点的距离
        :param other:另外一个点
        :return:
        """
        dx = self.x - other.x
        dy = self.y - other.y
        return sqrt(dx ** 2 + dy ** 2)
 
    # 对这个对象的描写
    def __str__(self):
        return '(%s, %s)' % (str(self.x), str(self.y))
 
 
def main():
    p1 = Point(3, 5)
    p2 = Point()
    print(p1)
    print(p2)
    print(p1.distance_to(p2))
    p1.move_to(1,2)
    print(p1)
    p2.move_by(-1, -2)
    print(p2)
 
 
if __name__ == '__main__':
    main()
  • 25
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值