userinput.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:Acedia 作者: Lvl4Sword 项目源码 文件源码
def cardio_when_converter(raw_value, activity=None):
    time_input = raw_value.strip()
    time_split = time_input.split(':')
    try:
        if len(time_split) == 3:
            hours_ = int(time_split[0])
            minutes_ = int(time_split[1])
            seconds_ = int(time_split[2])
            when_seconds = hours_ * 3600 + minutes_ * 60 + seconds_
            if when_seconds <= 86399:
                log_divmod = divmod(when_seconds, 60)
                when_hours = round(log_divmod[0] / 60)
                when_minutes = round(log_divmod[0] % 60)
                when_seconds = round(log_divmod[1])
                when_time = ('{0:02d}, {1:02d}, {2:02d}'.format(when_hours,
                                                                when_minutes,
                                                                when_seconds))
                return when_time
            else:
                raise ConversionFailed('There\'s only 24 hours in a day')
        elif time_input == '':
            current_time = arrow.now().time()
            when_hours = current_time.hour
            when_minutes = current_time.minute
            when_seconds = current_time.second
            when_time = ('{0:02d} {1:02d} {2:02d}'.format(when_hours,
                                                          when_minutes,
                                                          when_seconds))
            return when_time
        else:
            raise ValueError
    except ValueError:
        raise ConversionFailed(
            'Only digits and ":" can be used. (10:00:00)'
        )
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号