LINUX.ORG.RU
ФорумTalks

почему наезжают на питон за форматирование?


0

0

Во вменяемом текстовом редакторе (привет vi) пробел жмякать не приходится, после : отступ делается сам, когда хочешь "понизить уровень вложенности" - один раз жмешь Backspace. Все тот же комфорт, только скобок нет.

Так почему же на ЛОРе так любят наезжать на питон из-за этих пробелов? Ощущение, будто все противники питона устали долбить пробел в nano, не иначе.

Итого: что все так взъелись на indentation в питоне?

★★★★★

А ты сделай откуда нибудь копипасту. С вебстранички. Где парсер публикации напихал пробелов по своему усмотрению. Исиди потом, тупи, почему не работает хрестоматийный пример.

kilolife ★★★★★
()
Ответ на: комментарий от kilolife

Пистон нужен.

>А ты сделай откуда нибудь копипасту. С вебстранички. Где парсер публикации напихал пробелов по своему усмотрению. Исиди потом, тупи, почему не работает хрестоматийный пример.

Это проблема парсера, а не пайтона.

К сожалению бороться с этой проблемой приходится пользователю.

Camel ★★★★★
()
Ответ на: комментарий от kilolife

Вообше-то даже в Kate есть автоматическая расстановка отступов в имеющемся тексте.

>С вебстранички.


пых-пыхер детектед

В общем проблемы пользователей notepad'а шерифа...

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от wfrr

>за такой код питонисты ректально карают 5" дискетами, потому мне с ними не по пути
у каждого проекта может быть свой кодинг стандарт, с вашей философией вам ни с кем не по пути.

Unipolar
()

Ага, вот приспичило мне условие к куску кода добавить, а нормального IDE под рукой нет... Ну и понеслась: вниз, хоум, таб, вниз, хоум, таб, вниз, хоум, таб, вниз, хоум, таб и т.д.

Особенно весело это делать через ssh, когда надо докрутить какую-то фигню на рабочем скрипте.

Создается впечатление, что его делали для офисного планктона, дабы ему было чем разлекаться. Править отступы и наслаждаться форматированием - это же так забавно! Прям творчество для созерцания. И делать работу, которую может сделать компьютер. На нее же мозгов не надо!

PS: Если для создания "[питон-]программы" нужно что-то большее, чем текстовый редактор - это уже не скрипт, а фиг его знает что, ибо скрипты можно править в любом текстовом редакторе. А правка педона напоминает правку бинарника в редакторе без hex-режима, вводом спец.последовательностей для каждого байта.

simple_best_world_web_master
()
Ответ на: комментарий от DNA_Seq

> В общем проблемы пользователей notepad'а шерифа...

Я все пишу в far/mc, смотря чего запущено. Менять редакторы не намерен, ибо проще сменить язык. Автоиндент есть в mc (для far не искал)

simple_best_world_web_master
()

а всё потому, что авторы компиляторов/интерпретаторов не осилили сделать встроенный pretty-printer, который автоматом бы форматил ЛЮБОЙ код, который он сам способен проживать в тот стиль, который хочет видеть конкретный человек в силу каких-то его обстоятельств (от поражения мозга до работы в ed)

deadman ★★
()
Ответ на: комментарий от exah

> А нечего копипастить, лучше вбить самому, так поймёшь алгоритм и запомнишь.

у тебя так много свободного времени, что у меня возникло ощущение, что ты - школьник.

paranonymous
()
Ответ на: комментарий от DNA_Seq

> Вообше-то даже в Kate есть автоматическая расстановка отступов в имеющемся тексте.

Там ни один редактор не справиться, потому что парсер сожрал пробел - и текст программы невалиден.

paranonymous
()
Ответ на: комментарий от DNA_Seq

> В общем проблемы пользователей notepad'а шерифа...

К сожалению, править питоновский код без иде - это знатное извращение. чтобы перенести блок кода из одной части в другую - нужно каждую строчку отдельно забивать пробелами-табами (в иде это оделается одной специальной командой).

paranonymous
()
Ответ на: комментарий от simple_best_world_web_master

>Особенно весело это делать через ssh, когда надо докрутить какую-то фигню на рабочем скрипте.

а чем вы его интересно правили, ed/sed ? советую осознать vim - он из коробки поддерживает автоидент.

madepa
()
Ответ на: комментарий от paranonymous

> К сожалению, править питоновский код без иде - это знатное извращение. чтобы перенести блок кода из одной части в другую - нужно каждую строчку отдельно забивать пробелами-табами (в иде это оделается одной специальной командой).

Согласен с каждой буквой. А может им так чем-то удобнее?

simple_best_world_web_master
()
Ответ на: комментарий от wfrr

>Покажи проект на питоне с количеством пробелов отличным от четырех.
Просветите, на каком языке все проекты написаны с 2 пробелами?

