错误没有名为curses的模块

当我尝试运行下面的代码…

from telnetsrvlib import * if __name__ == '__main__': "Testing - Accept a single connection" class TNS(SocketServer.TCPServer): allow_reuse_address = True class TNH(TelnetHandler): def cmdECHO(self, params): """ [<arg> ...] Echo parameters Echo command line parameters back to user, one per line. """ self.writeline("Parameters:") for item in params: self.writeline("\t%s" % item) def cmdTIME(self, params): """ Print Time Added by dilbert """ self.writeline(time.ctime()) logging.getLogger('').setLevel(logging.DEBUG) tns = TNS(("0.0.0.0", 8023), TNH) tns.serve_forever() 

我得到这个错误

 Traceback (most recent call last): File ".\telserv.py", line 1, in <module> from telnetsrvlib import * File "C:\Python27\lib\site-packages\telnetsrvlib-1.0.2-py2.4.egg\telnetsrvlib.py", line 31, in <module> import curses.ascii File "C:\Python27\lib\curses\__init__.py", line 15, in <module> from _curses import * 

我正在运行Python 2.7,并导入了telnetsrvlib库,我在Windows 7上运行的代码。任何帮助,将不胜感激。

Solutions Collecting From Web of "错误没有名为curses的模块"

从这里安装UniCurses模块: https ://pypi.python.org/pypi/UniCurses

您可能需要更改一些代码才能使用它,因为它提供了NCurses的功能,而不是香草诅咒库。

不幸的是,没有直接的Python for Windows的诅咒端口存在。

你也可以看看从这里安装curses模块: http : //www.lfd.uci.edu/~gohlke/pythonlibs/#curses 。

它允许python的原生curses在Windows上使用,所以你可以使用所有标准的python curses代码。

在Ubuntu 14.04上得到了与Python 3.4相同的错误,这里是我如何修复它。

我的/usr/local/lib/python3.4/lib-dynload/目录没有下列文件 –

 _curses.cpython-34m.so _curses_panel.cpython-34m.so 

得到了最新的Python 3.4.2 源代码的副本。 然后(提取&)编译它:

 ./configure make 

现在,我需要的.so文件在build/lib.linux-i686-3.4/ ,我将它们复制到/usr/local/lib/python3.4/lib-dynload/

受@YKB启发,我为Ubuntu 16.04和Python3.5.2做了这个,

sudo apt-get install libncurses5-dev

然后转到Python的源代码,并make两个新文件。

 _curses.cpython-35m-x86_64-linux-gnu.so _curses_panel.cpython-35m-x86_64-linux-gnu.so 

然后将它们复制到你安装python的lib-dynload文件夹中。

你甚至可以找到源代码并将其粘贴到lib文件夹! 之后,进口将照常进行。

 <h1>Maker's Effect</h1> <input type = 'text' value = 'Enter Anything to Test your Keyboard : '/> <input type = 'button' value = ' Done! '/>