2015-04-02 89 views
-4

当我输入变量谷歌的AppEngine长为Int

a = int(1388620800)*1000 

这个变量返回

1388620800000 

但在谷歌的AppEngine服务器(当然),这个变量是由https://cloud.google.com/appengine/docs/python/datastore/typesandpropertyclasses#int

改变
1388620800000L 

如何将1388620800000L转换为Appengine中的int类型?

编辑

我将显示此号码JSON。在本地的Python2.7中,变量'a'只是整数。但在appengine服务器中,变量'a'具有字符串'L'。我用str()和.replace('L','')解决了它,但我想知道如何通过改变数字类型来解决它。

回答

0

这不是一个App Engine问题。

在Python中,long和int是完全等价的,没有理由需要从一个转换到另一个。

编辑

你的解释是没有意义的两种,很遗憾。 JSON有没有长型,和Python的json库使得多头和整数之间没有区别:

>>> json.dumps(1388620800000L) 
'1388620800000' 
>>> json.dumps(1388620800000) 
'1388620800000' 

正如你可以看到,他们的待遇完全相同。

+0

这是App Engine的问题。当你输入变量a = int(1388620800)* 1000时,python2.7中的a是int。但在appengine服务器中,a是Long类型。 – 2015-04-02 14:53:01

+0

但*没有区别*。你为什么在乎?你为什么认为你需要转换它? – 2015-04-02 14:56:44

+0

对不起,我的弱解释。我编辑了我的问题。 – 2015-04-02 14:58:27

0

App Engine使用python 2.7,int和long在这个版本中统一。

查看更多信息这个问题: How does Python manage int and long?

我真的不明白你为什么要当你在我看来,没有理由这样做转换这个数。

+0

当我打印这个号码时,他们有L字符串。所以我想用int类型去除它。 – 2015-04-02 14:51:32