Многие IDE для python могут обеспечить завершение кода (понимание кода), PyCharm - одна из этих IDE. Однако мне кажется, что предоставленное завершение кода крайне ограничено. Позвольте мне привести вам пример, чтобы дать понять:
import numpy as np
m = np.random.random((3,5))
m.
Нажмите CTRL-пространство после "м". не даст мне никакого завершения кода, независимо от того, насколько сильно я его ударил;).. Я предполагаю, что это связано с тем, что IDE пришлось бы делать вывод типа, чтобы узнать тип переменной "m", и что это isn ' t тривиально в области языков динамического программирования.
Теперь PyCharm поставляется с настройкой под названием "Сбор информации о времени выполнения для анализа кода", что действительно звучит многообещающе. Однако, похоже, проблема не устранена выше. Я все еще не могу получить завершение кода переменной 'm'.
До сих пор я нашел только один способ получить завершение кода для переменных в PyCharm:
import numpy as np
m = np.random.random((3,5))
''':type : np.matrix'''
m.
В этом примере я могу получить завершение кода при нажатии CTRL-пробела после "m.", и это связано с тем, что я помогаю IDE, указав тип переменной с docstring. Я, однако, не удовлетворен таким способом получения кода-завершения, потому что он добавляет ненужную многословность коду со всеми этими docstrings (не говоря уже о дополнительной клавиатуре)...
IPython на помощь.. (может быть?)
Теперь, если мы запустим IPython в linux-терминале и введем первый фрагмент кода, мы сможем полностью завершить выполнение кода, даже для переменной "m". (где завершение кода в IPython достигается нажатием TAB вместо CTRL-пространства).
У меня нет большого опыта работы с IPython, но я считаю, что слышал что-то о том, что IPython постоянно выполняет код в цикле или что-то в этом роде...
Я думаю, что должно быть возможно использовать IPython для достижения REAL-завершения кода для всех переменных в редакторе PyCharm....
Есть ли способ настроить PyCharm для использования IPython для завершения кода?
Обратите внимание, что я не доволен отправкой кода в окно терминала/консоль или что-то в этом роде, я хочу, чтобы завершение кода внутри редактора PyCharm...
Я рассмотрел такие вопросы, как Добавление ipython в качестве интерпретатора в Pycharm Ubuntu, но, похоже, это касается использования IPython в консоли, - не в редакторе... Есть также много вопросов о завершении кода в IDE, но все они, похоже, имеют тот же неудовлетворительный уровень завершения кода, что и PyCharm...
Моя настройка
- ОС: тестирование Debian
- python: Python3 и IPython3
- IDE: профессиональная версия Pycharm 3.0.2