错误-试图以固定格式获取时间时,显示函数缺少必需的参数'month'(位置2)

问题描述 投票:0回答:1

我正在尝试以以下格式获取时间,但是我收到错误消息,该函数缺少'month的必需参数。如果有人可以解决这个小混乱,那将是一个很大的帮助。

import datetime
startTimeList = ['drwxr-xr-x  3 plan 4096 Mar 21 02:00 file_listener', 'ksh', '010001', '0\n']
startTimeStr = int(startTimeList[2])
print(startTimeStr)
startTimeStr = datetime.datetime(startTimeStr)
startTime = startTimeStr.strftime("%I:%M:%S %p")
print(startTime)

预期输出:

010001
01:00:01 PM

显示错误:

function missing required argument 'month' (pos 2)
python python-3.x datetime time datetime-format
1个回答
0
投票

startTimeList[2]转换为整数无济于事,因为您需要再次将其转换回字符串。

datetime.datetime需要参数yearmonthday,这不是您想要执行的操作。

您打算使用datetime.datetime.strptime将字符串'010001'转换为datetime.datetime对象:

import datetime

startTimeList = ['drwxr-xr-x  3 plan 4096 Mar 21 02:00 file_listener', 'ksh', '010001', '0\n']
startTimeStr = startTimeList[2]
print(startTimeStr)

startTime = datetime.datetime.strptime(startTimeStr, "%H%M%S")
startTimeResult = startTime.strftime("%I:%M:%S %p")
print(startTimeResult)

但是它给您01:00:01 AM,因为它无法知道010001表示pm时间。

© www.soinside.com 2019 - 2024. All rights reserved.