Eu não sei porque; mas desde que o python 3.8 foi lançado; Não consigo executar o console pycharm e ele está sempre no status "estando conectado".
Eu não tive nenhum problema com python 3.7; desde que o console seja aberto imediatamente.
Aqui você pode ver que tentei várias vezes executar o console, mas sei que, mesmo que espere um dia; Ele não se conecta ao console; mas quando mudo o intérprete de python3.8 para python3.7, os novos consoles que abro são todos configurados em um segundo.
O erro:
C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\pydev\_pydevd_bundle\pydevd_resolver.py:138: SyntaxWarning: "is not" with a literal. Did you mean "!="?
if found.get(name) is not 1:
Traceback (most recent call last):
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\pydev\pydevconsole.py", line 33, in <module>
from _pydev_bundle.pydev_console_utils import BaseInterpreterInterface
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\pydev\_pydev_bundle\pydev_console_utils.py", line 11, in <module>
from _pydevd_bundle import pydevd_thrift
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\pydev\_pydevd_bundle\pydevd_thrift.py", line 17, in <module>
from pydev_console.protocol import DebugValue, GetArrayResponse, ArrayData, ArrayHeaders, ColHeader, RowHeader, \
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\pydev\pydev_console\protocol.py", line 6, in <module>
_console_thrift = _shaded_thriftpy.load(os.path.join(os.path.dirname(os.path.realpath(__file__)), "console.thrift"),
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\parser\__init__.py", line 29, in load
thrift = parse(path, module_name, include_dirs=include_dirs,
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\parser\parser.py", line 502, in parse
parser.parse(data)
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_ply\yacc.py", line 331, in parse
return self.parseopt_notrack(input, lexer, debug, tracking, tokenfunc)
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_ply\yacc.py", line 1106, in parseopt_notrack
p.callable(pslice)
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\parser\parser.py", line 212, in p_struct
val = _fill_in_struct(p[1], p[3])
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\parser\parser.py", line 765, in _fill_in_struct
gen_init(cls, thrift_spec, default_spec)
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\thrift.py", line 103, in gen_init
cls.__init__ = init_func_generator(default_spec)
File "C:\Program Files\JetBrains\PyCharm 2019.1.3\helpers\third_party\thriftpy\_shaded_thriftpy\_compat.py", line 102, in init_func_generator
new_code = types.CodeType(len(varnames),
TypeError: an integer is required (got type bytes)
A foto:
pycharm specs: pycharm versão profissional 2019.1.3
python
console
pycharm
python-3.8
Moh Vahedi
fonte
fonte
Respostas:
Funciona bem no PyCharm (Community) 2019.3 .
O PyCharm é enviado [PyPI]: thriftpy (para a versão atual, é uma v0.3.8 modificada ), pois é necessário para diferentes recursos (incluindo o Python Console ).
Python 3.8 veio com um conjunto de alterações (um exemplo é [Python]: PEP 570 - Python posicionais-Somente Parâmetros ) exigindo mudanças em muitas das (3 existentes rd -party) pacotes em ordem para que eles funcionem (por alguns dos eles ainda há WiP ).
Aparentemente, o ThriftPy é um daqueles pacotes que exigem alterações. No entanto, ele não é mantido desde 2016, então o JetBrains mantém (uma cópia / bifurcação?) Em seu repositório.
De qualquer forma, o problema que você está enfrentando foi corrigido pelo [GitHub]: JetBrains / intellij-community - PY-36069 Suporte ao console Python para Python 3.8 .
Infelizmente, não encontrei o problema no JetBrains.YouTrack , por isso não tenho informações adicionais sobre ele (como quando foi corrigido e assim por diante).
O que posso dizer (também mencionado no início) é que foi corrigido (funciona) no PyCharm (Comunidade) 2019.3 , portanto, se você atualizá-lo, não terá mais esse problema.
Uma solução alternativa (se a atualização não for uma opção) seria aplicar o patch (na URL de confirmação ) ao seu arquivo _compat.py (local) . Marque [SO]: Executar / Depurar os UnitTests de um aplicativo Django no menu de contexto do mouse, com o botão direito do mouse no PyCharm Community Edition? (Resposta de @ CristiFati) ( seção Patching utrunner ) para saber como aplicar patches (no Win ).
Pequena menção: a aplicação do patch invertido no meu arquivo local tornou o problema visível.
fonte
@CristiFati
pela resposta.