LINUX.ORG.RU

Python или...


0

1

Доброго времени суток!

Подумываю начать программировать, но возник самый простой вопрос - на чем? Писать буду под linux. Задачи: разный вспомогательный системный софт, а так же скрипты. Смотрю в сторону Питона, но вопрос стоит в выборе версии. Обратная совместивость 2.x и 3 порушена, по слухам, и в этом случае имеет ли смысл изучать 3ю? Буду рад услышать рекоммендацию по другим ЯП.


> вспомогательный системный софт, а так же скрипты

> Буду рад услышать рекоммендацию по другим ЯП.

bash, perl.

arsi ★★★★★
()

Не гонись за третьей версией, когда будет надо, она тебя сама найдёт и догонит.

«Совместимость нарушена» означает нарушена совместимость приложений, а не разработчика.

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

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

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

> ну вы бы еще хаскель посоветовали!

а что, хаскель уже входит в lsb?

зы: кстати, а питон уже давно в lsb? как-то пропустил этот момент...

arsi ★★★★★
()

ну можно попробовать perl, хотя если уж выучите python, то на perl вряд ли уже захочется вернуться, если только perl6 не будет хорош.

sol13 ★★★★★
()

Не нужно больше системного софта на перле %)

Deleted
()

То есть как я понимаю под мои задачи кроме Питона 2.x мало что подходит? В таком случае, если у кого есть опыт писанины именно на Питоне, подскажите нормальный IDE и книжечку для начинающих. Нашел несколько книжек, но они под 3й.

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

IDE - Eclipse + PyDev; книга - обычно советуют Dive Into Python, но я учил по {Language,Librray} Reference.

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

То есть как я понимаю под мои задачи кроме Питона 2.x мало что подходит? В таком случае, если у кого есть опыт писанины именно на Питоне, подскажите нормальный IDE и книжечку для начинающих. Нашел несколько книжек, но они под 3й.

1. Dive into Python
2. PEP8

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

Никогда не пользовался, если честно. Как почитал, так это весьма объемный комбайн, не очень-то популярный для разработок на Питоне (по крайней мере никто на форумах не советует именно его в качестве IDE). Конечно, мне судить трудно о плюсах и минусах...

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

Все бесплатные IDE для питона гогно, vim, или любой другой продвинутый текстовый редактор, будет в самый раз.

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

Я, конечно, может быть скажу глупость сейчас, но разве питоновский не надо компилировать? Как с этим справится vim / emacs?

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

ЕМНИП, это делается также как в перле: в начале файла пишем #!/usr/bin/python(2)(дистрибутивнозависимо). chmod +x example.py Или же так: $ python example.py Как пользователь ViM могу сказать. что делаться все это может просто: :!python % ПО полочкам: : - из нормального режима вызов командной строки. ! - вызов внешней команды python - собственно интерпретатор. % - алиас для текущего файла. файл должен быть сохранен. Эту команду можно повесить на какую либо функциональную клавишу вбив в .vimrc примерно следующее: map! <F2> <ESC> :!python %

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

> Как почитал, так это весьма объемный комбайн

По сравнению с эклисом и прочими - он крошечный.

не очень-то популярный для разработок на Питоне (по крайней мере никто на форумах не советует именно его в качестве IDE)

Смотря на каких спрашивать http://www.reddit.com/r/programming/comments/18au2/which_python_ide_do_you_use

Да и гвидо не гнушается использовать старый добрый xemacs.

paranonymous
()

> разный вспомогательный системный софт

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

а так же скрипты

Зависит от задачи. Ruby, bash, make, tcl.

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

> Pydev лучше

Кстати чем? Просто уже давно хочу с emacs'a съехать, да все мотивации не хватает.

мне нравится то что там многое из коробки идёт, например подсвечиваются pylint'овские варнинги в ide, нормальный интерфейс для модульного тестирования и пр.

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

> Если производительность некритична, Ruby. Если критична, то Си. Питон же ни рыба, ни мясо, а значит не нужен.

«Если нужно максимальное количество приложений, то MS Windows. Если нужны минимальные требования к системе - то DOS. Linux же не рыба ни мясо, а значит регистрантам лора слишком сложен».

Есть принцип разумной достаточности, когда нужна и производительность, и возможности, и удобство, и не частями, а сразу. Вот тогда и Linux-у, и Python-у, нет альтернатив, увы.

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

