python:无法连接'str'和'tuple'对象(它应该可以工作!)

Car*_*sPl 10 python string tuples

我有一个代码:

print "bug " + data[str.find(data,'%')+2:-1]
temp = data[str.find(data,'%')+2:-1]
time.sleep(1)
print "bug tuple " + tuple(temp.split(', '))
Run Code Online (Sandbox Code Playgroud)

在此之后我的应用程序显示:

错误1,2,3 回溯(最近一次调用最后一次):文件"C:\ Python26\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py",第312行,在main中的RunScript exec codeObject中.dict 文件"C:\ Documents and Settings\k.pawlowski\Desktop\atsserver.py",第165行,打印"bug tuple"+ tuple(temp.split(','))TypeError: 无法连接'str'和'元组'对象

我不知道我做错了什么.print tuple('1,2,3'.split(','))正常工作.

Ivo*_*ijk 18

print tuple(something)
Run Code Online (Sandbox Code Playgroud)

可能会工作因为print会对参数执行一个隐式的str(),但是表达式就像

"" + ()
Run Code Online (Sandbox Code Playgroud)

不起作用.您可以单独打印它们的事实没有区别,您不能连接字符串和元组,您必须转换它们中的任何一个.即

print "foo" + str(tuple("bar"))
Run Code Online (Sandbox Code Playgroud)

但是,根据str()进行转换可能不会产生预期的结果.例如,使用",".join来使用分隔符整齐地加入它们