我想采用从SQL查询返回的一个纪元,然后向上(或向下)30分钟。我想在第二行代码上执行此操作。知道怎么做吗?
s = row.get("values")[0][1]
s = <<<round to closest 30 mins>>>
t = datetime.fromtimestamp(float(s)/1000.)
dateFmt = "%Y-%m-%d"
timeFmt = "%H:%M"
date = t.strftime(dateFmt)
time = t.strftime(timeFmt)
答案 0 :(得分:0)
首先将数据转换为预期的表示形式。这可能涉及时区变化。假设private void read()
{
foreach(Person p in list)
{
ListViewItem item = new ListViewItem();
item.Text = p.Name;
item.SubItems.Add(p.Position);
item.SubItems.Add(p.Team);
lstvPerson.Items.Add(item);
}
}
是您想要的表示,您可以替换所需的元素:
t
我不会使用关于操纵时间戳本身的评论中的解决方案,除非您确定它始终位于本地时区。您可以通过奇数分钟(有# python 3
t.replace(minute=t.minute // 30 * 30, second=0, microsecond=0)
# python 2
t.replace(minute=t.minute / 30 * 30, second=0, microsecond=0)
和+xx30
时区)来处理轮班问题