Есть ли быстрый способ уменьшить отступ нескольких строк в Python? - PullRequest
28 голосов
/ 18 февраля 2012

Я новичок в программировании на Python. Я считаю, что уменьшение отступа блока кодов в Python довольно раздражает. Например, учитывая следующий фрагмент кода

for i in range(density):
   if i < 5:
      x, y = rnd(0,shape[1]//2)*2, rnd(0,shape[0]//2)*2
      Z[y,x] = 1 
      ....
      ....

Если я прокомментирую оператор if, мне придется уменьшить отступ для строк в блоке if один за другим, есть ли способ, которым я могу сделать это одним нажатием клавиши, так как я увеличиваю отступ блока коды, выбрав их и нажав клавишу TAB ? Я предполагаю, что это зависит от среды, поэтому не могли бы вы предоставить решения для этого в Eclipse + Pydev, VIM и других распространенных редакторах?

Ответы [ 4 ]

61 голосов
/ 18 февраля 2012

В vim вы выбираете блок и затем нажимаете клавишу <</kbd>.

В Eclipse вы выбираете его и затем нажимаете SHIFT + TAB .

У каждого редактора кода, достойного внимания, есть способ вставки и отступа одним ключом.

8 голосов
/ 18 февраля 2012

Вы также можете заменить оператор if на:

if True:  # if i < 5:

и оставьте все остальное в покое - без отступа / отступа, чтобы позже отменить.

3 голосов
/ 16 января 2013

Возможно, опоздал для вашего случая, но если полезно для других:

SHIFT + TAB сделает отступ для выбранного текста в Eclipse.

1 голос
/ 14 сентября 2012

Использовать настройки Preferences-Pydev-Editor, снимите флажок менять вкладки на пробелы. Это делает ошибки и ваша проблема. И проверьте другие параметры, такие как 4 пробела, 8 пробела и т. Д.

...