Last Site Update: July 10th, 2024 | Latest Version: 12.1.0







PyDev PyDev on VSCode LiClipse

PyDev development

PyDev is open source and depends on your contributions! This may be in the form of bug fixes, answers on stackoverflow, new features...

Another option is financially supporting it at: Patreon (which provides a way to support it monthly and get rewards starting with $1).

Or through 1-time contributions at:


    PyDev Stripe Payments (at

Search PyDev-related content

Favorite at Eclipse Marketplace
    PyDev for VSCode may be evaluated for 30 days but must be bought for continued use.

    See: license info for details.

    Licenses may be purchased using Paypal and will be delivered to the e-mail specified during the checkout process.

    Promotional launch licensing price is USD 40.00.

    Buy Single-User License

    Buy Multi-User License

    Note: your license should be delivered within a day after your purchase is completed (remember to check your spam folder too). If you don't find it within that timeframe, please contact fabiofz (at) gmail (dot) com.

PyDev on Visual Studio Code

Although PyDev is a Python IDE commonly used along with Eclipse, it's now possible to leverage the features from PyDev on Visual Studio Code.

While there are some important features to be added (such as the debugger), the current version can already leverage many features that make PyDev unique inside of Visual Studio Code!

See below which features are available and details on getting it running.


  • Code-completion
    • Fast
    • Context sensitive
    • Common tokens
    • Context insensitive with auto import
  • Code formatter
    • Fast
    • Format ranges
    • Format on type
    • Since 0.5.0, besides the internal (pydevf) formatter, also supports using as the formatter:
      • Black
      • Ruff
      • autopep8
      • See related python.pydev.formatter setting
      • Example: after installing Ruff in the python environment enable Ruff to be the formatter used by setting python.pydev.formatter to ruff
  • Code analysis
    • Real time (with internal semantic analysis engine)
    • Since 0.5.0 also, supports using for linting (when a file is saved):
      • MyPy
      • Ruff
      • PyLint
      • Flake8
        • See related python.pydev.lint settings
        • Example: after installing MyPy in the python environment, enable MyPy code analysis through the python.pydev.lint.mypy.use setting
  • Running / Debugging (with the required Python Debugger (PyDev) extension)
    • Run a python program (path/to/ (set program in the launch configuration)
    • Run a python module (python -m <module>) (set module in the launch configuration)
    • Attach to a python program waiting for a connection
      • The python program must call import pydevd;pydevd.settrace(host="", port=port, protocol="dap")
      • An attach launch configuration with an attach mode must be run
    • Start a server which waits for incoming connections
      • An attach launch configuration with a server mode must be run
      • The python program must call import pydevd;pydevd.settrace(host="", port=port, protocol="dap")
      • In Python 3.12 uses new APIs for very low overhead debugging.
      • In other Python versions it can also leverage the python frame eval for fast debugging (although it falls back to tracing once a breakpoint is hit).
      • Supports many features such as:
        • Line breakpoints
          • Expression
          • Hit Count
          • Log message
        • Exception breakpoints
        • Step in
        • Step into target
        • Jump to line (Set next line execution)
        • Step over
        • Step Return
        • Change variable
        • Debug Console evaluation
        • View variables
        • Customize variables
        • Auto attach to subprocesses
        • Start attach in server mode
        • Attach to waiting program
        • Launch in run or debug mode
  • Go to definition
  • Symbols for Workspace
  • Symbols for open editor
  • Find references
  • Quick fix for undefined variables (adds missing import)
  • Navigate to previous or next class or method (Ctrl+Shift+Up, Ctrl+Shift+Down)

See: History for details on releases.

For details on installing and getting it running, see: Download


Right now, it is possible to change the Python executable to be a different executable (by default, the python in the PATH will be used). So, if you want to use a Python installation which is not the default in the PATH, you can customize the setting:


to point to a different Python executable.

PYTHONPATH customization

By default, PyDev on Visual Studio Code will provide code-completion, code-analysis, etc. all based on indexing info from the folders which are currently in the PYTHONPATH, but if none of the folders in the PYTHONPATH are available as root folders inside Visual Studio Code, it will also consider each root folder from Visual Studio Code to be a folder in the PYTHONPATH too.

To see information on the current interpreter configured, the command:

PyDev: Show PyDev Configuration Information

may be executed from inside Visual Studio Code.


For information on the settings which affect PyDev on Visual Studio Code see: Manual.

Copyright: Brainwy Software Ltda, 2014-2021