LINUX.ORG.RU

Зачем Python?

 , ,


5

5

Обычно, ЯП - это инструмент, заточенный для решения задач в какой-то определенной сфере. У создателей ЯП была для него ЦЕЛЬ, которая наполняла смыслом бытие ЯП. Или же ЯП оказался обладателем таких характеристик, которые позволили эффективно решать определенные задачи, даже если изначально на него были другие планы. Это также объясняет необходимость существования ЯП.

Что-то низкоуровневое - Си, Rust, Ada; сервер - PHP, Go (а где-то Java, JS); клиент - JavaScript; энтерпрайз - C#, Java; скрипты для CLI - bash, lua (хотя сойдут PHP или JS); математика - R, Fortran; мобильные приложения - Java, Kotlin, Swift; начальное обучение - Basic, Pascal (можно Lisp, но лучше не стоит). Всё ясно, понятно.

А какие специфические задачи решает Python? В чём его смысл? Вот в (https://youtu.be/KnFrdzG79ak?t=532) МФТИ на информатике говорят, что Python - это классная штука, так как на нём можно всё (и в web, и в смартфон), мол универсальный. Но, имхо, это скорее минус, чем плюс. Это как швейцарский нож - может многое, но всё не очень качественно. В (https://youtu.be/bX3jvD7XFPs) MIT'e перевели обучение с эльфийского (Scheme) на Python. Ну для педагогических целей, для первокурсников, может Python и выглядит лучше. Хотя как аргумент в его пользу - ну так себе.

Пока я вижу, что в реальном мире Python (объективно) нужен для двух задач:

1. Поддержка legacy-кода, уже написанного адептами Python'а. Например, какие-нибудь скрипты для иксов, скрипты для сис.админов и т.п.
2. ML. Просто потому, что под ML были написаны нужные библиотеки (в нужном кол-ве и кач-ве) именно на Python. По неизвестным причинам написаны.

Сфера для (эффективного) применения Python'а очень мала, или мне показалось?

При этом, повсеместно говорят о популярности Python, как это модно-молодежно, его мол и учите. Закрадываются подозрения. А не является ли широкая популярность (или слухи о ней) Python исключительно маркетинговым явлением, когда ЯП, опять же по неясным причинам, проталкивают сверху? Если это так, то для чего это делают? А если не так, и он объективно эффективно решает какие-то задачи (почему его добрые люди и советуют), то объясните какие это задачи, какова целевая сфера применения Python'а, каков его смысл, цель???

Ответ на: комментарий от bread

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

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

По-моему, скобки красивее всего смотрятся на отдельной строке:

  while (c)
  {
     if (c == n1*d || c == n2*d)
     {
        n1 = ...
        n2 = ...
     }
     else if (c == k)
     {
        n1 = ...
        n2 = ...
        k = ...
     }
     с = n1 + n2;
  }
Так весь блок как бы визуально выделяется невидимой вертикальной линией от одной скобки до другой (а в IDE это очень даже видимая вертикальная линия).

Это смотрится красиво. Но сильно растягивает код по вертикали. На экране умещается меньше полезной информации, длинный код приходится скроллить, а это плохо для читаемости.

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

Если же склеить скобки в предыдущую строку, то код станет «рваным»:

  while (c) {
     if (c == n1*d || c == n2*d)
        n1 = ...
        n2 = ...
     } else if (c == k) {
        n1 = ...
        n2 = ...
        k = ...
     }
     с = n1 + n2;
  }
Да, код стал компактнее. Но стал каким-то ломанным: оператор начинается не с начала строки, а с середины, ведь перед ним стоит скобка.

И больше нет этой невидимой вертикальной линии от скобки до скобки. Открывающая скобка не находится над закрывающей, она где-то сбоку. Визуально код выделяется только отступами. На скобки обычно и не смотрят. Если я случайно пропущу одну скобку — глазом этого даже не заметно, хотя компилятор, конечно, выругается.

