Python程序:将小时分钟时间转换为文本格式


假设我们有两个输入:小时和分钟。我们需要以文本格式显示时间。例如:

  • 8:00 : 8点
  • 8:01 : 八点过一分钟
  • 8:10 : 八点过十分钟
  • 8:15 : 八点一刻
  • 8:30 : 八点半
  • 8:40 : 九点差二十分钟
  • 8:45 : 九点差一刻
  • 8:47 : 九点差十三分钟
  • 8:28 : 八点过二十分钟

因此,如果输入为 h = 9, m = 42,则输出为十点差十八分钟

为了解决这个问题,我们将遵循以下步骤:

  • text:= 一个包含30个不同数值的文本列表,如下所示:["one", "two", "three", "four", "five", "six", "seven", "eight","nine","ten", "eleven", "twelve", "thirteen", "fourteen", "quarter", "sixteen","seventeen", "eighteen", "nineteen", "twenty", "twenty-one","twenty-two", "twenty-three", "twenty-four", "twenty-five","twenty-six", "twenty-seven", "twenty-eight", "twenty-nine", "half"]
  • op:= 空字符串
  • 如果 m 等于 0,则
    • op := text[h - 1] 连接 "点"
  • 否则,如果 m 等于 30,则
    • op := text[m - 1] 连接 "过" 连接 text[h - 1]
  • 否则,如果 m 等于 1,则
    • op := text[m - 1] 连接 "分钟过" 连接 text[h - 1]
  • 否则,如果 m 等于 15,则
    • op := text[m - 1] 连接 "过" 连接 text[h - 1]
  • 否则,如果 m - 30 不为零,则
    • op := text[m - 1] 连接 "分钟过" 连接 text[h - 1]
  • 否则,如果 m 等于 45,则
    • op := "差一刻到" 连接 text[h]
  • 否则
    • op := text[(60 - m) -1] 连接 "分钟到" 连接 text[h]
  • 返回 op

示例

让我们看下面的实现来更好地理解:

def solve(h, m):
   text=["one", "two", "three", "four", "five", "six", "seven", "eight","nine","ten", "eleven", "twelve", "thirteen", "fourteen", "quarter", "sixteen","seventeen", "eighteen", "nineteen", "twenty", "twenty-one","twenty-two", "twenty-three", "twenty-four", "twentyfive"," twenty-six", "twenty-seven", "twenty-eight", "twenty-nine", "half"]

   op=""
   if (m == 0):
      op = text[h - 1] + " o' clock"
   elif (m == 30):
      op = text[m - 1]+ " past " + text[h - 1]
   elif (m == 1):
      op = text[m - 1] + " minute past " + text[h - 1]
   elif (m == 15):
      op = text[m - 1]+ " past " + text[h - 1]
   elif (m < 30):
      op = text[m - 1] + " minutes past " + text[h - 1]
   elif (m==45):
      op = "quarter to " + text[h]
   else:
      op = text[(60 - m)-1] + " minutes to " + text[h]
   return op

h = 9
m = 42
print(solve(h, m))

输入

9, 42

输出

eighteen minutes to ten

更新于: 2021年10月7日

485 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.