次のコードを実行しようとすると...
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でコードを実行しています。助けていただければ幸いです。
ここからUniCursesモジュールをインストールします: https://pypi.python.org/pypi/UniCurses
Vanilla cursesライブラリーではなくNCursesの機能を提供するため、コードを使用するために一部のコードを変更する必要がある場合があります。
残念ながら、直接のPython for Windows for cursesのポートは存在しません。
ここからcursesモジュールをインストールすることもできます: http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses 。
これは、PythonのネイティブcursesをWindowsで使用できるようにするため、すべての標準python cursesコードを使用できます。
それは私にとってはうまくいきます:
pip install windows-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 source のコピーを取得します。次に、(抽出された&)でそれをコンパイルします。
./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
を実行すると、2つの新しいファイルが作成されます。
_curses.cpython-35m-x86_64-linux-gnu.so
_curses_panel.cpython-35m-x86_64-linux-gnu.so
次に、Pythonをインストールしたlib-dynload
フォルダーにコピーします。
それは私にとってはうまくいきます:
pip install windows-curses
AnacondaプロンプトまたはIDEを入力します