0
import twitter
import unicodedata
import string


def get_tweets(user):

    resultado=[]
    temp=[]
    api=twitter.Api()#   
    statuses=api.GetUserTimeline(user)
    for tweet in statuses:
        var = unicodedata.normalize('NFKD', tweet.text).encode('utf-8', 'replace')
        print var# Horóscopo when i dont append it 
        resultado.append(var)
        print resultado# Horo\xcc\x81scopo, mie\xcc\x81rcoles i get these when i append them 


get_tweets('HoroscopoDeHoy')
4

2 回答 2

0

我认为问题出在打印命令上。Print 在列表上运行字符串转换,在将它们写入标准输出之前转义任何“有趣”字符。如果您想在同一行显示每个项目,我建议您这样做:

for item in resultado:
   print item,

这应该绕过列表上的字符串转换。

来源: http: //docs.python.org/reference/simple_stmts.html#the-print-statement http://docs.python.org/reference/expressions.html#string-conversions

于 2012-07-06T07:51:02.170 回答
0

我假设您想将 unicode 放入列表中:

  var = unicodedata.normalize('NFKD', tweet.text)
  resultado.append( var )
  temp.append(var.encode('utf-8', 'ignore'))
于 2012-07-04T19:37:49.450 回答