LINUX.ORG.RU

Кто сказал, что python всегда красив?


0

0

На сайте http://www.pycontest.net/ происходит соревнование на написание самой короткой python программы, удовлетворяющей условию.

Цель: Самая короткая программа, преобразующая цифры в формат семисегментного индикатора.

Последний срок сдачи работ: 30 декабря.

>>> Подробности

★★★★★

Проверено: ivlad ()

Очень красивый пример:

def seven_seg(x):return '\n'.join([''.join(['|    ||__  __ |  || |'[eval('160233145144203154150133100104'[int(l)*3+u])::7]for l in x])for u in 0,1,2])+'\n'

По мне, так perl почти догнали. ;)

baka-kun ★★★★★
() автор топика
Ответ на: комментарий от h8

> А смысл? Почему не конкурс на самую наглядную и понятную программу?

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

Spectr ★★★
()
Ответ на: комментарий от baka-kun

за что как говорится боролись, на то и напоролись :)

guardian
()

пасаны решили перл догнать, ы?

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

Функция пашет строку передай туда ------------ #!/usr/bin/env python

def seven_seg(x):return '\n'.join([''.join(['| ||__ __ | || |'[eval('160233145144203154150133100104'[int(l)*3+u])::7]for l in x])for u in 0,1,2])+'\n'

print seven_seg('007')

anonymous
()

!!!Предупреждение!!!

ОЧЕНЬ НЕ СОВЕТУЮ ВЫПОЛНЯТЬ В ИНТЕРПРЕТАТОРЕ ЛЮБОЙ КОД, КОТОРЫЙ БУДЕТ ЗДЕСЬ ФИГУРИРОВАТЬ. ЛЮБОЙ, КАК ДО ЭТОГО СООБЩЕНИЯ, ТАК И ПОСЛЕ. ВСПОМНИТЕ ПРОШЛОГОДНЮЮ ИСТОРИЮ С КОДОМ НА ПЕРЛЕ. МНОГИЕ НА ЭТОМ ЛИШИЛИСЬ ВСЕЙ ИНФОРМАЦИИ.

Veter
()
Ответ на: !!!Предупреждение!!! от Veter

Помним, помним... По перекошенным лицам сразу было видно кто под рутом сидел. А код - нормальный паникер хренов.

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

Обычно после большого количества строчек набранных БОЛЬШИМИ БУКВАМИ предлагают:
[ Accept ] [ Decline ]

:)

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

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

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

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

+0.9

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

Умники одни собрались

Ето же: shortest python coding contest

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

Это скорее развлечение для популяризации хвостатого.

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

>Очень красивый пример:

>def seven_seg(x):return '\n'.join([''.join(['| ||__ __ | || |'[eval('160233145144203154150133100104'[int(l)*3+u])::7]for l in x])for u in 0,1,2])+'\n'

А почему eval() а не int() ?

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

Слово "кал" не отражает всех прелестей питона 8)

anonymous
()

долбанные(мягко сказано! чтоб не удалили) программисты! Нет что бпиво пить как админы!

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

>долбанные(мягко сказано! чтоб не удалили) программисты! Нет что бпиво пить как админы!

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

MOByte
()

>>Кто сказал, что python всегда красив?

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

Остров.

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

а кто сказал, что красивый и короткий это всегда одно и тоже ?

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

> (если говорить об индустриальном программировании)

Это когда индусы пишут триальные программы (ц)?

-- wrar

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

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

А по моему скромному мнению, в "программе (если говорить об индустриальном программировании)", главное -- полностью соответствовать спецификации. :)

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

>>> (если говорить об индустриальном программировании)

>> Это когда индусы пишут триальные программы (ц)?

> Это когда деньги зарабатывают, мой друк ;) В том числе и на индусах.

Это, когда стоимость твоей ошибки может быть выше годового дохода фирмы. :)

Neksys ★★★
()
Ответ на: !!!Предупреждение!!! от Veter

>МНОГИЕ НА ЭТОМ ЛИШИЛИСЬ ВСЕЙ ИНФОРМАЦИИ

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

реально там было не более 1-2 "индивидуумов" пострадавших.

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

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

> правильно, а теперь подумай почему java столь популярна ;)

Тогда, встречный вопрос: почему так непопулярна, например, ADA ? :)

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

>правильно, а теперь подумай почему java столь популярна

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

anonymous
()

Ну вот, как всегда, народ всего лишь развлечься решил, а тут целая война началась. Разлекитесь!

deribin
()
Ответ на: !!!Предупреждение!!! от Veter

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

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

> А по моему скромному мнению, в "программе (если говорить об индустриальном программировании)", главное -- полностью соответствовать спецификации. :)

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

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

> Ждем-с оставшихся 0.1 ;-)

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

ivlad ★★★★★
()
Ответ на: комментарий от baka-kun

baka-kun:
> По мне, так perl почти догнали.

W:
> пасаны решили перл догнать, ы?

Чепуха. На Perl'е тоже можно писать понятные программы.

VladimirP ★★★★
()

Идиотский конкурс и заголовок долбанутый.

Ясен пень, что на любом языке можно написать галимый код... Что, кто-то сомневался?

А конкурс - фанаты развлеакаются, только вот не подумали что это против питона играет (см. топик и камменты).

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

>Никогда змея не догонит верблюда.

Потому что ей с верблюдом не совсем по пути. ИМХО в другую сторону направляется :)

sigill
()

А вот реализация на J (http://www.jsoftware.com/)

seg=:7 3$' _ |_| | _||_ | |'
loc=:10 3$(7&#.^:_1)6115893582106107964921726x
seven_seq=:(,"2)@:((1 0 2)&|:)@:{&data@:{&loc@:(10&#.^:_1)

Причем, достаточно понятная.
А ведь ее можно еше уменьшать и уменьшать... не тут python сосет.

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

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

>Никогда змея не догонит верблюда.

А вы курите свой кальян, курите. Вас есть будут, а вы и не заметите. Верблюдофилы, мля...

anonymous
()

> Каменты фсад. Пусть быдлота гавкает, это её естественное состояние.

Что и говорить! Действительно одни придурки собрались. Гуру мля. Абсолютно уверен, что 90% собравшихся умеют писать только на "Turbo Pascal" :o)

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

Достаточно понятная реализация на J ?

Куча смайликов каких-то :)

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

>Тогда, встречный вопрос: почему так непопулярна, например, ADA ? :)

ADA - American Dental Association. Когда походы к дантисту были популярны?

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

>>Потому что ей с верблюдом не совсем по пути. ИМХО она в другую сторону направляется :)

В задницу, что ли ?!

anonymous
()

Зачем слово "display" так пареводить то надо было?

Когда прочитал "..семисегментного индикатора.." стало себя жалко, подумал что совсем отупел.

А оказывается это "а seven-segment display" - "семи-сегментный дисплей".

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

>>>...мой друк ;)

Кашмар, две ошибки в таком популярном слове! %)))

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