Python

Почему в пайтон все рекомендуют ставить 4 пробела, а не таб?

Все рекомендуют, но толком не объясняют почему
В пайтон не скажу. А вот про другие ЯП попробую объяснить:
Если человек набрал код с табами, а потом другой человек откроет этот код в другом текстовом редакторе, то у другого человека визуально код может выглядеть иначе. Это происходит потому-что различные редакторы по разному могут отображать табы. Например если таб стоит на месте 8 символа (таб - принято считать как 8 пробелов) то в одном редакторе будет показывать как один пробел так как кратно 8, а в другом посчитается что сразу после этих 8 символов нужно еще 8 пробелов поставить. И соответственно код будет выглядеть иначе чем вы писали его. Вот именно из-за визуального несоответствия кода на разных редакторах считается плохим примером использовать таб. (еще раз напомню что пайтон не знаю и в нем возможно даже приветствуется таб, без понятия!) На фото один и тот же текст но в разных редакторах
P.S. В некоторых редакторах можно указать чтобы заменял табы на пробелы и использование клавиши таб не будет влиять на отображение
Олег Вдовин
Олег Вдовин
15 408
Лучший ответ
Как минимум должен быть какой-то общий стандарт. Но современные IDE сами решают этот вопрос, заменяя табы пробелами автоматически. Поэтому о таких вещах сегодня даже думать не надо, если ты зачем-то не захотел писать код в блокноте.
Кирилл Цветков
Кирилл Цветков
95 764
Нет.
Всегда все ставят таб а не четыре пробела.
Алексей Сбойнов Вообще то PEP 8 стандартным отступом рекомендует именно 4 пробела
PEP 8 это стандарт оформления кода на питоне. Скорее так приняли из за того что мешать табы и пробела нельзя, а понятного оформления функций где аргументы переносятся на следующую строку и идут сразу под открывающейся скобкой параметров можно достичь только пробелами.