Я пытаюсь использовать WxPython, написав простой скрипт на VSCode. Я использую расширение Python по умолчанию (у которого есть intellisense) плюс Kite. Мой код выглядит следующим образом:
import wx
app = wx.App()
frame = wx.Frame(None, title='Simple application')
frame.Show()
app.MainLoop()
Он работает отлично, но проблема в том, что VSCode помечает «wx.Frame» как ошибку и говорит:
Модуль «wx» не имеет члена «Frame» (без члена)
Я понятия не имею, почему это происходит, и это меня раздражает. Есть информация почему так происходит?
Также приветствуются любые предложения о том, как подавить это сообщение об ошибке!
Спасибо!
Эта информация предоставляется инструментом анализа кода Python Pylint.
Причина: из соображений безопасности Pylint по умолчанию доверяет только расширениям C из стандартной библиотеки stdlib, но модуль «wxPython
» не исходит от нее.
Таким образом, мы можем справиться с этим двумя способами:
способ 1: (Добавить в белый список)
Пожалуйста, добавьте следующие настройки в settings.json:
"python.linting.pylintArgs": ["--extension-pkg-whitelist=wx"],
способ 2: (отключить это уведомление)
Поскольку это не влияет на выполнение кода, мы можем использовать "python.linting.pylintArgs": ["--disable=E1101"],
в settings.json
файле, чтобы отключить уведомления «no-member». (Рекомендуется отключить уведомления Pylint после успешного выполнения кода.)
@Riccardo T. -Вы можете сослаться на это: Расположение файлов настроек в VS Code.
Я не знал, где найти файл
settings.json
, так как я установил pylint напрямую из Visual Studio Code, но:File -> Preferences -> Settings
, затем найдитеPylint Args
и добавьте--extension-pkg-whitelist=wx
в разделPython › Linting: Pylint Args
. Сделанный!