带有 python 2.7 的 Windows 上的 Readline 功能
Posted
技术标签:
【中文标题】带有 python 2.7 的 Windows 上的 Readline 功能【英文标题】:Readline functionality on windows with python 2.7 【发布时间】:2011-08-26 20:47:43 【问题描述】:我需要在一个用 python 编写的程序中导入 readline 功能。我目前使用的是 2.7 版,而我看到的第 3 方包只能工作到 2.6 版。有人知道带有 Python 2.7 的 Windows 的 3rd 方 readline 包吗?
【问题讨论】:
【参考方案1】:我相信 pyreadline 就是为此而设计的。
easy_install pyreadline
或:pip install pyreadline
http://pypi.python.org/pypi/pyreadline
此外,为了向前/向后兼容,请使用以下内容:
try:
import readline
except ImportError:
import pyreadline as readline
【讨论】:
很高兴听到这个消息!如果它给您带来任何问题,请回复回复。 +1 @BenBurns:请问平台兼容性如何工作? “如果可用,导入pyreadline(并称其为readline)。如果不可用,直接导入readline。”那是对的吗?也就是说,pyreadline 版本是否优于普通 readline?谢谢。 是的,但是“平台兼容性”是错误的短语——“向前可移植性”更合适。这个try
/except ImportError
模式允许您在较旧的python 版本上使用反向移植的模块,但在较新的版本上仍然可以运行代码而无需修改。
请注意,pyreadline 似乎不再维护,并且存在一些重大错误。【参考方案2】:
不幸的是,在 2019 年,pyreadline
不再真正开发了。
它远非“插入式”替代品,但您可以查看Python Prompt Toolkit. 它提供制表符补全功能,然后在几乎所有平台上都有一些功能。如果您仍在使用 Python 2,you really should upgrade,但 Prompt Toolkit 似乎确实支持 Python 2,from __future__ import unicode_literals
。
【讨论】:
以上是关于带有 python 2.7 的 Windows 上的 Readline 功能的主要内容,如果未能解决你的问题,请参考以下文章
Python 2.7 smtplib 如何发送带有错误 13 权限的附件被拒绝?
在 Mac OS X 10.6 上使用带有 Python 2.7 的 Google App Engine SDK
使用 Python 2.7 在 Windows 上运行 Scapy