如何在特定字符之前测量字符串的长度

问题描述

我正在呼叫 API,它会告诉我我请求的特定城市的日出时间。

问题是当日出时间在上午 10 点之前时,我会以格式获取它,例如 '9:10 am'。这弄乱了我的代码,我需要它的格式为 '09:10 am'。我根据位置使用 UTC 时间,这就是为什么它可以在上午或下午给我时间。

有没有办法知道特定字符之前的字符串长度,在这种情况下是 ':'

示例字符串

{"results":{"sunrise":"9:28:40 PM","sunset":"10:16:12 AM","solar_noon":"3:52:26 AM","day_length":"12:47:32","civil_twilight_begin":"9:05:59 PM","civil_twilight_end":"10:38:53 AM","nautical_twilight_begin":"8:39:14 PM","nautical_twilight_end":"11:05:38 AM","astronomical_twilight_begin":"8:12:02 PM","astronomical_twilight_end":"11:32:50 AM"},"status":"OK"}

解决方法

您可以使用以下内容:

import json

file = open('time.json','r')
data = json.loads(file.read())
file.close()

sunrise = data['results']['sunrise']
### This is the part that measures the length before ':'
length = sunrise.find(':')

print(length)