2012-11-18 51 views
2

我越来越即使所有的部件都是字符串蟒蛇类型的错误

request = str(self.SETUP) + " " + str(self.fileName) + "RTSP/1.0"; 
TypeError: unsupported operand type(s) for +: 'int' and 'str' 

整个代码段下面的Python错误:

if requestCode == self.SETUP and self.state == self.INIT: 
    threading.Thread(target=self.recvRtspReply).start() 
    # Update RTSP sequence number. 
    self.rtspSeq = self.rtspSeq + 1 

    # Write the RTSP request to be sent. 
    request = str(self.SETUP) + " " + str(self.fileName) + "RTSP/1.0" 


    # Keep track of the sent request. 
    self.requestSent = request 
+5

我觉得你不会给我们整条线,最后以''来判断。 – StoryTeller

+1

到目前为止,我看到您显示的内容没有任何问题。有更多的线,或self.SETUP或self.filename属性,触发一些代码?你确定这是引发异常的线吗? – MikeHunter

+0

可能是一个奇怪的角落案例,但是你定义了一个名为'str'的​​自己的函数来返回一个'int'吗? – phimuemue

回答

0

试试这个:

if requestCode == self.SETUP and self.state == self.INIT: 
    threading.Thread(target=self.recvRtspReply).start() 
    # Update RTSP sequence number. 
    self.rtspSeq = int(self.rtspSeq) + 1 

    # Write the RTSP request to be sent. 
    rtps_req = "RTSP/1.0" 
    request = "%s %s %s" % (str(self.SETUP),str(self.fileName), rtps_req) 


    # Keep track of the sent request. 
    self.requestSent = request