Автоматически генерировать импорт, чтобы отделить один метод от модуля - PullRequest
0 голосов
/ 22 ноября 2011

Я работаю над огромным модулем Python, например:

import millions, and, billions, of, modules...

...lots of functions...

def myfunc
   ...with huge body

...more functions

Я бы хотел извлечь myfunc в его собственный модуль.Однако отследить весь импорт, который мне нужен, на самом деле довольно утомительно.Есть ли способ сделать это автоматически с помощью Eclipse?Я использую Eclipse 3.7.0 с плагином Aptana Studio (и, следовательно, PyDev).Существует инструмент рефакторинга "Извлечь метод", но он этого не делает.

1 Ответ

0 голосов
/ 22 ноября 2011

Хорошо, может быть, это проще, чем я думал:

  1. Скопировать определение функции в новый файл
  2. Скопировать весь раздел импорта в этот новый файл
  3. Неиспользованный импорт обозначен волнистой желтой линией.Удалите их.
  4. Удалите определение функции из исходного файла, заменив его ссылкой на вызов.
  5. Теперь у вас также есть неиспользуемый импорт, поэтому удалите его согласно пункту 3.

Это не автоматически, но относительно просто и безболезненно.

...