我正在为自己做一些项目,而我却忙于做作业。
I have strict time that's 30min
I have a user that gives an input like: 24008
我需要将用户输入转换为时间(2min:40sec:08milisec),并将其从主要时间中减去。 我尝试使用time.strftime('%M:%S:%f',1800)来显示主要时间(30分钟),例如30:00:00,但我似乎没有得到日期时间或时间导入以及它们如何工作。与用户输入相同。
任何一个善良的人都可以引导我走上正确的道路,以了解如何完成此逻辑以及通过什么功能?
我无法共享代码,因为我对此没有任何工作逻辑。
答案 0 :(得分:1)
datetime.time对象可能是为此使用的最佳数据结构
您的30分钟初始值将这样定义
import datetime
strict_time = datetime.time(minutes=30)
如果您作为示例给出的用户输入将始终是输入格式,则由于python的datetime模块的strptime行为无法处理2位数的毫秒输入和1位数的分钟输入,因此它很难解析。如果输入格式完全相同(5位数字和1分钟数字,2位第二数字和2毫秒数字),则可以使用以下格式
user_input = '24008'
input_time = datetime.timedelta(
minutes=int(user_input[0]),
seconds=int(user_input[1:2]),
microseconds=int(user_input[3:4])
)
new_time = strict_time - input_time