我一直得到Nonetype,但我不认为我应该?

时间:2012-09-14 16:58:56

标签: python flask-sqlalchemy

我正在使用sqlalchemy-flask作为我的项目以及json模块。

我有两个课程,我正在从中提取数据。

两种数据类型是Ints和List(我通过使用类型确定了这一点)。当我尝试将int附加到列表中时,我得到None。怎么了?

def update_retweet_count(TWEET, TWEET_has_retweet):

    if type(json.loads(TWEET_has_retweet.js_rt)) != list:
        list_of_retweets = list([0])
    else:
        list_of_retweets = list(json.loads(TWEET_has_retweet.js_rt))

    new_rtc = int(TWEET.tmp_rt_count)

    x = list_of_retweets.append(new_rtc)
    print x 

当我跑到X以上时是无。

4小时后我在下面尝试这个,它有效!

def update_retweet_count(TWEET, TWEET_has_retweet):
    if type(json.loads(TWEET_has_retweet.js_rt)) != list:
        list_of_retweets = list([0])
    else:
        list_of_retweets = list(json.loads(TWEET_has_retweet.js_rt))

    lst =[]

    new_rtc = int(TWEET.tmp_rt_count)

    [lst.append(y) for y in list_of_retweets]

    lst.append(new_rtc)

    print lst

为什么第一个代码不起作用?

谢谢!

费尔南多

1 个答案:

答案 0 :(得分:3)

list.append始终返回None:它会将列表更改为。你这样做:

x = list_of_retweets.append(new_rtc)
print x
第一个例子中的

和:

lst.append(new_rtc)
print lst

在第二个(正确)示例中。