擅长:python、mysql、java
<p>对于时间偏移,可以使用<a href="https://docs.python.org/2/library/datetime.html#datetime.timedelta" rel="nofollow">^{<cd1>}</a>:</p>
<pre><code>>>> import datetime
>>> datetime.datetime.now()
datetime.datetime(2014, 7, 9, 21, 47, 6, 178534)
>>> datetime.datetime.now() + datetime.timedelta(hours=1)
datetime.datetime(2014, 7, 9, 22, 47, 16, 851338)
</code></pre>
<p>对于您的代码,下面是一个有一些改进的示例:</p>
<pre><code>import datetime
# get current time
now = datetime.datetime.now()
# round to half hours
if (now.minute / 30):
# minutes 30-59
minute = 30
else:
# minutes 00-29
minute = 0
now = now.replace(minute=minute, second=0, microsecond=0)
def format(time):
return time.strftime("%I").lstrip('0') + time.strftime(":%M%p")
# set labels
print(4203, format(now))
print(4204, format(now + datetime.timedelta(minutes=30)))
print(4205, format(now + datetime.timedelta(minutes=60)))
</code></pre>
<p>结果如下:</p>
<pre><code>(4203, '11:00PM')
(4204, '11:30PM')
(4205, '12:00AM')
</code></pre>