В написании админовспомогательных утилит по удобсту заруливает связка bash + Ruby. Если же ТС под вспомогательными системными программами имел ввиду какие-нибудь самописные демоны или сетевые службы, то Ruby и Python одинаково сливают по производительности, различие в тормознутости интепретатора руби по сравнению с питоном тут абсолютно не существенно.

Вот в вебе питон имеет смысла, да.

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

Питон же ни рыба, ни мясо,[..]

обоснуй

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

> В написании админовспомогательных утилит по удобсту заруливает связка bash + Ruby.

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

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

Расскажи как к нему прикрутить показ пайтоновской доки, REPL и научить определять тип файла не только по расширению, но и по she-bang?

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

Расскажи как к нему прикрутить показ пайтоновской доки, REPL

по второму разу?

научить определять тип файла не только по расширению, но и по she-bang?

зачем?

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

>по второму разу?

Дай ссылку на первый раз.

зачем?


Я предпочитаю скрипты запускающие основные модули из site-packages, делать без расширений, чтоб их было удобно класть в /usr/bin. Это конечно можно сделать на этапе установки, но обидно, что такая мощная IDE не умеет такой банальной вещи.

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

> мне нравится то что там многое из коробки идёт, например подсвечиваются pylint'овские варнинги в ide,

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

нормальный интерфейс для модульного тестирования и пр.

а вот уже надо будет посмотреть.

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

>зачем?

Я предпочитаю скрипты запускающие основные модули из site-packages, делать без расширений, чтоб их было удобно класть в /usr/bin. Это конечно можно сделать на этапе установки, но обидно, что такая мощная IDE не умеет такой банальной вещи.

а кто Вам мешает на том же пистоне катнуть маленький prebuild скрипт и запускать его по какому хотите ивенту?

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

В написании админовспомогательных утилит по удобсту заруливает связка bash + Ruby

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

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

>docstring

Докстринги хорошо, но не то. Хочется встроенного просмотра доки из /usr/share/doc/python-doc*/html

REPL


Когда я его щупал, оно вроде использовало в качестве интерпретатора jython? Я конечно не очень глубоко копал и могу ошибаться, поэтому прошу переубедить меня если это не так.

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

>а кто Вам мешает на том же пистоне катнуть маленький prebuild скрипт и запускать его по какому хотите ивенту?

Да кто ж спорит то? Можно сообразить еще много костылей, вместо нормального определения типа файла.

И хватит мне выкать!

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

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

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

> Если производительность некритична, Ruby. Если критична, то Си. Питон же ни рыба, ни мясо, а значит не нужен.

А вот и Руби-фанбои пожаловали...

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

> Если же ТС под вспомогательными системными программами имел ввиду какие-нибудь самописные демоны или сетевые службы, то Ruby и Python одинаково сливают по производительности

...если не умеешь писать.

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

Если тот, кто пишет на python, испытывает предубеждения против ruby, то, скорее всего, не знает ни того ни другого. А для нормального питониста ruby не враг, а друг, это же не php какой-нибудь.

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

>Я предпочитаю скрипты запускающие основные модули из site-packages, делать без расширений, чтоб их было удобно класть в /usr/bin.

Их можно и с расширением класть в /usr/bin

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

> А для нормального питониста ruby не враг, а друг

Значит, я не нормальный питонист. Или вообще не питонист.

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

Я в курсе, но мне это представляется не очень красивым решением. Хотя это скорее с тараканами в моей голове связано.

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

> PyCharm

Вообщем-то ничего интересного на первый взгляд в pycharm я не увидел. Или я куда-то не туда смотрел?

paranonymous
()

рутноп 2.* очень простой в изучении. как иде geany, или eclipse + pydev.

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

Не обязательно. Это называется «ну не люблю я тебя, не люблю!». Я вон nginx по куда более простым причинам ненавидел, ничего, пережил.

kid_lester
()

Я понимаю, конечно, что вброс с моей стороны имел приличный потенциал (что-то вроде «а у меня есть пруфы, что б-га нет, ага), но не думал, что настолько :D

LMW
() автор топика

Именно скрипты удобнее всего писать на bash-e и perl-е, они для этого задумывались.

В остальном питон отличный сбалансированный выбор. Но это не значит что на питоне любая задача решается удобно.

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