相关疑难解决方法(0)

将Django中的DateTimeField转换为Unix时间

在我的Django项目中,我正在使用DateTimeField模型.这基本上有python datetime.datetime实例.

从纪元(以秒为单位)转换到时间的最快方法是什么?

python django

6
推荐指数
1
解决办法
1万
查看次数

如何将datetime字符串转换为UTC以在Highcharts上绘制点

我正在研究HighCharts样条不规则数据.这里数据传递为

data: [
      [Date.UTC(1970,  9, 27), 0   ],
      [Date.UTC(1970, 10, 10), 0.6 ],
      [Date.UTC(1970, 10, 18), 0.7 ],
      [Date.UTC(1970, 11,  2), 0.8 ],
      [Date.UTC(1970, 11,  9), 0.6 ],
      [Date.UTC(1970, 11, 16), 0.6 ],
      ]
Run Code Online (Sandbox Code Playgroud)

但是,我是通过AJAX调用从python后端发送数据的

data: [
      "2013-11-07 00:10:27", 0   ],
      "2013-11-07 00:10:27", 1   ],
      "2013-11-07 00:10:27", 2   ],
      "2013-11-07 00:10:27", 3   ],
      "2013-11-07 00:10:27", 4   ],
      "2013-11-07 00:10:27", 5   ],
      ]
Run Code Online (Sandbox Code Playgroud)

因此,数据点不会被绘制.如何将日期时间转换为UTC或后端(python)的任何其他日期时间格式,这将使Highcharts能够绘制正确的X和Y轴点.

这是我尝试过的.由于UTC时间Date.UTC(1970, 9, 27)返回秒数,因此我将时间转换为自幕后1970-1-1以来经过的总秒数.

time = "2013-11-06 18:00:00"
time = ((datetime.datetime.strptime(time, '%Y-%m-%d %H:%M:%S'))-datetime.datetime(1970,1,1)).total_seconds()            
Run Code Online (Sandbox Code Playgroud)

然后将其传递给UI.因此我的数据发送为

[[1383760800.0, 1870.2000000000007], …

python highcharts

5
推荐指数
1
解决办法
5695
查看次数

如何在Python中将日期时间转换为UTC时间戳?

来自http://docs.python.org/library/time.html:

time.mktime(t):这是localtime()的反函数.它的参数是struct_time或完整的9元组(因为需要dst标志;如果它是未知的,则使用-1作为dst标志),它以本地时间而不是UTC表示时间.它返回一个浮点数,以便与time()兼容.如果输入值不能表示为有效时间,则会引发OverflowError或ValueError(这取决于Python或底层C库是否捕获到无效值).它可以生成时间的最早日期取决于平台.

这表示您需要在当地时间而不是UTC指定时间元组.但是,我想用UTC指定; 我不想在盒子上使用本地时区.

有什么方法可以从datetime到时间戳,其中时间被视为UTC?当我转换为时间戳和从时间戳转换时,我希望能够将所有内容保存在规范化的UTC表单(datetime对象)中.

我希望能够做这样的事情,让x和y出现相同:

 y = datetime.datetime.utcfromtimestamp(time.mktime(x.timetuple()))
 x = dateutil.parser.parse('Wed, 27 Oct 2010 22:17:00 GMT')
 stamp = time.mktime(x.timetuple())
 y = datetime.datetime.utcfromtimestamp(stamp)
 x
datetime.datetime(2010, 10, 27, 22, 17, tzinfo=tzutc())
 y
datetime.datetime(2010, 10, 28, 6, 17)
Run Code Online (Sandbox Code Playgroud)

python time datetime date

3
推荐指数
1
解决办法
5497
查看次数

将 UTC 时间转换为纪元

我希望分析与天气数据相关的交通流量。交通数据有一个 UNIX 时间戳(又名纪元),但我在将时间戳(在天气数据中)转换为纪元时遇到了麻烦。问题是我在挪威,天气数据中的 UTC 时间戳与我不在同一时区(GMT+1)。

我最初的做法

我首先尝试将其转换为纪元并将数据视为 GMT+1 时区。然后我通过减去 UTC 和 GMT+1 之间的秒数差异进行补偿。

方法的问题

我首先意识到这种方法非常原始而且不是很优雅(实际上它充其量只是一个丑陋的黑客)。然而,这里最大的问题是 UTC 和 GMT+1 之间的差异不是恒定的(由于夏令时)。

是否有任何可靠的方法可以将 UTC 时间转换为 python 中的 UNIX 时间戳(考虑到我的机器处于 GMT+1)?时间戳采用以下格式:

Y-m-d HH:MM:SS

编辑:尝试过 rmunns 的解决方案:

def convert_UTC_to_epoch(timestamp):
  tz_UTC = pytz.timezone('UTC')
  time_format = "%Y-%m-%d %H:%M:%S"
  naive_timestamp = datetime.datetime.strptime(timestamp, time_format)
  aware_timestamp = tz_UTC.localize(naive_timestamp)
  epoch = aware_timestamp.strftime("%s")
  return (int) (epoch)
Run Code Online (Sandbox Code Playgroud)

不能正常工作,如下所示:

#Current time at time of the edit is 15:55:00 UTC on June 9th 2014.
>>> diff …
Run Code Online (Sandbox Code Playgroud)

python datetime date

2
推荐指数
1
解决办法
2万
查看次数

Python DateTime 字符串转换为整数毫秒

我想将 UTC TimeDate 标记字符串转换为毫秒的整数值(可能需要是 64 位数量),以便在存储在 mySQL 数据库列中时占用更少的空间。这个 UTC 字符串是从另一个库生成的,我将它存储为一种每用户 GUID。

datetime 或 dateutil 能否将其转换为单个整数值(例如“自纪元以来的毫秒数”)?还是我需要自己做?

使用这种方法解析:

myDateTime = dateutil.parser.parse("2015-06-27T02:10:05.653000Z")
print("Parsed datetime String is {0}, ordinal value is {1}".format(myDateTime, myDateTime.toordinal()))
Run Code Online (Sandbox Code Playgroud)

给出输出:

Parsed datetime String is 2015-06-27 02:10:05.652999+00:00, ordinal value is 735776
Run Code Online (Sandbox Code Playgroud)

...它只给出日期的序数值。此外,如果我有一个整数 653 毫秒的时间,那么我希望解析的对象知道它有 653 毫秒,而不是 652999。

python mysql datetime datetime-format python-2.7

2
推荐指数
1
解决办法
7198
查看次数

python 代码 strftime("%s") 错误

python程序如下,报错:

文件“C:\Python\PyCharmProject\FaceBookCrawl\group_download.py”,第 31 行,在 getFeed 参数中 += "&since=" + SINCE.strftime("%s")
ValueError: Invalid format string

程序好像SINCE.strftime("%s")错了,怎么解决?

SINCE = datetime.datetime.now() - datetime.timedelta(DAYS)

params = "?fields=permalink_url,from,story,type,message,link,created_time,updated_time,likes.limit(0).summary(total_count),comments.limit(0).summary(total_count)"

#Default paging limit
params += "&amp&limit=" + DEFAULT_LIMIT

#Time-based limit
params += "&since=" + SINCE.strftime("%s")
graph_url = GRAPH_URL_PREFIX + group + "/feed" + params
Run Code Online (Sandbox Code Playgroud)

python

2
推荐指数
1
解决办法
2893
查看次数