Итого, имеем два варианта, один красивее, но сильно растянут по вертикали, другой компактный, но «ломанный». В питоне объединили эти два варианта в один:

  while c:
     if c == n1*d or c == n2*d:
        n1 = ...
        n2 = ...
     elif c == k:
        n1 = ...
        n2 = ...
        k = ...
     с = n1 + n2;
Код стал ещё компактнее, а значит и легче для чтения, но и перестал быть ломанным — каждый оператор начинается с начала строки.

Если мы в реальном коде всё равно должны следить за отступами... то зачем нужны ещё и скобки? Чтобы добавить нам работы?

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

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

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

Что-то я читаю в интернете про собачку и начинаю думать что ты хочешь меня запутать, собачка используется аналогичным образом с self. Просто добавили немного сахара, так и в питон можно добавить. Раби я видел 2 раза в жизни на картинках правда, но этот момент кажется очевидным.

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

Юникод же в питоне сделали, и раби внезапно потерял свою нишу.

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

И вобще, на пхп или js скрипты писать для cli?

Некоторые люди на ЛОРе выкладывали свои админские скрипты на PHP.

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

Когда звучит слово «прототипирование», - в голове звучит: «perfect! ship it today!».

Самое правдоподобное обоснование популярности Питона.

question4 ★★★★★ ()
Ответ на: комментарий от no-such-file

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

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

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

Рассмотрим синтаксический шум на примере Java [...] Дизайн языка позволил внести это улучшение и убрать этот ненужный синтаксический шум. А вот обязательный self из python просто так не убрать.

Отчего же, давайте изменим синтаксис. Или хотя бы обсудим возможность такого изменения. Я просто не представляю, что нужно изменить. Возьмём гипотетический пример без self:

class A:
   ...
   def f(x):
       a = x
       ...
Куда мы только что присвоили x? В локальную переменную a? Или в self.a? Какое изменение, или какой язык в силах разрешить эту неоднозначность?

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

Код не может не иметь структуры. Как минимум, я не представляю, что такое «код без структуры».

«Неправильное именование» укладывается в моё определение говнокода: код считается говнокодом если его можно переписать так, что он станет понятнее.

А «компоненты системы невозможно протестировать независимо друг от друга» — это не говнокод. Не все компоненты надо тестировать независимо: нет смысла тестировать деструктор класса без его конструктора.

Сама по себе «тесная связность» — не признак говнокода. Вот если его можно переписать, чтобы он стал слабо связан, и это улучшит его понимание, тогда его можно считать говнокодом. Но это тоже укладывается в моё определение.

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

Вот это говногод:
m = {}
а это уже нет:
ownerToPet = Dict[str, str]

А это?

ownerToPet = {}
Да, так я не знаю, что туда можно поместить только строки. Ну и что? Зачем мне это знать для понимания алгоритма?

Возьмём более конкретный пример:

def getpi(N):
    n1, n2, d, k = gmpy2.mpz(4), gmpy2.mpz(3), gmpy2.mpz(1), 1
    result = []
    while len(result) < N:
        c = n1//d
        if c == n2//d:
            result.append(chr(48+c))
            n1, n2 = (n1%d)*10, (n2%d)*10
        else:
            n1, n2, d, k = n1*(k*2-1)+(n2<<1), n1*(k-1)+n2*(k+2), d*(k*2+1), k+1
    return "".join(result)

Сделает ли расстановка типов этот код понятнее?

Возможно, понятнее станет, если исправить имена. Хотя и тут не факт. Подозреваю, что именно такие имена были в какой-то математической работе.

Но как тут поможет расстановка типов?

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

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

Но как тут поможет расстановка типов?

Станет понятно что этот адок возвращает. Сейчас нужно вычитывать код, чтобы понять.

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

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

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

Станет понятно что этот адок возвращает. Сейчас нужно вычитывать код, чтобы понять.

И как знание того, что result = List[str] поможет понять, что возвращает этот адок? По-моему, никакой разницы.

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

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

С этим не спорю. Типы помогают находить ошибки, особенно при редактировании кода. А помогают ли они прочесть код, понять, что код должен делать?

