日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python CheckiO 题解】Time Converter (12h to 24h)

發布時間:2023/12/10 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python CheckiO 题解】Time Converter (12h to 24h) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CheckiO 是面向初學者和高級程序員的編碼游戲,使用 Python 和 JavaScript 解決棘手的挑戰和有趣的任務,從而提高你的編碼技能,本博客主要記錄自己用 Python 在闖關時的做題思路和實現代碼,同時也學習學習其他大神寫的代碼。

CheckiO 官網:https://checkio.org/

我的 CheckiO 主頁:https://py.checkio.org/user/TRHX/

CheckiO 題解系列專欄:https://itrhx.blog.csdn.net/category_9536424.html

CheckiO 所有題解源代碼:https://github.com/TRHX/Python-CheckiO-Exercise


題目描述

【Time Converter (12h to 24h)】:此題與 Time Converter (24h to 12h) 類似,不同的是原來是24小時制轉12小時制,現在是12小時制轉24小時制,輸出格式應為“hh:mm”,如果輸出小時數小于10,則在其前添加“0”,如:“09:05”。

【鏈接】:https://py.checkio.org/mission/time-converter-12h-to-24h/

【輸入】:12小時格式的時間(字符串)

【輸出】:24小時制的時間(字符串)

【前提】:‘00:00’ <= time <= ‘23:59’

【范例】

time_converter('12:30 p.m.') == '12:30' time_converter('9:00 a.m.') == '09:00' time_converter('11:15 p.m.') == '23:15'

解題思路

利用時間模塊 time 對字符串進行處理,由于模塊不支持 a.m. 和 p.m. 的解析,所以先用 replace() 方法將其替換成 AM 或者 PM

利用使用 time.strptime() 方法把原始的時間字符串按照 %I:%M %p(12小時制小時:分鐘數 本地化的 AM 或 PM)的格式解析為時間元組

使用 time.strftime() 方法接收時間元組,按照 %H:%M(24小時制小時:分鐘數)的格式轉換為可讀字符串

代碼實現

import timedef time_converter(init_time):init_time = init_time.replace('a.m.', 'AM').replace('p.m.', 'PM')init_time = time.strptime(init_time, '%I:%M %p')init_time = time.strftime('%H:%M', init_time)return init_timeif __name__ == '__main__':print("Example:")print(time_converter('12:30 p.m.'))#These "asserts" using only for self-checking and not necessary for auto-testingassert time_converter('12:30 p.m.') == '12:30'assert time_converter('9:00 a.m.') == '09:00'assert time_converter('11:15 p.m.') == '23:15'print("Coding complete? Click 'Check' to earn cool rewards!")

大神解答

大神解答 NO.1

def time_converter(time):h, m = map(int, time[:-5].split(':'))return f"{h % 12 + 12 * ('p' in time):02d}:{m:02d}"

大神解答 NO.2

import timedef time_converter(now):return time.strftime('%H:%M', time.strptime(now.replace('.', ''), '%I:%M %p'))

大神解答 NO.3

from time import strptime as p, strftime as ftime_converter = lambda t: f("%H:%M", p(t.replace('.', ''), "%I:%M %p"))

總結

以上是生活随笔為你收集整理的【Python CheckiO 题解】Time Converter (12h to 24h)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。