Unipolar
()
Ответ на: комментарий от madepa

> советую осознать vim - он из коробки поддерживает автоидент.

Я знаю как из него выходить - других знаний о нем мне не надо. Мне нужен текстовый редактор (дада, и шобы визивигно), а не самолет, управляемый через замыкания проводов.

simple_best_world_web_master
()
Ответ на: комментарий от A2K

> какое большое скопление людей, не осиливших vim...

вим за тебя найдет, в каком месте парсер сожрал таб?

paranonymous
()
Ответ на: комментарий от Unipolar

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

wfrr ★★☆
()
Ответ на: комментарий от madepa

> советую осознать vim - он из коробки поддерживает автоидент.

автоиндент не спасет от парсера, добавившего в начало каждой строки по 5 табов. Спасут, конечно, прилежность кодера и/или вимовские макры. А еще бывают анацефалы, которые используют табы *и* пробелы в одной и той же программе - тогда читать просто невозможно, конечно, поправить делов на 5 минут - но осадок остается.

paranonymous
()
Ответ на: комментарий от wfrr

2wfrr
>у каждого проекта может быть свой кодинг стандарт, с вашей философией вам ни с кем не по пути.

не вижу "на питон", зато вижу "ни с кем". Если вас это так взволновало, то уточню. Я имел ввиду, что с вашей точкой зрения, на любом языке найдётся проект(или их большинство), который вам не подходит просто из-за глупых предубеждения, что вам якобы так неудобно, хотя существует возможность преобразования ваших двух пробелов в 4 или во что ещё.

кроме того, 4 пробела в питоне, это стронгли рекомендед, но никак не обязательные требования, то что все(скорей всего почти все) им следуют, это говорит очень хорошо о пользователях этого язык. С тем же успехом вы не можете использовать и Java/С#. много ли проектов на С++ с 2 пробелами? С?

Unipolar
()
Ответ на: комментарий от Unipolar

>Я имел ввиду, что с вашей точкой зрения

С телепатией у вас сегодня прокол, видать павел глоба атсрал за неуплату вырубил.

>кроме того, 4 пробела в питоне, это стронгли рекомендед, но никак не обязательные требования, то что все(скорей всего почти все) им следуют, это говорит очень хорошо о пользователях этого язык.


Ой вей, вот как метан пошел, а то что стада стройными рядами идут на убой, это хорошо говорит о скоте? Замечательная логика!

>С тем же успехом вы не можете использовать и Java/С#. много ли проектов на С++ с 2 пробелами? С?


Меня это не парит, в любом нормальном языке одно нажатие кнопки переформатирует код под самые извращенные требования.

wfrr ★★☆
()

Потому, что синтаксис, в котором один и тот же символ может быть как значащим так и незначащим, иначе как кривым и ублюдочным назвать нельзя

no-dashi ★★★★★
()
Ответ на: комментарий от Unipolar

> кроме того, 4 пробела в питоне, это стронгли рекомендед, но никак не обязательные требования, то что все(скорей всего почти все) им следуют, это говорит очень хорошо о пользователях этого язык. С тем же успехом вы не можете использовать и Java/С#. много ли проектов на С++ с 2 пробелами? С?

На мой взгляд, проблема в том, что signifcant whitespace - это намертво в языке и никуда ты от этого не уйдешь , лучшим с моей точки зрения было бы сделать возможность произвольного форматирования, но со strongly-strongly reсommend style - как это, например, в лиспе, где форматирование чуть ли не в стандарте, потому что 99,9 лисперов ориентируются как раз по форматированию кода, а не скобочки считают.

paranonymous
()
Ответ на: комментарий от wfrr

http://www.python.org/dev/peps/pep-0008/
>Use 4 spaces per indentation level.

>For really old code that you don't want to mess up, you can continue to use 8-space tabs. ...

>Never mix tabs and spaces. The most popular way of indenting Python is with spaces only. The second-most popular way is with tabs only.

>For new projects, spaces-only are strongly recommended over tabs. Most editors have features that make this easy to do.


spaces-only are strongly recommended over tabs

>в любом нормальном языке одно нажатие кнопки переформатирует код под самые извращенные требования


таки в языке?) не путай язык и среду разработки.

Unipolar
()
Ответ на: комментарий от Unipolar

>spaces-only are strongly recommended over tabs

И что, контролце жмакать умеешь, хвастаешься?

>таки в языке?) не путай язык и среду разработки.


Настолкьо много газа что мозг выдавило через уши? Написать автоматический форматировщик для пидона слабо?

wfrr ★★☆
()
Ответ на: комментарий от paranonymous

Ниасиливаешь vim - юзай kate в птом числе замена табов пробелами и наоборот. А чтоб редактировать в редакторе mc нужно быть знатныйм извращецем.

