#нормальный вариант
def gen(n):
for line in xrange(1, n+1):
res = [str(item) for item in xrange(1, line+1)]
res = sorted(res, reverse= not line%2)
print("-".join(res))
gen(6)
(defun gen (x)
(loop for i from 1 below (+ x 1) do
(format t "~{~a~^-~}~%"
(if (evenp i)
(loop for b from i downto 1 collect b)
(loop for b from 1 to i collect b)))))
;нечитабельный вариант
CL-USER> (defun gen (x) (loop for i from 1 below (+ x 1) do (format t "~{~a~^-~}~%" (if (= (rem i 2) 0) (reverse (loop for b from 1 below (+ i 1) append (list b))) (loop for b from 1 below (+ i 1) append (list b))))))
;читабельный вариант
CL-USER> (defun gen (x)
(loop for i from 1 below (+ x 1) do
(format t "~{~a~^-~}~%" (if (= (rem i 2) 0)
(reverse (loop for b from 1 below (+ i 1) append (list b)))
(loop for b from 1 below (+ i 1) append (list b))))))
GEN
CL-USER> (gen 6)
1
2-1
1-2-3
4-3-2-1
1-2-3-4-5
6-5-4-3-2-1
NIL
#нормальный вариант
def gen(n):
for line in xrange(1, n+1):
res = [item for item in xrange(1, line+1)]
res = sorted(res, reverse= not line%2)
print("-".join((str(i) for i in res)))
gen(6)
#однострочник
def gen(n):
return "\n".join(
("-".join(
sorted((str(x) for x in xrange(1, b+1)), reverse=(b+1)%2))
for b in xrange(1, n+1)
)
)
print(gen(6))
Информативность топика стремится к нулю, к тому же приведенный код является примером того, как не надо писать на питоне. Особенно если ориентирован на новичков.
Несоблюдение PEP8.
Использование исключений в таком виде:
try:
except Exception:
pass
И в if засунули большой блок кода, хотя можно было поступить более красиво. Вывести справку и выйти.
Добавлю, что очень замечательной является возможность отправки отчетов на другой sentry-сервер. На мой взгляд — это первое о чем стоило упомянуть.
На сервере приложение ставится ровно так, как описал автор. Плюс необходимо добавить в настройки ключ:
SENTRY_KEY = '0123456789abcde'
На машинах-клиентах прописываем в настроках следующий код:
SENTRY_REMOTE_URL = 'http://your.sentry.server/sentry/store/'
#или несколько
SENTRY_REMOTE_URL = ['http://server1/sentry/store/', 'http://server2/sentry/store/']
INSTALLED_APPS = [
#'indexer', на клиенте не нужен
#'paging', на клиенте не нужен
#'sentry', на клиенте не нужен
...
'sentry.client',
]
SENTRY_KEY = '0123456789abcde' #ключ с нашего sentry-сервера
Бывает так, что ошибки возникают на клиент-сервере при работе с базой, но при использовании удалённого sentry-сервера мы не потеряем оповещение.
Так же можно использовать handler для модуля logging для отправки отчетов.
Я сначала отправил на гуглопочту и ничего туда не пришло.
Затем отправил на свой почтовый сервер. Всё замечательно пришло. С оформлением от фэйсбука. Правда адрес отправителя корявый.
Сообщение включает ссылку для ответа. При переходе по ней автоматически подставляется почтовый адрес в форму регистрации.
В общем это ещё один способ пополнить пользовательскую базу фэйсбука.
Да, и не считаю это говнокодом.
Топик минусанул. И вот почему.
Информативность топика стремится к нулю, к тому же приведенный код является примером того, как не надо писать на питоне. Особенно если ориентирован на новичков.
Несоблюдение PEP8.
Использование исключений в таком виде:
И в if засунули большой блок кода, хотя можно было поступить более красиво. Вывести справку и выйти.
На сервере приложение ставится ровно так, как описал автор. Плюс необходимо добавить в настройки ключ:
На машинах-клиентах прописываем в настроках следующий код:
Бывает так, что ошибки возникают на клиент-сервере при работе с базой, но при использовании удалённого sentry-сервера мы не потеряем оповещение.
Так же можно использовать handler для модуля logging для отправки отчетов.
Затем отправил на свой почтовый сервер. Всё замечательно пришло. С оформлением от фэйсбука. Правда адрес отправителя корявый.
Сообщение включает ссылку для ответа. При переходе по ней автоматически подставляется почтовый адрес в форму регистрации.
В общем это ещё один способ пополнить пользовательскую базу фэйсбука.
В данной версии поиск ведется по фликру. Планировал реализовать что-то для гугла, но из-за ограничения по API решил не делать.
Yet Another Photo Instant Search.
Слайд-шоу тоже было в планах, но руки пока не дошли.