我只用了一段代码,却似乎找不到解决错误的答案
我不断收到以下错误消息,但没有任何意义:
temp = times[i].split(', ')
IndexError: list index out of range
作为上下文,即时消息会抓取网站以获取有关登录日期和时间的信息,它会检索登录日期和时间的文本版本,以便即时消息将时间转换为日期时间对象,以便于我减去另一个日期时间对象,找出该人是否迟到
我的第一步是用逗号(,)分隔日期和时间(均在单个字符串中),然后将时间转换为datetime对象,并在末尾添加if语句以确认是否登录时间小于班次开始时间,如果是,则从列表中弹出项目
如果我要删除IF语句,错误就会消失,这很奇怪,如果我将列表减少一,它也会消失
from datetime import datetime, date
times = ['5/1/2020, 8:08:54', '5/1/2020, 10:07:09', '5/1/2020, 10:27:49', '5/1/2020, 10:53:14',
'5/1/2020, 11:57:46', '5/1/2020, 12:53:38', '5/1/2020, 2:04:52', '5/1/2020, 2:14:55']
#Analysts Shift
schedule = datetime.strptime('8:05:00', '%H:%M:%S').time()
for i in range(len(times)):
temp = times[i].split(', ')
a = datetime.strptime(temp[1], '%H:%M:%S').time()
if datetime.combine(date.today(), a) < datetime.combine(date.today(), schedule):
times.pop(i)
print(times)
答案 0 :(得分:0)
将for循环更改为:
for i in range(len(times)-1):