Python:ValueError:2不在列表中

时间:2014-04-28 13:18:48

标签: python list mongodb

我是python的初学者,我遇到了这个错误。如果你能告诉我哪里出错了会很有帮助。这是我的代码:

import math
import nltk
import json
import pymongo
#import sys
import nltk.corpus

from funcs import get_name_entity
from funcs import sentiment_analysis
from funcs import get_wordlist
from funcs import get_pos_tag

def get_post(count):
    data = ()
    client = pymongo.MongoClient("localhost", 27017)        #take data from database Mongo
    db = client.News_Updated                                #accessing the database News_Updated
    db.News_Updated.find()
    temp = []
    #print count
    if count == 0:
       data = db.ndtv
    elif count == 1 :
       data = db.timesofindia
    elif count == 2 :
       data = db.hindustantimes
    elif count == 3 :
       data = db.asianetnews
    elif count == 4 :
       data = db.khabarndtv
    #print data.find()

    for post in data.find():
        temp.append(post)
    return temp

if __name__ == '__main__':
    count = 0
    limit = -1
    while count < 5:
        data = get_post(count)
        count += 1
        for text in data.index(2):
            print text          

但是我得到的输出为:

  

追踪(最近一次通话):     文件“main.py”,第43行,in       对于data.index(2)中的文本:   ValueError:2不在列表中

这是来自mongodb的数据样本。

  

{u'url':你们62岁的女人谋杀了泰米尔 - 纳杜 - 萨利姆-510469',u'_id':ObjectId('53551ebf39b71c444a991341'),u'data' :你们,塞勒姆,泰米尔纳德邦:警方说,在一项大胆的白天谋杀事件中,一名62岁的女子在泰米尔纳德邦塞勒姆一个繁忙的商业地点被两名年轻人杀死为金链子.Dhanlakshmi在柜台后面他们说,当她的丈夫在Arunachalaachari街上的小店里,当袭击者用刀割开她的喉咙,然后带着她穿的金链逃走时,他们说.Arunachalaachari街上点缀着珠宝,船只和纺织品商店,被认为是繁忙的商业广告。该事件在当地人中引起了冲击。警察局副局长巴布访问了当地。“}

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

如指向in the docsindex()检索给定元素的列表索引。就你而言,那是2。您看到的错误是因为序列中没有2这样的元素(data)。

也许您想使用data[2]?你的问题不是很清楚。