如何在Python中将字符串解析为日期时间

时间:2017-12-21 20:42:21

标签: python datetime raspberry-pi subtraction

我是整个编程的新手,但我喜欢它。

目前我正在设置我的覆盆子pi,以便在我的公共汽车离开时告诉我。

我从当地公交公司获取信息,然后我将其转换为字符串,例如:' 09:15' (不是上午/下午)

我的实际问题:

我希望python能够在现在和下一班巴士离开之间的几分钟内给出差异。

我现在如何将我的String解析为日期时间,然后在现在和公共汽车离开之间得到区别?

#m2 is actually from the website and not created by myself

m2 = '09:15'
bustime = datetime.datetime.strptime(m2, '%I:%M')

这实际上会给我一个奇怪的日期,例如' 1900-01-01 09:15:00'!?如果我想减去现在的'从它有一个巨大的差异(如117年o.O)

有人可以帮帮我吗? : - )

更新

我现在有日期问题,但还有更多内容: - >公共汽车时间以12小时格式提供,但日期时间将创建24小时格式。我怎样才能解决这个问题,但是之后计算出差异呢?正如我已经提到的那样,我只希望得到会议记录!

2 个答案:

答案 0 :(得分:0)

您只向class GameScene: SKScene { override func didMove(to view: SKView) { super.didMove(to: view) let rect = SKSpriteNode(color: .green, size: CGSize(width: 100, height: 100)) addChild(rect) rect.name = "rect" // don't pay attention to these two i need them because i dont have .sks file size = CGSize(width: 1334, height: 750) anchorPoint = CGPoint(x: 0.5, y: 0.5) } override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { guard let touch = touches.first else { return } let moveAction = SKAction.move(to: touch.location(in: self), duration: 1) childNode(withName: "rect")?.run(moveAction) } } 提供小时/分钟。它将Y / M / D默认为1900/1/1。解决这个问题的一种方法是为今天创建一个日期时间,然后将小时分钟设置为字符串中的小时数。字符串需要拆分为&#39;:&#39;并转换为整数:

strptime

输出:

  

2017-12-21 09:15:00

答案 1 :(得分:0)

您需要在构建日期时间时提供日期。您可以从输入中获取时间,从datetime.now()获取日期并将两者结合起来。

bustime = datetime.datetime.strptime(m2, "%I:%M").time()
todaydate = datetime.datetime.now().date()
bustime = datetime.datetime.combine(todaydate, bustime)