pycharm tidak terhubung ke konsol dengan python3.8

10

Saya tidak tahu mengapa; tetapi karena python 3.8 telah dirilis; Saya tidak bisa menjalankan konsol pycharm dan selalu dalam status "sedang terhubung".

Saya tidak punya masalah dengan python 3.7; sejak konsol dibuka segera.

Di sini Anda dapat melihat bahwa saya telah mencoba beberapa kali untuk menjalankan konsol tetapi saya tahu, bahkan jika saya menunggu sehari; Itu tidak terhubung ke konsol; tetapi ketika saya mengubah juru bahasa dari python3.8 ke python3.7, konsol baru yang saya buka semuanya diatur dalam satu detik.

Kesalahan:

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)

Foto:

Tangkapan layar

spesifikasi pycharm: pycharm versi profesional 2019.1.3

Moh Vahedi
sumber
Apakah Anda mengkonfigurasi penerjemah? jetbrains.com/help/pycharm/configuring-python-interpreter.html Juga, python mana (jika Anda menginstal keduanya) yang ada di jalur Anda?
Swedgin
@Sedangkan; Ya saya lakukan, konfigurasi dan path diberikan dengan benar ke pycharm.
Moh Vahedi
@Swedgin, sudahkah Anda menebak apa yang dikatakan kesalahan kepada kami?
Moh Vahedi
Maaf, tidak dapat membantu Anda. Sudah lama sejak saya menggunakan pycharm. Hanya itu 2 masalah yang bisa saya pikirkan.
Swedgin

Jawaban:

7

Ini berfungsi dengan baik di PyCharm (Komunitas) 2019.3 .

PyCharm ship [PyPI]: thriftpy (untuk versi saat ini, ini adalah v0.3.8 yang dimodifikasi ), karena membutuhkannya untuk fitur yang berbeda (termasuk Konsol Python ).

Python 3.8 datang dengan satu set perubahan (satu contoh adalah [Python]: PEP 570 - Python Positional-Only Parameters ) yang membutuhkan perubahan di banyak paket (3 rd -party) yang ada agar mereka dapat berfungsi (untuk beberapa mereka, masih ada WiP ).

Rupanya, ThriftPy adalah salah satu paket yang membutuhkan perubahan. Namun itu belum dipertahankan sejak 2016, jadi JetBrains menyimpan (salinan / garpu?) Di repositori mereka.

Bagaimanapun, masalah yang Anda hadapi, telah diperbaiki oleh [GitHub]: JetBrains / intellij-community - PY-36069 dukungan konsol Python untuk Python 3.8 .
Sayangnya, saya tidak dapat menemukan masalah di JetBrains.YouTrack , jadi saya tidak punya info tambahan tentang itu (seperti ketika diperbaiki, dan sebagainya).

Apa yang dapat saya sampaikan kepada Anda (juga disebutkan di awal), adalah bahwa itu sudah diperbaiki (berfungsi) di PyCharm (Komunitas) 2019.3 , jadi jika Anda memutakhirkannya, Anda seharusnya tidak lagi memiliki masalah ini.

Solusi (jika memutakhirkan bukan opsi) adalah menerapkan tambalan (di URL komit ) ke file _compat.py (lokal) Anda . Periksa [SO]: Jalankan / Debug UnitTests aplikasi Django dari menu konteks klik kanan mouse di PyCharm Community Edition? (@ CristiFati menjawab) ( bagian Utrunner Patching ) untuk cara menerapkan tambalan (pada Win ).
Disebutkan kecil: menerapkan tambalan terbalik ke file lokal saya, membuat masalah terlihat.

CristiFati
sumber
Bagus, terima kasih! Sebenarnya, saya berpikir bahwa Pycharm mungkin telah memperbaikinya, jadi saya memperbarui Pycharm sebelum menetapkan hadiah, dan itu tidak menyelesaikan masalah. Rupanya, pembaruannya dari 1,3 ke 1,4, meskipun versi 3 sudah tersedia. Memperbarui lagi memecahkan masalah seperti yang Anda katakan.
Ella Sharakanski
@EllaSharakanski: senang mendengarnya bekerja! :)
CristiFati
@EllaSharakanski, terima kasih atas hadiahnya dan juga terima kasih @CristiFatiatas tanggapannya.
Moh Vahedi