Python如何将输入的HH:MM格式时间拆分为小时和分钟?
时间拆分功能实现方案
你原有代码的核心问题是:带冒号的时间字符串包含非数字字符,不能直接转int类型,直接运行会抛出ValueError异常。
修正后代码
print("请按照以下格式输入时间:10:10") time_str = input("时间:") # 按冒号分割字符串后转整数 hour, minute = map(int, time_str.split(':'))
实现逻辑说明
- 先保留输入的字符串格式,不要直接转int
- 调用
split(':')方法按冒号切割字符串,"10:10"切割后会得到["10", "10"]的列表 - 通过
map(int, ...)把列表内的两个字符串元素批量转成整数,再解包赋值给hour和minute变量即可
如果需要兼容异常输入,可以额外加格式校验逻辑,比如判断分割后的列表长度是否为2、转int是否失败等,基础场景下上面的代码可以直接使用。
内容的提问来源于stack exchange,提问作者Bemberle
相关产品推荐
相关产品推荐

