2017-07-18 128 views
-2

为什么不能使用此代码?它只是打印的“和“坏”Python代码不适用于日期时间和if语句

import datetime 
import csv 

format = "%H%M" 
today = datetime.datetime.today() 
s = today.strftime(format) 

print s 

if s == 1029: 
    print ("Good") 
else: 
    print ("Bad") 
+0

你错过了代码中的东西吗?它应该只是打印“坏” – victor

+1

's == 1029:'总是假的...... s永远不会是一个整数 –

+3

's'是一个字符串,你将它与一个整数进行比较。不仅如此,你的结果应该是“正确的”,每天只有一分钟。 – zwer

回答

1

你应该投你的时间字符串转换为整数

import time 
print "Good" if int(time.strftime('%H%M')) == 1029 else "Bad" 

原因:strftime返回一个字符串,你相比数量,这始终是假