Python将长数转换为浮点数我相信(例如:x.xxxe + yy)

时间:2013-05-03 15:06:47

标签: python

我正在使用python和twitter做一个小脚本,除了一件小事之外,它的工作正常并且一切都很好。

当我导入某个用户的推文的ID时,我打印出来看看我是否收到了正确的信息,而且,当我将其打印出来时,它就像这样:

330090997180665856

(来自cnn的一些随机推文。)然而,我正在使用texttable将它们打印到我正在获得的每条推文的转推计数旁边的表中,并且这也正常。然而,在推文ID所在的专栏中,它就是这样的:

3.301e+17

我假设这是因为python认为这是一个很长的因为某些原因而变成浮点数。我把它变成一个字符串,或者在我把它添加到推文列表之前将它转换成一个int,但问题仍然存在,我不知道该怎么做,我已经尝试做多(tweet_id)但是没有不管怎样。

可能有一些非常简单的解决方案,但我还没找到:/

编辑:这是我的代码: 一些OAuth之前但没有把它放在这里

def main():
USER_ID = raw_input("Enter User Id: ")
COUNT = input("How many tweets to analyze: ")
OUT_FILE_NAME = OUT_DIR + 'output_file_test' + USER_ID + '.txt'

tweet_list = []
retweet_count_list = []
total_retweets = 0
#tweet_cursors = Cursor(api.user_timeline, id = USER_ID).items(COUNT)
while True:
    try:
        for tweet_cursor in Cursor(api.user_timeline, id = USER_ID).items(COUNT):
            print "cursoring"
            x = str(tweet_cursor.id)
            tweet_list.append(x)
            print x
            y = tweet_cursor.retweet_count
            retweet_count_list.append(y)
            print y
            total_retweets = total_retweets + y

        break
    except TweepError, e:
        some error handling


avg_retweet = total_retweets / COUNT
print "The Average retweets per tweet was: "
print avg_retweet
header = ["Tweet Id", "Retweet Amount"]
tab.header(header)
tab.set_cols_width([30,30])
for i in range(0, COUNT):
    one = str(tweet_list[i])
    two = str(retweet_count_list[i])
    tab.add_row([one, two])
output_table = tab.draw()
print output_table    

1 个答案:

答案 0 :(得分:1)

您需要set_cols_dtype到整数('i')。看起来默认为自动('a')。

table = texttable.Texttable()
table.set_cols_dtype(['i',   # integer
                      'a' ]) # automatic
table.add_rows([['int', 'auto'], [330090997180665856, 330090997180665856], [1, 1]])
print table.draw()

给出:

+--------------------+-----------+
|        int         |   auto    |
+====================+===========+
| 330090997180665856 | 3.301e+17 |
+--------------------+-----------+
| 1                  | 1         |
+--------------------+-----------+