Caa*_*los 5 python twisted python-3.x
我正在使用Twisted 16.1.1和python 3.4.在版本16.1.1的twisted的文档中,有一个教程说"来自twisted.spread import pb".但是当我尝试导入它时会出现异常.我究竟做错了什么?
Traceback (most recent call last):
File "main.py", line 10, in <module>
from twisted.spread import pb
ImportError: cannot import name 'pb'
Run Code Online (Sandbox Code Playgroud)
我正在学习本教程.这是我的代码:
from twisted.internet import reactor
from twisted.spread import pb
class Echoer(pb.Root):
    def remote_echo(self, st):
        print('echoing:', st)
        return st
if __name__ == '__main__':
    reactor.listenTCP(8789, pb.PBServerFactory(Echoer()))
    reactor.run()
Run Code Online (Sandbox Code Playgroud)
在/usr/lib64/python3.4/site-packages/twisted/spread一个名为的文件夹上   ui.没有名为pb的文件夹/文件.
我将pb.py文件复制到我的python文件夹,现在当我尝试导入pb时,我得到一个异常:
Traceback (most recent call last):
File "main.py", line 2, in <module>
from twisted.spread import pb
File "/usr/lib64/python3.4/site-packages/Twisted-16.1.1-py3.4.egg/twisted/spread/pb.py", line 890
except Error, e:
            ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
怎么了?
出现SyntaxError的原因是except Error, e:它只在 Python 2 中有效。在 Python 3 中,它将被写成except Error as e:.
问题不在于你的代码。底层模块尚未更新到 Python 3。
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           546 次  |  
        
|   最近记录:  |