El objeto ‘PyDevTerminalInteractiveShell’ no tiene atributo ‘has_readline’

Estoy usando Pycharm 2016.1 en CentOS7 y estoy probando ” Show command line afterwards ” y obtuve este problema:

 AttributeError: 'PyDevTerminalInteractiveShell' object has no attribute 'has_readline' 

 /usr/bin/python3.4 /usr/local/pycharm/helpers/pydev/pydev_run_in_console.py 37196 52554 /root/PycharmProjects/mytf/mytest/test5.py Traceback (most recent call last): File "/usr/local/pycharm/helpers/pydev/pydev_run_in_console.py", line 63, in  interpreter = InterpreterInterface(host, int(client_port), threading.currentThread()) File "/usr/local/pycharm/helpers/pydev/_pydev_bundle/pydev_ipython_console.py", line 26, in __init__ self.interpreter = get_pydev_frontend(host, client_port, show_banner=show_banner) File "/usr/local/pycharm/helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 473, in get_pydev_frontend _PyDevFrontEndContainer._instance = _PyDevFrontEnd(show_banner=show_banner) File "/usr/local/pycharm/helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 303, in __init__ self.ipython = PyDevTerminalInteractiveShell.instance() File "/usr/lib/python3.4/site-packages/traitlets/config/configurable.py", line 412, in instance inst = cls(*args, **kwargs) File "/usr/lib/python3.4/site-packages/IPython/terminal/interactiveshell.py", line 359, in __init__ super(TerminalInteractiveShell, self).__init__(*args, **kwargs) File "/usr/lib/python3.4/site-packages/IPython/core/interactiveshell.py", line 487, in __init__ self.init_completer() File "/usr/local/pycharm/helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 222, in init_completer self.Completer = self._new_completer_200() File "/usr/local/pycharm/helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 194, in _new_completer_200 use_readline=self.has_readline, AttributeError: 'PyDevTerminalInteractiveShell' object has no attribute 'has_readline' 

Este problema de PyCharm ocurre debido a cambios en la API de iPython con la versión 5 de iPython . Hasta que Jetbrains solucione esto, volver a una versión anterior de iPython (versión 4) corregirá esto. Como @chenfei ha descubierto, esto se puede hacer a través de pip :

 $ pip uninstall ipython $ pip install ipython==4.2.0 

Editar

Y si no puedes esperar tanto, Jetbrains ha lanzado un parche.

https://youtrack.jetbrains.com/issue/PY-20013#comment=27-1512407

Edición final

Este problema se ha solucionado en PyCharm 2016.2

Resolví mi problema instalando la versión 4.2 de ipython:

 pip uninstall ipython pip install ipython==4.2.0 

La forma en que logré resolver este problema sin degradar iPython fue:

1 – Descarga el siguiente parche:

https://youtrack.jetbrains.com/_persistent/pycharm_ipython5_fix.patch?file=74-327779&c=true

2 – Dentro de PyCharm , crea un nuevo proyecto ubicado en:

 /helpers/pydev/_pydev_bundle/ 

Pycharm le pedirá que importe los archivos en esa carpeta, acepte .

3 – Haga clic en VCS y elija Aplicar parche

4 – Elija el archivo que ha descargado en el paso 1 .

5 – Se abrirá la ventana Aplicar parche , haga clic en Aceptar

6 – Reiniciar PyCharm

La consola de Python ahora debería estar funcionando dentro de PyCharm


PD: puede eliminar la carpeta de proyecto (.idea) que ha creado en el Paso 2