将一列中所有时间条目的时间格式从小时更改为AM / PM

时间:2018-07-02 15:28:58

标签: python python-3.x

我输入了一个Excel工作表,并且有一个时间栏,其中包含24小时格式的条目。喜欢:

18:16

我想将此列中的所有时间条目从24小时更改为AM / PM格式。

6:16 PM

任何帮助将不胜感激!

谢谢!

1 个答案:

答案 0 :(得分:0)

使用datetime模块。 .strftime("%I:%M %p")

例如:

import datetime
s = "18:16"
print( datetime.datetime.strptime(s, '%H:%M').strftime("%I:%M %p") )

输出:

06:16 PM

根据评论进行编辑

使用熊猫

import pandas as pd
import datetime

df = pd.DataFrame({"OTime": ["18:16", "19:16","20:16", "21:16"]})
print( df["OTime"].apply(lambda x: datetime.datetime.strptime(x, '%H:%M').strftime("%I:%M %p")))

输出:

0    06:16 PM
1    07:16 PM
2    08:16 PM
3    09:16 PM
Name: OTime, dtype: object