Иными словами, может, типы помогают искать ошибки в ущерб понятности кода и удобству его написания?

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

их почему-то обживает Питон

Как сорняк. Такой себе комплимент. Собственно ТС с этого и начал, что во всех «окультуренных» областях есть свои must have языки, а питон, так, обживает всякие захолустья.

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

Как сорняк. Такой себе комплимент.

Я говорил не об этом. Я говорил, что перечисленные тобой условия сложились очень давно, а популярность питона резко подскочила недавно. Значит, дело в чём-то другом.

question4 ★★★★★ ()
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Что-то я читаю в интернете про собачку и начинаю думать что ты хочешь меня запутать, собачка используется аналогичным образом с self. Просто добавили немного сахара, так и в питон можно добавить.

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

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

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

Отступы в каждой строке, а скобочки лишь обрамляют блоки. Т.е. значительно меньше нагрузка на мозг, к тому же хорошо выделены границы блоков. И отступы все равно есть в любрм случае, просто в нормальных языказ не надо над ними трястись.

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

Вам может и никакой. А для меня огромная разница.

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

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

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

А вы тут все троллите про питон? Уже 20-я страница, однако. Откуда у вас столько времени свободного?

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

ttfb = 0.4 sec

wut?

я видел много тормозящих сайтов, но твой пример немного неудачный

Ford_Focus ★★★★★ ()
Последнее исправление: Ford_Focus (всего исправлений: 1)
Ответ на: комментарий от dem

весь питонячий тормоз я уже переписал и выкинул

больше всего запонился скрипт, который занимался фильтрацией и сортировкой 5 почтовых ящиков. Просто работа с сетью и много регекспов и сравний строк.

В день потреблял ~90~150 процессорных минут. Переписал на PHP - теперь потребляет ~20~40.

Понемногу пишу многопоточный вариант на C#, надеюсь уложиться в 10.

Ford_Focus ★★★★★ ()

прочёл все 20 страниц

ни слова о крутости Delphi 7

меня чё зря на делфях обучали писать? подходит под все нужды, lazarus ide + fpc (жаль сам лазаруз застрял в середине нулевых, а fpc так и не научился в кросскомпиляцию без пересборки).

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

Питон то однопоточный был? Ну а вообще, как напишешь, так и поедет, кто же спорит.

Просто работа с сетью и много регекспов и сравний строк

вот это вот очень наивно, это не просто. Наверняка скрипт говно был.

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

Шарп адовый тормоз, не будет быстрее си (см питон).

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

Смотря с чем сравнивать. Иногда php — неплохой вариант. А для скриптов с логикой он удобнее, чем баш, си (tcc) или луа. Мне тоже приходилось скрипты на пхп писать, не вижу в этом ничего плохого. Грубо говоря, если знаешь пхп, но не знаешь ни питон ни перл, то можно и на php скриптовать. А для веб-скриптов это даже оправдано: остальные страницы всё равно на пхп, нет смысла плодить зоопарк языков.

вы меня убедили, что python норм.вариант для написания (новых — про поддержку legacy я указывал в ОП) cli-скриптов под linux, если ты уже неплохо знаешь python и его синтаксис тебя не отторгает.

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

Возможно... Но я не помню, чтобы python популяризировали. Разве какая-то компания его когда-то навязывала?

1. «популяризировали» != «навязывала»

2. а как назвать явление, когда в каждом втором видео по CS или SE от реально топовых ВУЗ'ов (и курсов), что англоязычных, что русскоязычных, преподаватели восхваляют python и предлагают его изучать?

приходит неокрепший ум, говорит «хочу стать программистом», а ему в шараге, где он (точнее его родители) отвалили N-десятков тысяч $ профессор-специалист сует python?

естественно новообращенные потом и будут под python писать. что это, если не популяризация?

доходит до смешного. в одном универе, в курсе по CS, в котором для обучения используется JS (это конечно хуже для обучения, чем python) и Java, препод рассказывает, что python - это ныне мега-популярно, стоит на него обратить внимание, а если вы пойдете по кривой дорожке ML, то это просто must have!

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

