← All posts tagged Python

asmer
Python orm flask ? sqlalchemy А кто-нибудь знает культурный путь для добавления префильтров в ORM алхимии? Я бы такой, что бы на уровне ORM-моделей пофильтровал все записи, недоступные пользователю.
stackoverflow.com — какое-то неполное и костыльное решение, к сожалению.
asmer
Python Win odesk ну шо, я подписался на одно удаленное почасовое рабство. И самое интересное, что рабство интересное — пилить веб-фреймворк и всякий хайлоад. Дешево, но пока покатит :)
asmer
tests Python дыбр odesk мда, всякие пиписькомерки — то еще говно. Только что прошел питонотест на одеске, с гуглом и копипастой в питоношелл. 4.25 из 5, т. е. 6 вопросов я проебал. Неплохо, чо.
asmer
pypy Python Gentoo дыбр говно бля, пытаюсь сконпелять pypy, а это говно на python отжирает при конпеляции всю оперативу. Надо будет нахрен всё постопить, включая иксы и оставить в консоли собираться на ночь.
asmer
Python Ruby ? А есть что-то типа dive into python для ruby? Т. е. лаконичный мануал по особенностям и синтаксису языка с примерами для человека, которого не надо учить ООП и прочим плюшкам.
asmer
магия Django Python paginator ? Использую ща simplepagination, который в свою очередь использует стандартный джанговский пагинатор. Кто-нить может мне объяснить, как в запрос попадает LIMIT и OFFSET? Это круто, но это магия :D
asmer
Django Python Vim ? Назрело желание собрать свое недоIDE на/под тэги. Реквестирую инфы о автодополнении, полезных плагинах и, возможно, vimrc. Что уже есть: nerdcommenter, nerdtree и всякое прочее. Кстати, синтаксис шаблонов с подсветкой нужен также. Гуглеж в процессе.
asmer
code Python Lisp benchmark
Маленький бенчмарк и его результаты:
lisp:
(defun simple(max)
  "Search for simple numbers up to max"
  (setq current-numbers (list 2))
  (do ((num 3 (incf num 2)))
    ((> num max))
    (setf found T)
    (dolist (prev current-numbers)
      (if (= 0 (mod num prev)) (PROGN (setf found NIL) (return)))
      (if (> prev (/ num 2)) (return)))
    (if found (PROGN (nconc current-numbers (list num)) 
                     (print num)))
    )
  )


(simple 100000)

python:
numbers = [2]
maxNum = 100000
new = 1

for i in xrange(3,maxNum):
    for j in numbers:
        if j>i/2:
            break
        if i%j == 0:
            new = 0
            break
    if new == 1:
        print i
        numbers.append(i)
    new = 1

print "\nTotal numbers: ",len(numbers)

*Итоги*:

*clisp:*
real	1m28.242s
user	1m27.110s
sys	0m1.266s

*sbcl:*
real	0m6.794s
user	0m6.615s
sys	0m0.114s

*python:*
real	0m10.486s
user	0m10.446s
sys	0m0.017s

за лиспокод не пинать - поиск простых чисел это мой hello world за последние 15 лет.