Большую часть времени я использую Eclipse и PyDev, и предоставляемая им ограниченная справка по автозаполнению довольно полезна.
Он никогда не выйдет на уровень IntelliSense VS, и не может, из-за динамической природы Python. Но есть и большие компенсации.
Самым большим является нарушение цикла тестирования кода-компиляции. Так легко написать и протестировать код прототипа в IDLE, что очень часто это то, к чему я стремлюсь: я набросаю и протестирую пару методов, которые должны взаимодействовать, выясню, что есть что-то, чего я не знаю, изучу это, исправить мой тест, а затем перенести все это на PyDev и посмотреть, как он работает в первый раз.
Другое дело, что это намного проще. Очень важно знать, что такое стандартные модули и что они делают, но по большей части это можно понять, прочитав немного. Я использую лишь небольшое количество модулей в своем повседневном программировании - itertools
, os
, csv
(да, хорошо), datetime
, StringIO
- и все остальное есть, если мне это нужно, но обычно Я не знаю.
То, что действительно важно знать, это то, с чем IntelliSense не может вам помочь в любом случае. Автозаполнение не даст
self.__dict__.update(kwargs)
чертовски немного смысла; Вы должны узнать, что это за удивительная строка кода и почему вы пишете ее самостоятельно.
Тогда вы подумаете: "Как бы я вообще начал реализовывать нечто подобное в C #?" и осознайте, что инструменты, которые используют эти люди каменного века, немного сложнее, чем вы думаете.