И вообще Eric весит метров двенадцать со всем зависимостями. Неужели тяжело скачать?

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от Unipolar

> таки в языке?) не путай язык и среду разработки.

я не вфрр, но имелось в виду то, что синтаксис языка позволяет автоматическое переформатирование кода в "правильный стиль". Это опять к вопросу о переносе одного блока программы в другое место - если в большинстве языков я могу вставить и нажать кнопку отформатить - и он отфоматит, то в питоне мне нужно это делать вручную в любой иде (автоматически это нельзя сделать, потомучто из-за форматирования может поменяться семантика, а что мне нужно иде, к сожалению, не в курсе). Особенно это плохо, когда переносимого кода относительно большие (больше экрана), тогда можно просто потерять начало или конец кода - и в результате получить трудно улавливаемый баг.

paranonymous
()
Ответ на: комментарий от wfrr

>Написать автоматический форматировщик для пидона слабо?
тебе надо, ты и пиши. Мои табы прекрасно в 4 пробела форматируются многими способами.
>И что, контролце жмакать умеешь, хвастаешься?

ой-ой, такой тролль,) прости, жалко больше тратить на тебя время.

Unipolar
()
Ответ на: комментарий от DNA_Seq

> Ниасиливаешь vim - юзай kate в птом числе замена табов пробелами и наоборот.

вроде бы уже сказали, что замена табов на пробелы и обратно - это
 пятиминутное дело. Проблема возникает во время чтения кода (когда ты
 еще не знаешь, что там табы и пробелы) и ориентируясь по отступам
 получаешь говняшку 

    for x in xs:
        f(x)
    
        do_something_awful()

Поверишь - нет, в этом коде do_something_awful() относится не к циклу,
 а идет после него, а все только потому, чтo перед do_somethin_awful()
 стоит таб, который у тебя отображется в виде 8 spaces. И обнаружить
 это не всегда так уж легко, как кажется.

paranonymous
()
Ответ на: комментарий от Unipolar

>Мои табы прекрасно в 4 пробела форматируются многими способами.

За все время пока ты тут портишь воздух, ты так и не назвал больше одного.

wfrr ★★☆
()
Ответ на: комментарий от paranonymous

>стоит таб, который у тебя отображется в виде 8 spaces

python -t xxx.py выдаст ворнинг, если используются и табы и пробелы.

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

Unipolar
()
Ответ на: комментарий от Unipolar

> python -t xxx.py выдаст ворнинг, если используются и табы и пробелы.

Итак, он выдал предупреждения. Теперь осталось найти все проблемные места и (sic!) семантически проверить, что же там должно было быть. И не дай бог ошибиться при причесывании кода.

no-dashi ★★★★★
()

дураки потому что

Sphinx ★★☆☆
()
Ответ на: комментарий от Unipolar

> python -t xxx.py выдаст ворнинг, если используются и табы и пробелы.

я использую встроенный в иде repl - ему все монопенисуально. Может спасти в этой ситуации pylint - но и он не панацея, среди его "тыщи" ворнингов заметить нужный не всегда бывает возможным.

> насчёт копипастов кода на другой уровень вложенности, действительно обычным текстовым редактором придётся править чуть дольше,

поправь 30 строчек кода и ни разу нигде не ошибись :) А главное не забудь, где код кончается, иначе можешь получить отменный трах :)

> насчёт того, как с этим справляются ide не в курсе

справляются, только все равно правильный уровень вложенности указывать приходится вручную.

paranonymous
()
Ответ на: комментарий от DNA_Seq

автоформатирование кода питона невозможно, поэтому если вдруг съехало форматирование то все, трындец

Reset ★★★★★
()
Ответ на: комментарий от Reset

Бывает и скобочку лишнюю удалишь потом ищешь пару. Тоже один из способов выстрелить себе в ногу. Язык-то тут причем?

DNA_Seq ★★☆☆☆
()

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

a3
()

> почему же на ЛОРе так любят наезжать на питон из-за этих пробелов

Потому что ЛОР.

Причем большинство наезжающих не написало на питоне ни одной программы.

dccp
()

>Итого: что все так взъелись на indentation в питоне?

не обращай внимания. все люди разные, но обычно взъедаются те, кто о питоне ничего кроме его форматирования не знает.

stormy
()
Ответ на: комментарий от dccp

Я несколько раз хотел начать кодить на педоне, давно облизываюсь на новые возможности, но как только дело доходит до написания кода (и последующей правки, где автоидент уже косячит), то какое либо желание работать с этим языком у меня пропадает.

Меня уже подмывает написать препроцессор и писать код со скобочками. А препроцессор уж пусть форматит под извращения педона. Он железный, ему проще.

simple_best_world_web_master
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.