2013-02-22 51 views
0
from __future__ import print_function 
import pysolr 

class SolrFunc: 
    def __init__(self,urlx,timex=60): 
     self.url=urlx 
     self.timer = timex 

    def filter_add(self,fill): 
     self.filterx = [] 
     self.filterx.append(fill) 

    def filter_adds(self,fills): 
     self.filtery= [] 
     x = fills.split(',') 
     for i in x:   
      self.filtery.append(i) 

    def query(self): 
     solr = pysolr.Solr(self.url,self.timex) 
     solr.optimize() 
     results = solr.search('*:*',fq = self.filtery) 
     for result in results: 
      print(result['raw_location'] 

urly = "http://url/solr/" 
testr = SolrFunc(urly,10) 
testr.filter_adds('gender:male','country_code:in') 
tester.query() 

在上面的代碼我得到:類相關的錯誤:級別基本

File "xyz.py", line 26 
    urly = "http://url/solr/" 
^

語法錯誤:無效的語法

是否有類聲明或別的什麼問題,因爲網址是應該是字符串,並在我做urllib.urlopen.read()時工作正常urllib.urlopen.read()

回答

0

您在上一行缺少右括號:

print(result['raw_location'] 
+0

謝謝,但它的奇怪的錯誤顯示在下一行 – user1653962 2013-02-22 07:03:52

+0

這是因爲一個未關閉的括號繼續聲明,直到它被關閉。這就是你如何在Python中進行*續行*。所以解釋者認爲'urly = ...'部分屬於'print(...'調用。 – 2013-02-22 07:23:06