2024-09-28 03:22:35 发布
网友
我被我的macosx终端和Djangomanage.pyshell和pdb的一些行为弄糊涂了。在
manage.py
当我启动一个新终端时,标准输入显示为输入。但是,如果出现错误,屏幕上突然不会出现标准输入。这个错误一直持续到我关闭终端窗口。在
输入仍然被捕获,因为我可以看到标准输出。在
例如,在pdb.set_trace()中,我可以“l”显示我在代码中的位置。但是,“l”不会显示,只是一个空提示。在
pdb.set_trace()
这使得调试变得很困难,因为我无法确定输入的内容。在
会出什么问题?我能做些什么来解决它?在
尝试在Mac OS X上安装readline:
$ sudo easy_install readline
这是瞎猜,但也许它解决了你的问题。在
可能这是因为运行Django时出错。有时std输入会因为使用stty而消失。您可以通过键入以下命令手动隐藏输入:
stty
$ stty -echo
现在你看不到你输入了什么。要恢复这个并解决您的问题,只需输入
$ stty echo
这可能有帮助。在
如果您退出pdb,您可以键入reset并返回标准输入echo。我不确定您是否可以在pdb中执行类似的操作。但它将删除当前显示的内容。在
尝试在Mac OS X上安装readline:
这是瞎猜,但也许它解决了你的问题。在
可能这是因为运行Django时出错。有时std输入会因为使用
stty
而消失。您可以通过键入以下命令手动隐藏输入:$ stty -echo
现在你看不到你输入了什么。要恢复这个并解决您的问题,只需输入
$ stty echo
这可能有帮助。在
如果您退出pdb,您可以键入reset并返回标准输入echo。我不确定您是否可以在pdb中执行类似的操作。但它将删除当前显示的内容。在
相关问题 更多 >
编程相关推荐