python setup.py install SyntaxError:语法无效926

时间:2013-07-13 01:30:54

标签: python centos5 setup.py mod-pywebsocket

我正在尝试按照本指南“https://code.google.com/p/websocket-sample/wiki/HowToInstallMod_pywebsocket

在CentOS 5.9 32位上安装“mod_pywebsocket”

但是使用命令“sudo python setup.py install”我看到一个错误:

[root@localhost src]# python setup.py install
running install
running build
running build_py
running install_lib
byte-compiling /usr/lib/python2.4/site-packages/mod_pywebsocket/mux.py to mux.pyc
  File "/usr/lib/python2.4/site-packages/mod_pywebsocket/mux.py", line 926
    finally:
          ^
SyntaxError: invalid syntax
[root@localhost src]#

这里有一些“mux.py”文件:

916   Writing data will block the worker so we need to release
                # _send_condition before writing.
                self._logger.debug('Sending inner frame: %r' % inner_frame)
                self._request.connection.write(inner_frame)
                write_position += write_length

                opcode = common.OPCODE_CONTINUATION

        except ValueError, e:
            raise BadOperationException(e)
926     finally:
            self._write_inner_frame_semaphore.release()

    def replenish_send_quota(self, send_quota):
        """Replenish send quota."""

        try:
            self._send_condition.acquire()
            if self._send_quota + send_quota > 0x7FFFFFFFFFFFFFFF:
                self._send_quota = 0
                raise LogicalChannelError(

这是什么意思?我该怎么做?

1 个答案:

答案 0 :(得分:0)

问题是mux.py中使用的语法在Python 2.4中不起作用。正如当前Python 2 Language Reference所述:

  

在2.5版中更改:在以前的Python版本中,   try...except...finally没有用。 try...except必须嵌套在   try...finally

我的猜测是mod_pywebsockets中的代码自上次使用CentOS上的Python 2.4进行HowTo测试后发生了变化。您可以查看修补代码以避免try...except...finally或搜索mod_pywebsockets代码库以查找可与Python 2.4一起使用的早期版本,或者您可以安装并使用较新版本的Python 2(Python 2.7.5是当前的)与Python 2.4系统一起。