2013-06-30 59 views
3

我使用GUI元素有一个程序,并返回错误不能连接“STR”和“实例”

cannot concatenate 'str' and 'instance' objects 

的代码是:

def PeopleSearch(): 
    query = SearchTerm 
    query = ('what is '+ query) 
    string = ("<center><font size = 14> " + query + ' </font></center><br><img src =picture') 
    j = 0 
    try: 
     gs = GoogleSearch(query) 
     gs.results_per_page = 100 
     results = gs.get_results() 

凹口已被更改。嗯。 SearchTerm基本上来自一个文本框。

+5

尝试:'( '什么是' + STR(查询))' –

+0

否则,你可以做一个丑陋的黑客攻击,并在'query = SearchTerm'下面放置'print dir(query)',wioll给你查询实例的所有属性。然后你可以看到你应该使用哪个属性。 –

+1

当你说“SearchTerm基本上来自一个文本框”时,这是什么意思?这显然不只是文本小部件的文本,或者您不会遇到这个问题。而tkinter没有“文本框”小部件;它有一个文本小部件和一个入口小部件,以及一个画布上的文本对象。 –

回答

6

让我用一个简单的例子重现:

v = 42 
query = ('what is ' + v) 

你会得到:

TypeError: cannot concatenate 'str' and 'int' objects 

但现在,如果你简单地调用str

query = ('what is ' + str(v)) 

,将工作。所以你只需要确保str(query)可以回报你的期望。要小心,我不知道你在操作什么样的对象,但是你应该检查是否有任何方法来获取它的字符串表示。

相关:

相关问题