gpt4 book ai didi

python错误 if 语句语法无效

转载 作者:太空宇宙 更新时间:2023-11-03 17:05:12 25 4
gpt4 key购买 nike

我的代码需要一些帮助。我想检查变量 start_time 是否小于、等于或大于 current_time 来比较时间。

这是代码:

start_date = str(stop_date[0])
stop_date = str(stop_date[1])
get_current_time = datetime.datetime.now().strftime('%H:%M')
get_start_time = time.strptime(start_date, '%Y%m%d%H%M%S')
start_time = time.strftime('%H:%M', get_start_time)
get_stop_time = time.strptime(stop_date, '%Y%m%d%H%M%S')
stop_time = time.strftime('%H:%M', get_stop_time)
current_time = str(get_current_time)

if start_time <> current_time <> stop_time:
print "program is half way"

这是 start_time 的输出:

19:00
19:00
19:00
19:00
19:00
19:00
19:00

这是current_time的输出:

00:10:36 T:5304  NOTICE: 00:09

这是 stop_time 的输出:

00:09:33 T:6824  NOTICE: 19:30
00:09:33 T:6824 NOTICE: 20:00
00:09:33 T:6824 NOTICE: 19:30
00:09:33 T:6824 NOTICE: 20:00
00:09:33 T:6824 NOTICE: 20:00
00:09:33 T:6824 NOTICE: 19:30
00:09:33 T:6824 NOTICE: 20:00

当我尝试这个时:

if start_time <=> current_time < stop_time:
print "program has finished"

它会给我一个错误:无效语法

它不允许我在语句中包含=,我只能在语句上写小于或大于,但不能写=

如何在 start_time 中包含小于和大于的相等 = 来将时间与 current_time 进行比较?

编辑:哦,抱歉我的错误。我粘贴了错误的代码,所以这就是我想要做的:

if start_time <=> current_time < stop_time:
print "program is half way"

最佳答案

据我了解,您想要检查这两者是否成立:

  1. current_time小于、大于或等于 start_time .
  2. current_time小于stop_time .

现在,第一个可以这样写:

if current_time < start_time or current_time > start_time or current_time == start_time:
print "program has finished"

但是,这始终是正确的,因为 start_timecurrent_time要么相等(使current_time == start_time为真),要么不同(使current_time < start_time or current_time > start_time为真)。

第二个可以这样写:

if current_time < stop_time:
print "program has finished"

因此,由于不需要第一个,因此您只需要:

if current_time < stop_time:
print "program has finished"

关于python错误 if 语句语法无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34645805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com