如何在提示输入密码时使用paramiko进行ssh?

时间:2014-06-05 02:53:01

标签: python linux date

将linux日期输出转换为python datetime对象的最佳方法是什么?

[root@host]$ date
Wed Jun  4 19:01:58 CDT 2014

请注意,Jun和'4'之间有多个空格

dateRaw = 'Wed Jun  4 19:01:58 CDT 2014'
sysDate = re.sub(' +',' ',dateRaw.strip())
sysDateArr = sysDate.split(' ')
sysMonth = sysDateArr[1]
sysDay = sysDateArr[2]
sysYear = sysDateArr[5]
print datetime.strptime(sysMonth+sysDay+sysYear), "%b%d%Y")

必须有一种不那么乏味的方式......

1 个答案:

答案 0 :(得分:1)

应该没有必要将所有内容拆分并重新加入:

import datetime
date = 'Wed Jun  4 19:01:58 CDT 2014'
datetime.datetime.strptime(date.replace("CDT",""),  '%a %b %d %H:%M:%S %Y')

应该有效。有关所有日期字符串解析格式,请参阅python docs [1]。

您还可以使用python-dateutil库[2],这样更容易!:

from dateutil import parser
date = 'Wed Jun  4 19:01:58 CDT 2014'
parser.parse(date)

[1] https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior

[2] http://labix.org/python-dateutil