Python Pycharm:如何启动标准终端(解决诅咒问题)

Python Pycharm:如何启动标准终端(解决诅咒问题),python,python-2.7,pycharm,curses,Python,Python 2.7,Pycharm,Curses,我正面临一个奇怪的问题。 使用Pycharm(请不要对这一事实大惊小怪),我正在尝试启动一个简短的应用程序,它使用ncurses来呈现我任期内的一些东西 虽然我可以用一个简单的术语毫无问题地启动项目,但从Pycharm启动它会引发以下错误: File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/curses/__init__.py", line 33, in initscr fd=_sys

我正面临一个奇怪的问题。 使用Pycharm(请不要对这一事实大惊小怪),我正在尝试启动一个简短的应用程序,它使用
ncurses
来呈现我任期内的一些东西

虽然我可以用一个简单的术语毫无问题地启动项目,但从Pycharm启动它会引发以下错误:

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/curses/__init__.py", line 33, in initscr
    fd=_sys.__stdout__.fileno())
error: setupterm: could not find terminal

Process finished with exit code 0 
就我所见,一切都与终端环境变量有关。Pycharm从它自己的终端实例启动项目(运行或调试),而curses将无法使用它。因此,我想知道如何配置Pycharm,以便在常规终端内启动我的项目

该项目使用的是Python2.7。 Pycharm在EAP版本129.258中(不适用于其他版本,包括stables)

谢谢你的关注

K.

  • 启动PyCharm并确保ncurses在文件->设置->项目解释器->Python解释器中列出
  • 如果安装了2.7和3.x解释器,请确保为启动应用程序的项目选择了正确的解释器(支持ncurses)

我非常确定您的计算机上同时安装了2.7和3.x版本-在安装了Python的两个分支的情况下,我遇到了pycharm的大部分问题。

我通过将调试器附加到进程解决了curses调试问题

  • 在终端中启动程序
  • Pycharm->工具->附加到流程
  • 选择我的程序
  • 完成
尝试以非根用户身份附加需要额外的ptrace访问权限

解释如下:

在我的ubuntu机器上:
echo 0>/proc/sys/kernel/yama/ptrace_scope
(作为根目录)


分别在/etc/sysctl.d/10 ptrace.conf中将
ptrace\u scope设置为0

查看或尝试这样运行PyCharm:
open-a/Applications/PyCharm.app/
。我认为问题在于PyCharm没有使用真正的终端,因此您对此无能为力。只需从真正的终端启动程序即可。@Bakuriu请在评论之前查看整个问题。正如你所看到的,这个问题提到了问题是Pycharm没有启动一个真正的术语,这个问题也暗示了我不想只是从一个普通的终端启动它。无论如何,谢谢你的关注:)@CrazyCoder谢谢你的提示!“open-a”有帮助,Pycharm工作得更好,尽管集成终端模拟器在管理诅咒方面非常差,并且缺乏一些其他功能。使用内置SSH终端和本地主机连接可以获得更好的结果。请注意,现在是“Pycharm->Run->Attach To Process”。