Jedi:Python 的自动补全、静态分析和重构库

Jedi:Python 的自动补全、静态分析和重构库

jedi Awesome autocompletion, static analysis and refactoring library for python jedi 项目地址: https://gitcode.com/gh_mirrors/je/jedi

1. 项目介绍

Jedi 是一个用于 Python 的静态分析工具,主要用于 IDE 和编辑器插件中。Jedi 专注于自动补全和跳转功能,同时还提供了重构、代码搜索和查找引用等功能。Jedi 拥有一个简单的 API,易于使用。它还提供了一个参考实现作为 VIM 插件。

Jedi 支持多种编辑器和项目,包括 Vim、Visual Studio Code、Emacs、Sublime Text、TextMate、Kate、Atom、GNOME Builder、Gedit、wdb、Eric IDE、IPython 和 xonsh shell 等。此外,Jedi 还被多个语言服务器使用,如 jedi-language-server、python-language-server 和 python-lsp-server。

2. 项目快速启动

安装

首先,确保你已经安装了 Python。然后,使用 pip 安装 Jedi:

pip install jedi

基本使用

以下是一个简单的示例,展示如何在 Python 脚本中使用 Jedi 进行自动补全:

import jedi

source = '''
def example_function(a, b):
    return a + b

example_function(1, 2)
'''

script = jedi.Script(source, 6, len('example_function('), 'example.py')
completions = script.complete()

for completion in completions:
    print(completion.name)

在 REPL 中使用

Jedi 也可以在 REPL(如 IPython)中使用。IPython 已经内置了对 Jedi 的支持,因此你无需额外配置即可使用自动补全功能。

3. 应用案例和最佳实践

在 Vim 中使用 Jedi

Jedi 可以通过 jedi-vim 插件在 Vim 中使用。安装 jedi-vim 插件后,你可以在 Vim 中享受自动补全、跳转定义和查找引用等功能。

在 Visual Studio Code 中使用 Jedi

Visual Studio Code 的 Python 扩展使用 Jedi 作为其自动补全引擎。安装 Python 扩展后,你可以在 VS Code 中获得强大的 Python 开发体验。

在 Emacs 中使用 Jedi

Emacs 用户可以通过 jedi.el 插件使用 Jedi。安装 jedi.el 后,你可以在 Emacs 中享受 Jedi 提供的各种功能。

4. 典型生态项目

jedi-language-server

jedi-language-server 是一个基于 Jedi 的语言服务器,支持 LSP(Language Server Protocol)。它可以在多种编辑器中使用,提供自动补全、跳转定义、查找引用等功能。

python-language-server

python-language-server 是一个基于 Jedi 的 Python 语言服务器,支持 LSP。它已经被 python-lsp-server 项目接管,继续提供强大的 Python 开发支持。

IPython

IPython 是一个增强的 Python REPL,内置了对 Jedi 的支持。在 IPython 中,你可以享受自动补全、代码分析和重构等功能。

通过这些生态项目,Jedi 不仅在单一编辑器中表现出色,还在整个 Python 开发生态系统中发挥着重要作用。

jedi Awesome autocompletion, static analysis and refactoring library for python jedi 项目地址: https://gitcode.com/gh_mirrors/je/jedi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荣正青

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值