Прелесть питона в том что он не будет единственным или даже основным при таком подходе, в вузах обучают интеграции его с си/плюсами и всему остальному. Теперь возьмём и рассмотрим тех кого учили паскалю.

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

Это такая разминка для мозгов. Все мы выбираем тот или иной язык программирования, но оправдано ли это?

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

Питон, вместо борьбы с ошибками, борется с их причиной — говнокодом, приучая писать хороший код.

ваша апология python'a, через его синтаксис - самое слабое место во всех ваших сообщениях. его синтаксис:

1) отторгает многих людей, чтобы на нем писать;

2) он не c-like, что является определенным препятствием для многих и многих программистов;

3) он не делает ваш код хорошим. хороший код != код с отступами ни при каких обстоятельствах.

Edward_I ()
Ответ на: комментарий от silver-bullet-bfg

Ну да. Большие компании всегда будут пропагандировать более дешевый способ выпустить продукт.
Быстро налабать прототип силами студентов,

его активно форсят в топовых ВУЗ'ах по всему миру.

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

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

в вузах обучают интеграции его с си/плюсами и всему остальному. Теперь возьмём и рассмотрим тех кого учили паскалю

Там где обучают интеграции с Си, там и во времена паскаля изучали Си. Внезапно.

no-such-file ★★★★★ ()
Ответ на: комментарий от pynonymous

Подозреваю, что именно такие имена были в какой-то математической работе.

В математической работе, в отличии от программирования, есть ещё и текст, который объясняет что скрыто под буквами либо в виде текста, либо в виде формул, понятных математикам. В программировании у тебя нет ни полноценных формул (с индексами и т.д.) ни текста (слишком много комментариев - зло). Остается только давать адекватные названия или ссылки на конкретные математические работы.

peregrine ★★★★★ ()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от pynonymous

с UI/графикой на пхп тоже сложно

Ещё питон нынче есть на любой машине, а пхп ещё поставить надо...

На любой из 2%? На _любой_ машине для скриптования и UI/графики лучше взять C# или VB.

no-such-file ★★★★★ ()
Ответ на: комментарий от anonymous

Теперь возьмём и рассмотрим тех кого учили паскалю.

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

после чего у них стало всё хорошо с программированием и они выбрали язык под задачу (== для своей сферы), а не стали продолжать писать на python'e паскале в продакшен.

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

весь питонячий тормоз я уже переписал и выкинул
Просто работа с сетью и много регекспов и сравний строк.

Да, модуль re из стандартной библиотеки питона — тот ещё тормоз. Из-за этого в дистрах есть всякие python-regex, которые делают то же самое, но быстрее. Заменяешь import re на import regex as re и получаешь инстант профит.

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

В день потреблял ~90~150 процессорных минут. Переписал на PHP - теперь потребляет ~20~40.

Ха! А в PHP-то та же самая тормознутая реализация. И как её ускорить — я не знаю.

Но она действительно в среднем работает быстрее, чем питоновая. Просто потому, что она иногда не работает.

$ python -c 'import re; print(re.match("(a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?aaaaaaaaaaaaaaaaaaaa)", "aaaaaaaaaaaaaaaaaaaaa").groups())'
('aaaaaaaaaaaaaaaaaaaaa',)

$ php -r 'preg_match("/(a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?a?aaaaaaaaaaaaaaaaaaaa)/", "aaaaaaaaaaaaaaaaaaaa", $matches); var_dump($matches);'
array(0) {
}

Сюрприз. На одинаковом паттерне питон нашёл матч, а пхп — нет.

pynonymous ()
Ответ на: комментарий от no-such-file

Это те же самые вузы где преподавали borland c и vb6 в лучшем случае? Пару лет назад дело было. Если обучают на том же уровне, то совершенно не важно, бейсик, паскаль, или питон. А вот на питоне в принципе невозможно писать эффективный код не используя нативные библиотеки, будь то готовые или же собственные. Насколько мне известно, во многих (не в курсе насчёт всех) профессиональных технических вузах за $$$, даже не топовых, обучают.

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

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

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

