我是一个资深的PHP和Perl专家,但Python对我来说还是个新手。我很喜欢学它!我写了下面的代码,但我无法摆脱这样的感觉:它可以由具有“高级”Python技能的人编写。你是真正的Python人,能接受有趣的挑战吗?在
请注意:我希望代码可读。Python应该是可读的-我们不是在这里写Perl的人!(例如:我喜欢'weekday'是一个字符串而不是一个整数,让它非常清楚)
import datetime
today = datetime.datetime.now()
weekday = today.strftime("%a")
hourmin = int(today.strftime("%H%M"))
print "today here is: " + today.strftime("%c") # for debug
if weekday == "Sat" or \
(weekday == "Sun" and hourmin < 2000) or \
(weekday == "Fri" and hourmin > 1630) or \
(hourmin >= 1630 and hourmin < 2000) :
print "bad time"
else:
print "good time"
您可以将一个日字符串映射到一个lambda,该lambda接受hourmin并确定它是否坏。例如:
编辑:遵循kindall的建议。在
我建议使用一个类,它可以让你很容易地确定一个时间是否在一个预定义的范围内,然后把这个类的实例放在字典中来记录每天的时间是“坏的”。也许为了方便和便于以后更改,可以使用几个预定义的范围。在
在python中,如果有不匹配的parens,则可以继续下一行,不需要反斜杠。也可以在一个布尔表达式中进行两个比较。在
相关问题 更多 >
编程相关推荐