我有以下的代碼,而比較的日期時間一段時間後掛起。以下是我的代碼。代碼一段時間後掛斷了電話,而比較的日期時間
def worker():
flag = True
while True:
s1 = '101:35:00'
e1 = '101:36:00'
s2 = '101:37:00'
e2 = '101:38:00'
s3 = '101:39:00'
e3 = '101:40:00'
if int(s1[0]) == 1:
start1 = str(datetime.datetime.now().date()) + ' ' + s1[1:9]
else:
start1 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + s1[1:9]
if int(s2[0]) == 1:
start2 = str(datetime.datetime.now().date()) + ' ' + s2[1:9]
else:
start2 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + s2[1:9]
if int(s3[0]) == 1:
start3 = str(datetime.datetime.now().date()) + ' ' + s3[1:9]
else:
start3 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + s3[1:9]
if int(e1[0]) == 1:
end1 = str(datetime.datetime.now().date()) + ' ' + e1[1:9]
else:
end1 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + e1[1:9]
if int(e2[0]) == 1:
end2 = str(datetime.datetime.now().date()) + ' ' + e2[1:9]
else:
end2 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + e2[1:9]
if int(e3[0]) == 1:
end3 = str(datetime.datetime.now().date()) + ' ' + e3[1:9]
else:
end3 = str(datetime.datetime.now().date() + datetime.timedelta(days=1)) + ' ' + e3[1:9]
s1t = datetime.datetime.strptime(start1, '%Y-%m-%d %H:%M:%S')
s2t = datetime.datetime.strptime(start2, '%Y-%m-%d %H:%M:%S')
s3t = datetime.datetime.strptime(start3, '%Y-%m-%d %H:%M:%S')
e1t = datetime.datetime.strptime(end1, '%Y-%m-%d %H:%M:%S')
e2t = datetime.datetime.strptime(end2, '%Y-%m-%d %H:%M:%S')
e3t = datetime.datetime.strptime(end3, '%Y-%m-%d %H:%M:%S')
cur = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
curr = datetime.datetime.strptime(cur, '%Y-%m-%d %H:%M:%S')
if e1t < curr <= s2t or e2t < curr <= s3t:
flag = False
else: pass
while not flag:
print 'iwashereghgj'
print str(curr) #line1
if s2t <= curr < e2t or s3t <= curr < e3t:
q1.put(True)
flag = True
else:
flag = True
例如在這種情況下,代碼只是在curr在'line1'達到'2014-01-06 01:37:00'後掛起。任何人都可以幫我解釋爲什麼會發生這種情況?
請解決您的壓痕 – MattDMo
你'而TRUE'循環沒有休息'/返回/ raise',所以你怎麼指望它逃脫循環? – shx2
但我的問題是爲什麼代碼在2分鐘後掛起#line1? – prattom