borland c

Пару лет назад дело было

Ты хотел сказать, пару десятков лет назад?

Если обучают на том же уровне, то совершенно не важно, бейсик, паскаль, или питон

Об том и речь. Поэтому мне и не понятно, в чём «прелесть питона» при таком подходе. А там где был другой подход, там и до питона всё было отлично.

no-such-file ★★★★★ ()
Ответ на: комментарий от Edward_I

а как назвать явление, когда в каждом втором видео по CS или SE от реально топовых ВУЗ'ов (и курсов), что англоязычных, что русскоязычных, преподаватели восхваляют python и предлагают его изучать?

А, это не считается. Таким методом «популяризовали» многие языки, и лисп, и хаскель, и схему. Но что-то это не способствовало их выходу в топ-языки мира. Так что, нет, дело точно не в этой популяризации.

ваша апология python'a, через его синтаксис - самое слабое место во всех ваших сообщениях. его синтаксис:
1) отторгает многих людей, чтобы на нем писать;

Это неверно. Новичку абсолютно всё равно, какой синтаксис изучать. «Отторгать» он может не «многих», а только опытных программистов, привыкших к какому-то одному синтаксису. Точно так же их будет отторгать баш, перл, awk, lua, тот же паскаль... да почти любой язык, вплоть до эрлангов и хаскелей.

2) он не c-like, что является определенным препятствием для многих и многих программистов;

Под c-like имеются ввиду фигурные скобочки? Потому что, например, между синтаксисом php и java нет почти ничего общего кроме скобочек.

Такие скобки нужны в bash, ведь там часто пишут одноразовые однострочники. Но в языках общего назначения, где код итак форматируется, скобки стали не нужны. Это просто дело привычки, дань традиции, Legacy, если хотите (в смысле «наследие», а не «устарело», как некоторые могут подумать).

3) он не делает ваш код хорошим. хороший код != код с отступами ни при каких обстоятельствах.

Дело не только в отступах. Есть много мелочей (даже по пунктам есть): и использование нормальных слов вместо спец.символов ?#*~$@&, и удобная индексация, и простые генераторы и list comprehension, кучи модулей на все случаи жизни, живые биндинги к либам, и простота интеграции с ними...

По отдельности всё это мелочи. Но вместе они делают код на питоне проще, чище, лучше.

Выше даже есть демонстрация, как переписывание на питоне делает код понятнее. Попробуйте провернуть такое на любом другом языке.

PS: кстати, разве эти же «недостатки» не применимы к синтаксису, скажем, паскаля?

pynonymous ()
Ответ на: комментарий от no-such-file

Если обучают на том же уровне, то совершенно не важно, бейсик, паскаль, или питон


Об том и речь. Поэтому мне и не понятно, в чём «прелесть питона» при таком подходе.

При выборе языка для обучения учитывается множество пунктов. Прелесть в том, что «обучают» не языку. Язык изучают в начале, первые пол года, а всё остальное время обучают программированию в разных его формах на примере этого языка.

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

А что изучать на примере паскаля? Низкоуровневую оптимизацию?

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

А что изучать на примере паскаля

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

плавно перейти от изучения питона к си

Намного менее плавно, чем с паскаля.

no-such-file ★★★★★ ()
Ответ на: комментарий от Edward_I

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

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

bread ()
Ответ на: комментарий от no-such-file

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

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

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

Изучать python оправдано, потому как даже если человек не станет программистом, то учитывая что python часто встраивают в профессиональные инструменты в качестве скриптового языка, то навык написания на этом языке может пригодится в дальнейшей профессиональной деятельности.

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

Забыть? А какие у питона альтернативы? Нода разве что, но это не серьёзно.

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

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

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

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

А какие у питона альтернативы?

Где? Я что-то не вижу доминирования питона ни в одной отрасли. Разве что в хайпостроении преуспел.

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

В топе сейчас нлп, нейронки и керас, но вы можете и дальше продолжать отрицать очевидное. Выбор сейчас из ноды и питона, все остальные не у дел.

anonymous ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)