我正在用 python 编写程序,用户将通过命令行使用程序。我正在使用 raw_input 从用户那里获取命令。我想在 bash 等中拥有“记忆”,所以,如果你在键盘上按下箭头(向上或向下),你会得到上一个/下一个命令。我知道一种方法(只需获取用户输入的每个字符并检查它),但也许你知道更好/更可爱的东西:-)
问候
我正在用 python 编写程序,用户将通过命令行使用程序。我正在使用 raw_input 从用户那里获取命令。我想在 bash 等中拥有“记忆”,所以,如果你在键盘上按下箭头(向上或向下),你会得到上一个/下一个命令。我知道一种方法(只需获取用户输入的每个字符并检查它),但也许你知道更好/更可爱的东西:-)
问候
如果我了解您想要什么,您只需导入readline
模块即可实现。这将修改 的行为raw_input()
,使其在历史和行编辑方面更像 python 交互式 shell。
不过要小心,可以在没有的情况下构建 python,readline
所以我建议在 try 块中导入它:
try:
import readline
except:
pass #readline not available
内置的readline 模块提供了这个功能。