Python の絶対インポートを相対インポートに自動的に書き換えるツールはありますか?
アプリケーションにプラグインを提供したかったのですが、このプラグインには pygments (絶対インポートを使用) が必要であり、含まれています。そのため、すべてを手作業で行うことなく、pygments コードを書き直したいと考えました。
プラグインは sys.path に項目を追加して pygments を含めることができましたが、私はそれを避けたかったのです。
Python の絶対インポートを相対インポートに自動的に書き換えるツールはありますか?
アプリケーションにプラグインを提供したかったのですが、このプラグインには pygments (絶対インポートを使用) が必要であり、含まれています。そのため、すべてを手作業で行うことなく、pygments コードを書き直したいと考えました。
プラグインは sys.path に項目を追加して pygments を含めることができましたが、私はそれを避けたかったのです。
チャックムーブはあなたのために働くかもしれません。これは、ソース ツリー全体のインポートを再帰的に書き換えて、モジュールの新しい場所を参照できるようにするツールです。
chuckmove --old sound.utils --new media.sound.utils src
...これは src に降りて、sound.utils を import するステートメントを代わりに import media.sound.utils に書き換えます。Python インポート形式の全範囲をサポートしています。すなわちfrom x import y
、import x.y.z as w
等。