2016-02-03 4 views
1

Мне нужна помощь с моим кодом, я пишу код, поскольку я хочу создать переменную, чтобы получить строки, которые преобразуют время с 24 часов до 12 часов. Затем я хочу разбить строки, чтобы получить минута после :.Разделите строки на две части

Пример:

Когда мои строки показывает, как:

22:30 
22:30 
22:40 
23:05 
23:00 
23:00 
23:00 

Выход:

10:30 PM 
10:30 PM 
10:40 PM 
11:05 PM 
11:00 PM 
11:00 PM 
11:00 PM 

Так что, когда я пытаюсь это:

stop_time = str(stop_date[1]) 

converts_time = time.strptime(stop_time, "%H:%M") 
converts_time = time.strftime("%I").lstrip('0') + str(":") + str(stop_time.split(":")) + time.strftime("%p") 

я получаю это:

10:['22', '30'] PM 
10:['22', '30'] PM 
10:['22', '40'] PM 
10:['23', '05'] PM 
10:['23', '00'] PM 
10:['23', '00'] PM 
10:['23', '00'] PM 

Я хочу использовать метод lstrip удалить 0, когда мое текущее время шоу в личку, и я не хочу использовать lstrip, когда мое текущее время шоу в AM. Поскольку вы можете видеть, что я использую метод stop_time.split, я хочу конвертировать часы с 24 до 12 часов, тогда я хочу разделить строки после :, чтобы получить минуту для каждой строки, чтобы она выглядела так: 10:30 PM, 10:40 PM ... и т. Д., Поэтому я могу использовать эту переменную для сравнения с другой переменной, чтобы увидеть, меньше ли времени.

Можете ли вы показать мне пример того, как я могу пересчитывает время с 24 часов до 12 часов, а затем разделить строки после : получить минуту с AM или PM?

ответ

0

Ваша проблема исходит из конца вашей последней строки. Когда вы используете split, он возвращает список из двух строк. Поскольку вас интересует только второй (индекс 1), вы можете указать это, добавив [1] после функции split.

converts_time = time.strftime("%I").lstrip('0') + str(":") + str(stop_time.split(":")[0]) + time.strftime("%p") 
+0

И нет необходимости обертывать каждую строку символом 'str()'. – TigerhawkT3

+0

@JohnHoward большое спасибо за это, но есть проблема. Когда я получаю строки '22: 30', он преобразуется в 12 часов, но минуты будут меняться. Я не хочу получать минуты с текущего времени. Я хочу получить минуты, когда я разделил строки, чтобы заставить их присоединиться к другим строкам, которые я преобразовал с 24 часов до 12 часов. Пожалуйста, измените код. –

Смежные вопросы