Repolode
python-rope

python-rope/rope

Библиотека рефакторинга Python-кода, которая безопасно переименовывает, перемещает и извлекает код в рамках проекта.

Open source альтернатива:PyCharm

Звёзды
2,245
Форки
203
Открытые issues
177
Последний коммит
вчера

Что это?

Rope — библиотека Python для рефакторинга исходного кода. Она анализирует Python-код проекта и вносит структурные изменения: переименовывает символы, перемещает определения между модулями, извлекает или встраивает код, сохраняя согласованность ссылок между файлами.

Rope написана на чистом Python и зависит только от самого Python — Node.js и другие среды выполнения не нужны. Код написан на Python, поэтому Python-разработчики могут читать и изменять его. Библиотека поддерживает большинство синтаксических конструкций Python вплоть до Python 3.10. Начиная с версии 1.0.0, Rope больше не работает с Python 2; поддержка старых версий Python 2 доступна в ветке python2 и выпусках 0.x.

Rope предназначена для использования в качестве библиотеки, обычно через интеграции с редакторами и IDE. В документации описаны настройка и использование API. В отличие от Jedi, которая наряду с автодополнением предлагает базовый рефакторинг, Rope специализируется на более широком наборе операций рефакторинга.

Ключевые возможности

  • 01Переименовывает символы во всём Python-проекте и обновляет ссылки на них
  • 02Перемещает и извлекает функции, классы и модули
  • 03Поддерживает большинство синтаксических конструкций Python вплоть до Python 3.10
  • 04Зависит только от Python, Node.js не требуется
  • 05Используется как библиотека из редакторов и IDE

Сценарии использования

  • Переименование часто используемой функции или класса в большой кодовой базе на Python
  • Перестройка структуры модулей путём переноса кода в новые файлы
  • Добавление возможностей рефакторинга в собственный редактор или инструмент для Python

Что важно знать

  • Поддерживается большая часть синтаксиса Python только до Python 3.10, поэтому для более новых конструкций возможны пробелы в поддержке.
  • Распространяется по лицензии LGPL-3.0 — лицензии с авторским левом, условия которой распространяются на изменения библиотеки.
  • Не работает в Python 2; пользователям Python 2 следует использовать ветку python2 или выпуски 0.x.

Темы

Частые вопросы

Что такое rope?
Библиотека рефакторинга Python-кода, которая безопасно переименовывает, перемещает и извлекает код в рамках проекта. Rope — библиотека Python для рефакторинга исходного кода. Она анализирует Python-код проекта и вносит структурные изменения: переименовывает символы, перемещает определения между модулями, извлекает или встраивает код, сохраняя согласованность ссылок между файлами.
rope можно использовать бесплатно? Какая у него лицензия?
rope распространяется с открытым исходным кодом под лицензией LGPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
rope всё ещё поддерживается?
Активно поддерживается. Последний коммит в rope — 5 нояб. 2026 г..
Для чего можно использовать rope?
Переименование часто используемой функции или класса в большой кодовой базе на Python Перестройка структуры модулей путём переноса кода в новые файлы Добавление возможностей рефакторинга в собственный редактор или инструмент для Python
Где скачать rope?
Исходный код и инструкции по установке — на GitHub: https://github.com/python-rope/rope

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

OpenRewrite — движок автоматического рефакторинга с открытым исходным кодом: он применяет рецепты к коду во множестве репозиториев, помогая мигрировать на новые версии фреймворков и устранять уязвимости.

4 тыс.601JavaApache-2.0Активно поддерживаетсяОбновлён 7 часов назад

Преобразует кодовую базу, документацию, схемы и PDF в граф знаний для AI-ассистентов разработки, который можно запрашивать; строит его локально с помощью разбора AST через tree-sitter.

143,4 тыс.+4,1 тыс. за неделю13,7 тыс.PythonApache-2.0Обновлён 9 часов назад

MCP-сервер индексирует код, документацию и инфраструктуру в локальный граф знаний, чтобы AI-агенты для программирования могли изучать структуру проекта, не перечитывая файлы.

48,2 тыс.+372 за неделю4 тыс.CMITОбновлён позавчера