Сохранен 509
https://2ch.hk/pr/res/525512.html
Прошлые домены больше не функционируют, используйте адрес ARHIVACH.HK.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Python

 Аноним 04/08/15 Втр 18:04:18 #1 №525512 
14387006585290.jpg
Шапка: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Прошлый: >>519548 (OP)

Слоупокам напоминаю, что в 2020 заканчивается поддержка второго питона и пора бы переходить на третий
http://legacy.python.org/dev/peps/pep-0373/
Аноним 04/08/15 Втр 18:10:50 #2 №525519 
>>525488
> прокомментировать экосистему разработки программ для браузера на Питоне/Джанго
Эм, это MVC фрейморк, в php тоже есть подобные, то есть ты пишешь шаблоны, модели вьюшки и т.п. Потом запускаешь uwsgi или fastcgi сервер и наводишь на него nginx. По типу php-fpm или как его. Есть и девсервер для тестирования который одной командой запускается
>Кроме Джанго есть что-то популярное, насколько оно хорошее?
Есть. Хорошее. Но работы больше всего с django
>но удобные инструменты для электронной коммерции и платёжных шлюзов
Есть полно.
> И менеджер пакетов?
Есть смотри
https://www.djangopackages.com/
https://pypi.python.org/pypi?%3Aaction=search&term=django&submit=search
Можешь там поискать сразу модули для твоих плалежных шлюзов
> На Виндовс желательно с Питоном через виртуализацию работать, правильно?
Да, но не обязательно. Некоторые на винде сидят.


перепостил т.к. перекат
Аноним 04/08/15 Втр 18:11:17 #3 №525520 
>>525512 (OP)
До 2020 ещё дожить надо. Да и подержку продлят я думаю т.к. всё ещё останется дофига легаси кода.
Аноним 04/08/15 Втр 18:16:29 #4 №525523 
>>525520
2020 наступит быстрее чем ты думаешь. А потом ты постареешь и умрешь.
Аноним 04/08/15 Втр 20:35:36 #5 №525570 
Репостну годноту с конца прошлого треда.
https://github.com/madisonmay/Tomorrow
Аноним 04/08/15 Втр 21:41:58 #6 №525601 
14387137188530.gif
Не кидайте хуями. Я нюфаг, вникаю в питон по курсу на codecademy. Почему-то, когда использую raw_input, к элементам списка дописывается u'. В чем дело?
Аноним 04/08/15 Втр 21:47:52 #7 №525607 
14387140727070.png
>>525601
Аноним 04/08/15 Втр 21:49:23 #8 №525609 
>>525601
видимо во втором питоне рав_инпут переводится в юникод.
Аноним 04/08/15 Втр 21:55:07 #9 №525610 
>>525601
Это означает что строка в unicode(типа unicode)
Если ты сделаешь
print hobbies[0]
То напечатает без кавычек и u. Просто ты печатаешь весь список и тогда выводится его repr
Аноним 04/08/15 Втр 21:58:54 #10 №525613 
14387147344840.gif
>>525609
А если просто выводить, не добавляя в список, то все норм
>>525610
Похоже на то.

Аноним 04/08/15 Втр 22:03:25 #11 №525616 
14387150052180.png
>>525613
Смотри.
Когда ты делаешь
print list
он вызывает метод __str__ у list. У list этот метод возвращает квадратные скобочки и repr() от каждого элемента через запятую.
Для юникод строк этот repr выглядит как u'строка'
Аноним 04/08/15 Втр 22:05:24 #12 №525618 
>>525613
Алсо попробуй сделать

print '; '.join(hobbies)
Аноним 04/08/15 Втр 22:06:50 #13 №525619 
>>525616
Ок, прочитаю про это
>>525618
Ага, так все норм, спасибо.
Аноним 04/08/15 Втр 22:13:34 #14 №525622 
>>525570
>https://github.com/madisonmay/Tomorrow
Просто обкончался с проекта. Люблю такие няшные микро-библиотеки.
Аноним 04/08/15 Втр 23:34:49 #15 №525660 
14387204892760.png
14387204892781.png
В Ubuntu.
Аноним 04/08/15 Втр 23:57:52 #16 №525665 
14387218728450.png
Вот что значит на работу устроился.
Аноним 05/08/15 Срд 00:07:17 #17 №525669 
>>525665
Никуда ты не устроился кому ты пиздишь.
Аноним 05/08/15 Срд 00:13:05 #18 №525674 
>>525519

Спасибо. Еще раз перепощу сюда тоже:

>Ребята, писал на PHP/Laravel, появилась возможность перелезть на Python/Django (в том числе и потому, что работы нет, везде на серверной стороне Битрикс через Битрикс Битриксом погоняет), но я немного испугался того, о чём совсем не знаю. Можете просто как-то прокомментировать экосистему разработки программ для браузера на Питоне/Джанго и осмысленность такого перехода? Кроме Джанго есть что-то популярное, насколько оно хорошее? Вопрос, наверное, риторический, но удобные инструменты для электронной коммерции и платёжных шлюзов, разумеется, тоже в наличии? И менеджер пакетов? На Виндовс желательно с Питоном через виртуализацию работать, правильно? Vagrant-бокс с Питоном и Hyper-V существует популярный?

>Извиняюсь за вопросы, которые мог нагуглить, просто попробуйте ответить сходу на что-то, пожалуйста, а чего не увижу, потом просто загуглю. Спасибо!
Аноним 05/08/15 Срд 00:48:28 #19 №525687 
Реквестирую годные материалы по теме asyncio, корутины, вот это все. Документация официальная что-то унылая.
Аноним 05/08/15 Срд 09:46:53 #20 №525761 
Хули пик такой страшный? Надо было что-то поняшнее.

>>525674
На фласке.
Аноним 05/08/15 Срд 10:24:50 #21 №525765 
14387594907850.jpg
>>525761
Двачую аж вспомнился пикрелейтед.
Аноним 05/08/15 Срд 10:33:35 #22 №525766 
14387600157700.jpg
14387600157731.jpg
14387600157762.jpg
14387600157793.jpg
>>525765
Аноним 05/08/15 Срд 10:46:37 #23 №525767 
>>525761
ЕТО ТЫ СТРАШНЫЙ, НА ФОТКЕ ВИЛЕКОЛЕПНЫЙ ЗМЕЙ
(НО ЯЗЫК ПИТОН ВСЕ РАВНО СУПЕРГАВНИЩЕ)
Аноним 05/08/15 Срд 10:47:15 #24 №525768 
>>525660
А теперь перепиши на qt вместо tk.
Аноним 05/08/15 Срд 10:48:35 #25 №525770 
>>525767
А вот и местный шизик в тред пожаловал.
Аноним 05/08/15 Срд 10:57:40 #26 №525773 
14387614601640.png
Скоро буду писать на фласке.
Аноним 05/08/15 Срд 11:00:35 #27 №525774 
>>525773
>ravno
Аноним 05/08/15 Срд 11:10:46 #28 №525778 
>>525773
>ravno
Yasno.
Аноним 05/08/15 Срд 11:11:51 #29 №525780 
14387623114030.png
>>525774
Аноним 05/08/15 Срд 11:18:14 #30 №525781 
>>525774
>>525778
Blia idite nahuj.
Аноним 05/08/15 Срд 11:20:10 #31 №525782 
>>525781
Ponyatno)))
Аноним 05/08/15 Срд 11:21:13 #32 №525784 
>>525782
Yasno)))))))))))
Аноним 05/08/15 Срд 11:52:10 #33 №525789 
)))))))))))))))))))))))))))))
Аноним 05/08/15 Срд 12:53:23 #34 №525803 
>>525761
А мне нравится, он весь такой РАДУЖНЫЙ, как бензин. Сейчас модно быть РАДУЖНЫМ.
Аноним 05/08/15 Срд 12:54:35 #35 №525804 
14387684751190.jpg
14387684751201.png
14387684751332.jpg
>>525761
классека
Аноним 05/08/15 Срд 15:06:03 #36 №525839 
https://www.youtube.com/watch?v=bp3mCgrdMxU
Аноним 05/08/15 Срд 15:07:42 #37 №525840 
>>525839
хули он не па русски пиздит
Аноним 05/08/15 Срд 15:08:55 #38 №525841 
>>525840
Чурка ебаная потомушто
Аноним 05/08/15 Срд 15:38:34 #39 №525848 
>>525839
Гвидо подтвердил что поддержка второго говна продлеваться больше не будет. 2020 - все.
Аноним 05/08/15 Срд 15:40:14 #40 №525850 
>>525848
его никто не спрашивает.
python2 Это энтерпрайз.
Аноним 05/08/15 Срд 15:42:46 #41 №525852 
Это можно украсть бесплатно без смс?
http://www.ozon.ru/context/detail/id/31249592/
Аноним 05/08/15 Срд 15:42:55 #42 №525853 
>>525850
Твой легаси ынтырпрайз будет сам развивать вторую ветку?
Аноним 05/08/15 Срд 15:43:18 #43 №525854 
>>525852
Можно, разрешаем.
Аноним 05/08/15 Срд 16:00:33 #44 №525870 
>>525848
на счёт троечки там вообще уныние полное было. гвидо в ходе выступления такой типа, а поднимите руки кто троечку в проде использует, и я там чуть ли не один вообще во всём зале был
Аноним 05/08/15 Срд 16:21:41 #45 №525883 
>>525870
Ай, не пизиди, был он там!
Аноним 05/08/15 Срд 16:31:17 #46 №525895 
>>525768
Нет. На Qt что-нибудь другое, когда-нибудь, если будет время.
Аноним 05/08/15 Срд 16:32:08 #47 №525897 
>>525839
ГВИДО ЮЗАЕТ И ЕМАКС И ВИМ, ШОК-СЕНСАЦИЯ
Аноним 05/08/15 Срд 16:32:23 #48 №525898 
>>525895
У тебя всегда будет время потому что ты никому не нужны хиккан.
Аноним 05/08/15 Срд 16:33:52 #49 №525900 
>>525852
>2495.00 руб
Нихрена себе цена, надо срочно книжку писать.
Аноним 05/08/15 Срд 16:35:36 #50 №525903 
>>525898
Кому ты пиздишь? На этой доске только успешные разработчики от 500к$.
Аноним 05/08/15 Срд 19:00:05 #51 №525979 
14387904059850.jpg
>>525854
Аноним 05/08/15 Срд 19:08:21 #52 №525989 
>>525979
Какой вопрос такой и ответ.
Аноним 05/08/15 Срд 20:36:29 #53 №526031 
Загрузил пакет в PyPI. Страница пакета появилась, но через pip install он не ищется. И через поиск по сайту тоже. Это нормально и он позже появится или я накосячил где-то?
Аноним 05/08/15 Срд 21:05:41 #54 №526040 
14387979415810.jpg
Поцаны у меня твиттер бутстрап (Flask-bootstrap) перестал работать во всех браузерах. Например сайт http://blog.miguelgrinberg.com/index выглядит так. В чем проблема?
Аноним 05/08/15 Срд 21:08:21 #55 №526043 
>>526040
У меня все работает. Какой-нибудь носкрипт режет?
Аноним 05/08/15 Срд 21:17:00 #56 №526048 
>>526031
Разобрался. Оказалось, что после регистрации проекта нужно еще создать его дистрибутив и залить его, лол.
Аноним 05/08/15 Срд 21:35:21 #57 №526057 
>>526043
Все плагины отключены. У тебя какой браузер? Есть подозрение что виновата во всем yota, так как вчера вечером у меня перестал работать их днс сервер и заработал только сегодня днем.
Аноним 05/08/15 Срд 21:50:12 #58 №526066 
>>526057
Единственный нормальный, ФФ.
>днс
Пропиши 8.8.8.8 жи.
Аноним 05/08/15 Срд 21:57:15 #59 №526073 
>>526066
Уже пробовал, но он все равно йотовским.
И такая проблема на всех устройствах подключенных к йоте. При этом через анонимайзер все работает как надо.
Аноним 05/08/15 Срд 22:00:02 #60 №526074 
Я просто не могу получить доступ к http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/css/bootstrap.min.css
http://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js
http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.min.js
файлам.
Аноним 05/08/15 Срд 23:30:02 #61 №526128 
14388066024420.jpg
http://rghost.ru/7LDfKVZBx
Аноним 06/08/15 Чтв 00:16:04 #62 №526150 
>>526128
1. У тебя акселераторы повторяются. Например для Правка и Помощь один - П
2. Нету popup-подсказок при наведении на значки. Я хуй знает что пустой квадрат должен делать, и он не говорит.
3. Как включить нумерацию строк? Вид-нумерация - не активно.
Аноним 06/08/15 Чтв 00:27:47 #63 №526153 
>>526128
4. И ТАБЫ запили.
Аноним 06/08/15 Чтв 05:49:09 #64 №526227 
Написал небольшой пакет для отложенного выполнения функций после сигнала с клавиатуры (т.е. после нажатия Ctrl-C).
Скачать можно через pip install pycloser.
Есть три функции: defer, listen и close.
С помощью первой функции кладутся на стек. Пример с открытием и закрытием файла:

@defer # Откладываем печать в консоль
def goodbuy():
print('Good buy!')

f = open('HelloWorld.txt') # Открываем файл
@defer # Откладываем закрытие файла
def close_file():
f.close()

listen() # Слушаем сигналы. Если пользователь нажимает Ctrl-C, из стека достанется и запустится close_file()

s = f.read() # Тут как-то работаем с файлом

close() # Выполняем функции из стека, если не было сигнала

Если пользователь нажмет Ctrl-C, то сначала выполнится close_file(), а потом goodbuy().
Код можно посмотреть тут: https://github.com/arvinkulagin/pycloser
Аноним 06/08/15 Чтв 07:57:35 #65 №526247 
14388370555990.png
14388370556001.png
>>526150
1. Ну, соррь, тупанул чёт.
2. В tkinter их изначально нет, надо костыли городить.
3. Нумерация работает только в режиме "Перенос по ..." --> "Без переноса".
>>526153
4. Сначала запуск питон скрипта, потом табы.
Аноним 06/08/15 Чтв 08:13:49 #66 №526248 
>>526227
А нахуя оно? Можно же просто завернуться в try except KeyboardInterrupt.
Аноним 06/08/15 Чтв 08:28:58 #67 №526251 
14388389380330.png
Это что блядь за хуета?
Аноним 06/08/15 Чтв 08:30:08 #68 №526252 
>>526251
Настало время переустановить шиндовс.
Аноним 06/08/15 Чтв 09:38:43 #69 №526267 
>>526227
Вот ето свежисть, вот ето новезна!
https://docs.python.org/3/library/atexit.html?highlight=atexit#module-atexit
Аноним 06/08/15 Чтв 09:44:28 #70 №526270 
>>526227
Бля, ты даже не pypi это говно принёс. Ну будьте людьми, не уподобляйтесь js-макакам!
Аноним 06/08/15 Чтв 09:58:25 #71 №526272 
>136 downloads in the last day
Интересно. Везде боты что-то тянут. Подозреваю что хайринговые конторки.
Аноним 06/08/15 Чтв 12:26:40 #72 №526306 
>>526227
Ты гоблядей наслушался чтоли? defer это бесполезный костыль.

with f = open('HelloWorld.txt'): s = f.read()
Аноним 06/08/15 Чтв 12:27:07 #73 №526309 
>>526306
Ой бля не тот язык сорри.

with open('HelloWorld.txt') as f: s = f.read()
Аноним 06/08/15 Чтв 16:54:50 #74 №526470 
>>526248
Можно, но так красивей, мне кажется.
>>526267
>Вот ето свежисть, вот ето новезна!
Ну, да, велосипед. Но это норма, лол.
>>526270
>Ну будьте людьми, не уподобляйтесь js-макакам!
Ну, это, наверное, зря. Хотел попробовать что-нибудь на pypi закинуть. Но никакой полезной идеи в голову не пришло.
>>526306
Про with я знаю, но это не совсем то. И гошный defer, кстати, довольно удобный.
Аноним 06/08/15 Чтв 20:39:24 #75 №526561 
господа, дико извиняюсь за платину, но поясните плез,
что надо для девелопа джуна питона?
сейчас осиливаю байт оф питона очень нравится, но этого ведь недостаточно жеж
Аноним 06/08/15 Чтв 21:10:36 #76 №526571 
>>526561
1) Разработчики на питоне не нужны
2) Разработчики на питоне никому не нужны
3) Вроде как нет единого стандарта квалификации, потому что уровень знаний в шарпе стандартизирует MS, например, уровень знаний в жабе -- оракл, а по питону экзамены никто не проводит, как-то так получилось
4) Если ты-таки сумеешь отыскать вакансию, там будет знание Django, инфа сотка / к гадалке не ходи / отнесите мои слова в банк
Аноним 06/08/15 Чтв 21:30:04 #77 №526578 
>>526571
вакансия отыскана, но там нихера не пишут про джангу, а просто мол "знай петон" и все.
но по остальному понятно что веб-шмеб
настоящая мистика
Аноним 06/08/15 Чтв 21:39:22 #78 №526580 
>>526227
> def is_empty(self):
> return self.items == []
Тоже недавно разгребал js говнокод…
Аноним 06/08/15 Чтв 21:48:01 #79 №526581 
>>526580
Не спорю. Можешь сказать, почему это говнокод, и как нужно было сделать в этих случаях?
Аноним 06/08/15 Чтв 22:51:36 #80 №526608 
>>526581
Всё что делает Stack, это предоставляет несколько методов list под другими именами.
push → append, pop → pop с сюрпризом, is_empty → __bool__ на велосипеде.
И при этом не является каким либо внешним интерфейсом.
Зачем?

Ну и конечно же классика:
> while not self.handlers.is_empty():
вместо for in.

> func = self.handlers.pop()
> func()
None object is not callable ;)

И в конце:
> def defer():
Все методы Closer оборачиваются в процедуры, а сам он как бы подразумевается синглтоном.
Зачем тогда он был нужен?
Аноним 06/08/15 Чтв 23:39:30 #81 №526635 
>>526581
> и как нужно было сделать в этих случаях?
Как то так:
http://pastebin.com/3d8psxYw
Аноним 07/08/15 Птн 00:22:02 #82 №526664 
Аноны, собираюсь обмазаться питоном, для руби например в качестве ОС лучше юзать юникс системы, а под питон? Вин или юникс?
Аноним 07/08/15 Птн 00:55:34 #83 №526676 
>>526664
Линукс/макось, да. Иначе будешь не язык учить а ебаться с проблемами.
Аноним 07/08/15 Птн 19:12:50 #84 №526916 
Почему нельзя выкинуть гил и сделать как в каком-нибудь Го? Все вокруг да около танцуем, асинхронность, мультипроцессинг, хуйта всякая. Четко и ясно давайте.
Аноним 07/08/15 Птн 19:16:57 #85 №526920 
>>526608
>None object is not callable ;)
Да, идея со своей реализацией стека была говнокодием. И ноны эти бессмысленны. В свое оправдание могу сказать, что подсмотрел ее в книге по алгоритмам и в пакете реализовал не подумав.
>Зачем тогда он был нужен?
Ради возможного расширения в будущем. Но в большей мере потому что я плохо ООП чувствую, где нужен класс, где нет. До этого на гошечке писал (да и продолжаю), а там классов нет, только стракты и методы к ним. Вот я и пытаюсь классы как простые стракты использовать. Зра, наверное.
В общем, переделаю все. Спасибо за критику.
Аноним 07/08/15 Птн 21:04:31 #86 №526964 
({a,b}, {e,d}, {a,e}, и так далее и тому подобное )
нужно объеденить пересекающиеся сеты
получить нужно вида {a,b,e,d,c}
проблема для меня в том, что первый и второй непосредственно не пересекаются, поэтому последовательным объединением решить не могу
Аноним 07/08/15 Птн 21:11:58 #87 №526968 
или вот еще вопрос:
если я в таком виде прохожу, скажем, по листу, то на самом деле я ведь прохожу не по самому листу а по копиям незаметно сделанным специально для итерации и таким образом не выходит сделать изменения собственно в оригинальном листе.
Все ли я верно понимаю и что делать?

for i in list_1:
....for j in list_1:
........if i==j:
............i+='abumudak' # у меня не работает
print(list_1) #выводит оригинальный лист без изменений
Аноним 07/08/15 Птн 21:36:30 #88 №526979 
>>526635
Тоже говнокод.
>>526920
Ну давай разберем по частям тобою написанное.
1. Стек уже есть в стандартной библиотеке - collections.deque. Настоящий стек, со всеми вставками-удалениями за O(1), как положено.
2. Вот ты импортируешь signal и дальше какие-то обработчики ставишь. Ты ведь понимаешь что ты полез в низкоуровневое байтоебство? В то самое, где например close может вернуть EINTR (а питон это выдаст как исключение InterruptedError) что означает "системный вызов был прерван сигналом, надо повторить", но при этом конкретно в случае close файловый дескриптор уже был закрыт поэтому несмотря на EINTR повторять его нельзя. Не надо пытаться хуярить системное программирование тебе пока.
3. Если код уже установил обработчик сигнала через signal, то ты его успешно проебал. signal.signal при вызове возвращает либо старый обработчик, либо SIG_IGN, т.е. что сигнал надо проигнорировать вообще, либо SIG_DFL, то есть стандартное поведение ОС, либо самый хуевый случай - None, что значит "старый обработчик был установлен сишным кодом и теперь хуй ты его вызовешь".
4. SIGHUP нет на Windows, поэтому ты получишь AttributeError во время инициализации.
5. Выходить с кодом ОК по SIGINT/SIGTERM так-то неправильно. Явно же не ок нихуя.
Аноним 07/08/15 Птн 21:50:32 #89 №526989 
>>526916
Потому что гил значительно упрощает интерпретатор. Честная мультитредность штука вычислительно дорогая, а питон итак медленный.
Ну и есть PyPy в котором пилят STM, там уже всё без гила. Субъективно работает действительно живее, раза в 2-3, за счёт jit, но заметны сборки мусора, в итоге что-то вроде жабы получится. Если не смущает привкус жабы, то жди @ помогай напиливать. Запиливали ещё stackless, вроде бы тоже избавление от гила, только на существующей кодобазе cpython, но что-то интерес потеряли. Наверное нахуй никому оно на самом деле не нужно. Всем срать на гил.
Аноним 07/08/15 Птн 23:23:55 #90 №527013 
>>526979
>1
В этом случае у обычный лист можно использовать. У его методов pop и append тоже временная сложность константная. А в начало мне записывать/удалять не нужно.
>3
Это так, но тут предполагается, что в коде нет других обработчиков сигналов. Можно это прописать в README.
>4
На виндоус я и не рассчитываю, не вижу смысла - это как писать версию мобильного предложения под виндофон.
>5
Выход из программы по Ctrl-C - это вполне обычно дело, разве нет? Много где используется именно с тем смыслом, что все ок.
>2
А вот это правда, и тут нечего сказать. Наверное, действительно зря полез в байтоебство, да еще и с питоном, который не для этого. Даже не знаю, что делать. Хочется написать что-нибудь более практическое, чем учебные реализации структур данных и алгоритмов, но ничего в голову не приходит. не борду же очередную пилить.
Аноним 07/08/15 Птн 23:36:38 #91 №527020 
>>526964
Тебе set([a,b]+[e,d]+[a,e]) нужно или что? Откуда там "с" вылезло в примере? Кака разница, последовательно они идут или нет? Или тебе не все вместе, а по группам их как-то объединить нужно?

>>526968
Никаких копий не создаётся. Дело в том, что string в питоне — immutable. И вот это i+="..." не изменяет элемент массива, а, фактически, присваивает локальной переменной "i" новое значение. i — это всего лишь ссылка на объект, а не сам объект. Поэтому когда ты пишешь "i = ...", ты не объект меняешь, а ссылку.
Будь у тебя в списке mutable элементы и соответстувющие функции в лупе, всё было бы норм:
l1 = [[1,2],[3,4]]
l2 = [[3,4],[4,5]]
for e1 in l1:
    for e2 in l2:
        if e1 == e2:
            e1.append(5)
print(l1) # -> [[1,2],[3,4,5]]
Аноним 07/08/15 Птн 23:55:57 #92 №527025 
>>526964
Реализуй https://en.wikipedia.org/wiki/Disjoint-set_data_structure очевидно же
Аноним 07/08/15 Птн 23:56:41 #93 №527026 
>>527013
>не борду же очередную пилить.
А почему бы и нет. Хороших борд ровно 0.
Аноним 07/08/15 Птн 23:58:44 #94 №527027 
Этот чувак очень интересно рассказывает. Офигеть.
http://www.youtube.com/watch?v=EiOglTERPEo
Аноним 08/08/15 Суб 01:19:23 #95 №527049 
Так, посоны. Вроде на asyncio как бы даже сервер делают. Значит ли это что он подходит для задачи "качать файлы из интернета и записывать их на диск"? Если да, то хоть какую подсказку дайте как записывать файлы. Как качать более менее понятно.
Аноним 08/08/15 Суб 01:30:33 #96 №527051 
>>527049
Ты думаешь твой интернет канал быстрее твоего диска?
Аноним 08/08/15 Суб 01:46:35 #97 №527055 
>>527049
А в чём трудность?
Аноним 08/08/15 Суб 01:51:36 #98 №527057 
>>527020
про циклы ясно

Нужно складвать пересекающиеся сеты до тех пор пока не останется пересекающихся
({a,b},{e,d}, {a,e}, {z,x})
в этом примере [0] и [2] пересеаются, если мы их сложим(допустим при этом удалив исходные сеты, хотя это не важно)
({a,b,e},{e,d},{z,x}) теперь пересекаются 0 и 1, после сложения:
({a,b,e,d}, {z,x})

Чтото мне подсказывает что это можно сделать в одну строчку, без ебли с итерациями.
Аноним 08/08/15 Суб 06:02:28 #99 №527075 
>>525512 (OP)
В связи со значительно улучшившейся работой замечательной проги avidemux в части потокового процессинга под прыщами http://www.avidemux.org/admWiki/doku.php?id=tutorial:batch_processing я решил перенести столь важный процесс, как кодирование порно из HD -> SD на рабочий сервачок с двумя ксеонами.

Когда-то давно я писал следующий быдлокод http://paste.ubuntu.com/12027254/

Суть его проста - выбираются из папки все видосы заданного формата (mp4) с высотой кадра больше 540 или шириной больше 700 пикселей, после чего к ним применяется фильтр пропорционального уменьшения в размер не превышаюсь обозначенных значений, а результат сохраняется в x264/mkv.

Быдлокод максимальный, т.к. в питоне я не понимал ничего ни тогда, ни сейчас. Помогите, пожалуйста реализовать следующее - вместо одного формата mp4, нужно чтобы скрипт обрабатывал за один запуск файлы из папки сразу 3х форматов - avi, mp4, wmv. Благо поддержка CLI теперь просто заебательская и никаких вылетов на середине вроде бы больше нету.

Заранее спасибо!
Аноним 08/08/15 Суб 06:06:23 #100 №527076 
Не туда ссылку кинул http://www.avidemux.org/admWiki/doku.php?id=tinypy:gui быстрофикс*
Аноним 08/08/15 Суб 07:12:05 #101 №527081 
>>527075
Без понятия, как именно там работает get_folder_content(), на самый просто способ, наверное:
exts = ['avi','mp4','wmv']
filelist = []
for ext in exts:
    filelist += get_folder_content(folder, ext)






И сразу возник вопрос и у меня. Если есть некая функция func, возвращающая список, то генератор список вернёт список списков:
my_list = [func(x) for x in some_list]
my_list = [[...],[...],...]
Можно ли как-нибудь в ту же одну строчку (т.е. не так, как я выше указал) сделать так, чтобы my_list был именно списком элементов всех списков, которые возвращались функцией func? Проще говоря, как реализовать то, что я посоветовал выше через генератор списков?
Аноним 08/08/15 Суб 07:25:51 #102 №527082 
>>527081
> exts = ['avi','mp4','wmv']
> filelist = []
> for ext in exts:
> filelist += get_folder_content(folder, ext)
Да, спасибо, заработало!
Аноним 08/08/15 Суб 10:45:00 #103 №527088 
>>527055
>>527051
Да я не совсем понимаю как результаты этих корутин получать. С самой библиотекой не разобрался еще.
Аноним 08/08/15 Суб 10:55:31 #104 №527089 
Visualize CPython development since 1990
https://www.youtube.com/watch?v=tZVG57xFwMk

Красивенько
Аноним 08/08/15 Суб 11:12:34 #105 №527091 
Посоны, четко модель для джанги определил или надо как-то по другому?
http://ideone.com/CgTBjo
Я думаю, из кода понятно что она делает.
Аноним 08/08/15 Суб 11:19:09 #106 №527095 
>>527091

Нахуй classmethod? Доп запрос жи.
А даже если через classmethod, то можно через filter и update, шобы один запрос был:
...filter(pk=pk).update(F('popularity')+value)
Аноним 08/08/15 Суб 11:20:31 #107 №527096 
>>527091
>F('popularity') + value
Аноним 08/08/15 Суб 11:21:14 #108 №527097 
>>527095
https://docs.djangoproject.com/en/1.7/ref/models/queries/#f-expressions
Аноним 08/08/15 Суб 11:27:26 #109 №527098 
>>527096
М?
Аноним 08/08/15 Суб 11:31:36 #110 №527100 
>>527098
У тебя скобка не там стоит.
Аноним 08/08/15 Суб 11:59:35 #111 №527104 
>>527097

Нахуя ты это линканул?

Там же дальше даже написано юзать update, чтобы не делать лишних запросов.
Аноним 08/08/15 Суб 12:13:45 #112 №527106 
>>527081
sum([func(x) for x in some_list],[])

from operator import add
reduce(add,[[1,2] for x in xrange(5)],[])
Аноним 08/08/15 Суб 12:54:06 #113 №527120 
>>527081
my_list = [y for x in some_list for y in func(x)]
Аноним 08/08/15 Суб 13:38:54 #114 №527130 
14390303342300.jpg
14390303342311.jpg
Аноним 08/08/15 Суб 13:40:13 #115 №527131 
14390304131750.png
>>527130
отступы
Аноним 08/08/15 Суб 13:40:22 #116 №527132 
>>527057
https://docs.python.org/3/library/stdtypes.html?highlight=set.union#set.union
Аноним 08/08/15 Суб 13:43:37 #117 №527133 
14390306170610.jpg
>>527131
Уже смещал "by_three()" вправо всю
Аноним 08/08/15 Суб 13:44:57 #118 №527134 
>>527133
Во-первых, на вторую строку посмотри, а во-вторых — нахуя ты весь код вправо один таб подвинул?
Аноним 08/08/15 Суб 13:47:59 #119 №527136 
Вот именно поэтому надо начинать с питона. Сразу шишек набил и понял пока нет как правильно. А иначе он бы до синьора писал как говно.
Аноним 08/08/15 Суб 13:55:50 #120 №527139 
14390313500820.jpg
>>527134
Спс. Вообще эти задротства с отступами чуть раздражают
Аноним 08/08/15 Суб 14:02:25 #121 №527143 
Как в джанге добавить файл в модель с полем FileField из памяти? Например, я помощью urllib скачал что нибудь прямо на сервере и хочу добавить в бд. Но если я сохраню файл на диске, то джанга еще его перетащит в свою MEDIA_ROOT директорию. А копировать сразу в джанговский путь не очень надежно как я считаю - можно же ошибиться и записать не туда и опять будет копирование. Нужна помощь.
Аноним 08/08/15 Суб 14:03:05 #122 №527144 
>>527100
Опа. Спасибо.
Аноним 08/08/15 Суб 14:15:56 #123 №527148 
>>527139
Ну и соси тогда, ёпту.
Аноним 08/08/15 Суб 14:18:12 #124 №527149 
>>527143
http://stackoverflow.com/questions/7894897/django-saving-an-image-manually-to-an-imagefield-field
http://stackoverflow.com/questions/3330677/a-stringio-like-class-that-extends-django-core-files-file
Вот как-то так. Вместо StringIO ты можешь подсунуть прямо urllib`ом открытый url, он тоже file-like object.
Аноним 08/08/15 Суб 14:22:34 #125 №527152 
>>527143
Но вообще сама джанга большие файлы при загрузке пишет в /tmp и оттуда уже перемещает в MEDIA_ROOT потом. Если она делает mv, и это одна файловая система это моментальная операция.
Вот ещё ссылка по теме
http://www.revsys.com/blog/2014/dec/03/loading-django-files-from-code/
Просто делай так как там, не парься.
Аноним 08/08/15 Суб 14:24:10 #126 №527153 
>>527143
И вот ещё ссылка по теме
https://docs.djangoproject.com/en/dev/ref/files/file/#the-contentfile-class
Аноним 08/08/15 Суб 14:26:02 #127 №527155 
>>527088
Ну так это и спрашивай тогда. Вот я тебе накалякал тут примерчик, может поможет: http://ideone.com/jWM9r9 (лучше скопируй и локально запускай, чтобы риалтайм — наглядней)
Time-consuming task, очевидно, будет скачивание файлов. Правда, почему бы не записывать в файлы сразу же в корутинах? Тогда и результат корутин не нужно получать. Там ещё asyncio.Future() для этого, в принципе, есть (включая проверку на завершение корутин, я так понимаю).
Аноним 08/08/15 Суб 14:30:25 #128 №527156 
14390334254630.jpg
>>527148
Нет, ты
Аноним 08/08/15 Суб 14:32:06 #129 №527157 
>>527156
Ну и зачем тогда тебе питон, который любят за отступы? Тебе в пхп тред какой-нибудь.
Аноним 08/08/15 Суб 15:00:34 #130 №527160 
>>527157
Насколько я знаю за хуево расставленные отступы даже пхпшников пиздят.
Аноним 08/08/15 Суб 15:01:41 #131 №527161 
>>527160
Но там на них можно забить хуи и говнокодить как душа пожелает!
Аноним 08/08/15 Суб 15:35:17 #132 №527168 
Хуесосам не нужны отступы и оформления кода вообще.
Аноним 08/08/15 Суб 16:06:51 #133 №527178 
>>525767
Шёл бы ты отсюда, петушок.
Аноним 08/08/15 Суб 16:13:34 #134 №527181 
>>527139
Ёбушки-воробушки. Никто в здравом уме сам отступы не расставляет. Будешь каждый раз таб херачить или 4 пробела считать что ли? Не нужно быть таким упоротым. Возьми нормальный редактор кода, например Sublime Text. Он сам будет отступы расставлять и не нужно будет париться вообще на счёт их.
Аноним 08/08/15 Суб 17:19:14 #135 №527205 
14390435540240.png
>>527157
Или в рубитред.
Аноним 08/08/15 Суб 17:47:28 #136 №527220 
>>527181
Или PyCharm.
Аноним 08/08/15 Суб 17:48:19 #137 №527221 
метод это функция класса
вот че надумал
Аноним 08/08/15 Суб 20:32:09 #138 №527278 
>>527149
>>527152
>>527153
>>527155
Спасибо, ребята.
Аноним 08/08/15 Суб 21:06:19 #139 №527299 
>>527278
Пошёл нахуй!
Аноним 09/08/15 Вск 02:41:24 #140 №527376 
>>527132
Блять, спасибо что не поленился.
То что ты не понял вопрос полностью компенсируется твоей благонамеренностью.
Еще раз, спасибо блять.
Аноним 09/08/15 Вск 09:52:24 #141 №527392 
>>527057
>Чтото мне подсказывает что это можно сделать в одну строчку, без ебли с итерациями.
Обоснуй @ докажи. Рассмотри частный случай, когда изначально все множества состоят из 2 элементов. По сути тогда они задают последовательность объединений для системы непересекающихся множеств, которая нихуя в одну строчку не реализуется.
Аноним 09/08/15 Вск 14:20:21 #142 №527441 
Анон, какой линукс начинающему питонисту ставить? Выбираю между Debian и Ubuntu. Или разницы особой нет?
Аноним 09/08/15 Вск 14:21:06 #143 №527442 
>>527441
Однозначно убунту, епта.
Аноним 09/08/15 Вск 14:23:09 #144 №527444 
>>527441
Разница между ними стремится к нулю. Ну убунта в ппа разве что умеет. И апстарт вместо systemd
Аноним 09/08/15 Вск 17:09:08 #145 №527502 
>>527441
>Выбираю между древним говном мамонта и древним говном мамонта из ветки unstable.
Ставь арч или федору.
Аноним 09/08/15 Вск 18:08:51 #146 №527532 
>>527441
Десяточку ставь
Аноним 09/08/15 Вск 20:09:32 #147 №527579 
В джанге пишу db_index=True, но смотрю базу в другой программе и она пишет, что только один индекс на айди. Почему так? На sqlite у меня все пока.
Алсо, unique=True подразумевает создание индекса?
Аноним 09/08/15 Вск 20:15:49 #148 №527583 
>>527579
>Note that when unique is True, you don’t need to specify db_index, because unique implies the creation of an index.

>Почему так?
Ты db_index добавил уже после того как syncdb делал и таблица в базе была создана? Может тебе миграцию сделать?

>sqlite
не советую ей пользоваться там многое эмулируется в коде потому что таких фич нет в базе данных. например целостность всяких foreignkey эмулируется в коде.
Аноним 09/08/15 Вск 20:16:34 #149 №527584 
>>527579
https://docs.djangoproject.com/en/1.8/ref/django-admin/#django-admin-sqlindexes
Аноним 09/08/15 Вск 23:05:56 #150 №527648 
Можете, пожалуйста, подсказать по правилам хорошего кода? Вот у меня есть класс, часть полей инициализируется в __init__, часть в каких-то других функциях.

Pycharm грит, что плохо брать и не упоминать поля в __init__, а создавать их в другом месте. В принципе, замечание логичное, хочется, чтобы все поля были в одном месте.

Инициализировал их None. Но теперь проблема в том, что каким-то полям я присваиваю callable-объект, а потом Pycharm начинает ругаться на "fieldName is not callable", что меня не устраивает.

Так, все же, как принято инициализировать поля объекта класса, а?
Аноним 09/08/15 Вск 23:16:10 #151 №527654 
>>527648
> Pycharm грит, что плохо брать и не упоминать поля в __init__,
Почему?
Аноним 09/08/15 Вск 23:33:29 #152 №527657 
>>527654
Ну а вот так он говорит, я откуда знаю?
Ну обосновать такие замечания я могу,
>В принципе, замечание логичное, хочется, чтобы все поля были в одном месте.
Но вопрос как раз в том, как это обычно делают
Аноним 09/08/15 Вск 23:34:39 #153 №527658 
>>527502
Про что несёшь?! Вообще охуеть!
Аноним 09/08/15 Вск 23:38:58 #154 №527660 
>>527657
Нихуя не понятно без твоего кода.
Зачем тебе в какой-то функции прописывать callable объект как поле класса?
Аноним 10/08/15 Пнд 00:26:20 #155 №527670 
>>527441
openSUSE ставь.
Аноним 10/08/15 Пнд 09:26:11 #156 №527743 
>>527660
Ну, грубо говоря, есть библиотека (называется theano), которая берет какие-то символьные выражения, оптимизирует их и компилирует в машинный код. Возвращает callable-объект. Именно этот объект у меня хранится внутри экземпляра моего класса. Причем так получается, что нельзя эту функцию построить на этапе инициализации объекта ну можно, конечно, но выглядеть это будет дико

Я понимаю, что полностью подчиняться требованиям IDE не очень правильно, но ведь наверняка все такие предупреждения не просто так же
Аноним 10/08/15 Пнд 09:51:35 #157 №527746 
>>527648

Потому что все методы твоего объекта можно вызвать снаружи. Где гарантии, что при вызове какого-то из методов был вызван другой, в котором была инициализация поля?

В скрытые методы инициализацию подкапотную вынеси и пучарм перестанет пиздеть, да и сам красавчиком станешь баразарю
Аноним 10/08/15 Пнд 10:56:29 #158 №527753 
>>527746
Что ты имеешь в виду под подкапотной инициализацией?
Ну, грубо говоря, у меня вот есть нейронная сеть, есть слои нейронной сети, для того, чтобы слой полностью проинициализировать, мне его надо подключить к предыдущему.

Я могу сделать что-то типа Layer3(Layer2(Layer1))), но это выглядит как-то убого. Проще и красивей выглядит такая штука:
network.add(Layer1)
network.add(Layer2)
network.add(Layer3)
network.build(), внутри этой вот фунции я беру, итерируюсь по слоям, вызываю у каждого слоя метод connect, передавая ему предыдущий.
Аноним 10/08/15 Пнд 11:33:59 #159 №527760 
>>527753
>Проще и красивей выглядит такая штука:
>4 строки хуиты вместо одной простой
Мда.
Аноним 10/08/15 Пнд 11:43:19 #160 №527765 
>>527760
Ага, а теперь у меня будет 10 слоев, охуенный многострочник получится. Ах, да, я же еще и параметры слоям передаю, вообще заебись будет
Аноним 10/08/15 Пнд 11:47:03 #161 №527766 
>>527583
>>527584
Спасибо, разобрался.
Аноним 10/08/15 Пнд 13:34:45 #162 №527810 
Понадобилось тут формочек нарожать (пока вижуал студию качается), решил попробовать этот ваш куте. И вот вопрос - а чем, собственно, всякие PySide и PyQt отличаются-то, что друг на друга люди срут? Из того, что у видел за 10 минут - разница в импорте библотек, а дальше всё одно и тоже: заменил from PyQt5.QtWidget import звёздочка на from PySide.QtGui import звёздочка и пример спокойно запустился.
Так вот, если не видно разницы, то зачем платить больше думать над выбором?
sageАноним 10/08/15 Пнд 14:00:25 #163 №527814 
>>527765
layer1 = Layer1(parametry1)
...
layern = LayerN(layerNMinus1, parametryN)
Нет, не хочу, хочу делать абстрактные фабрики композиций слоев.
Аноним 10/08/15 Пнд 14:07:14 #164 №527816 
>>527810
PySide вперде с 4-й версией Qt. PyQt шагает в ногу с самим Qt, плюс развивает инфраструктуру (pyqtdeploy, всякие обвесы на qt).
Аноним 10/08/15 Пнд 15:51:22 #165 №527856 
Подскажите годной литературы уровня ммммаксимум эксперт по самой современной версии питона (3+)
Если конкретнее, хочу уметь следующие темы:
√ то, что должен знать каждый питонист
√ все "особо продвинутые" хаки и метапрограммирование
√ как максимально удобно писать в функциональном стиле
√ маст-хев библиотеки, в том числе встроенные

желательно по-минимуму воды и совсем нубской инфы для тех, кто изучает питон как первый язык — это не мой случай.
заранее спасибо :з
Аноним 10/08/15 Пнд 16:10:23 #166 №527862 
Аноны, а вы дадите рекомендации и критику, если закину чисто учебный проект на Flask?
Аноним 10/08/15 Пнд 16:15:31 #167 №527866 
>>527856
кукбук.
Аноним 10/08/15 Пнд 16:17:08 #168 №527867 
>>527866
который?
Аноним 10/08/15 Пнд 16:18:22 #169 №527868 
>>527867
Самый новый, очевидно же.
Аноним 10/08/15 Пнд 16:24:24 #170 №527873 
>>527868
а что это?
Аноним 10/08/15 Пнд 16:33:57 #171 №527880 
>>527873
http://bfy.tw/1EMl
Аноним 10/08/15 Пнд 16:35:01 #172 №527882 
>>527880
Я не перехожу по сокращённым ссылкам. Ищи других дураков™
Аноним 10/08/15 Пнд 16:37:55 #173 №527884 
>>525512 (OP)
>2015
>питон
Аноним 10/08/15 Пнд 16:38:18 #174 №527885 
>>527882
Ну и соси тогда, ёпта!
Аноним 10/08/15 Пнд 16:38:45 #175 №527886 
>>527885
Нет, ты!
Аноним 10/08/15 Пнд 19:14:23 #176 №527945 
>Какой фреймворк юзаете для обвязки rest api? Почему? Преимущества?

Дауны из джяваскрипт треда так и не ответили.
Аноним 10/08/15 Пнд 19:50:24 #177 №527958 
>>527945
django rest вроде норм. потому что джанга.
есть ещё на flask
Аноним 10/08/15 Пнд 20:02:47 #178 №527960 
Аноны, есть какой-нибудь годный и удобный сайт с задачками?
Аноним 10/08/15 Пнд 20:04:54 #179 №527962 
>>527960
https://www.hackerrank.com/domains
http://www.checkio.org/
Аноним 10/08/15 Пнд 20:05:22 #180 №527965 
>>527960
А project euler ещё там интересные задачки.
Аноним 10/08/15 Пнд 20:23:14 #181 №527972 
>>527962
>>527965
Дай Бог здоровья.
Аноним 10/08/15 Пнд 20:46:41 #182 №527982 
>>527392
>Обоснуй @ докажи
очень может быть, да.
Ну, если так - тоже результат, буду делать как делал.
Спасибо.
Аноним 10/08/15 Пнд 23:41:55 #183 №528070 
>>527958
А на фронтенде че? Который этот апи и хавает
Аноним 10/08/15 Пнд 23:52:43 #184 №528082 
>>528070
Это вопрос не в этот тред я думаю. И вкусовщина к тому же.
http://knockoutjs.com/
http://backbonejs.org/
http://facebook.github.io/react/
Можно и ручками на js и через jquery
Аноним 10/08/15 Пнд 23:55:12 #185 №528085 
>>528070
http://blog.kevinastone.com/getting-started-with-django-rest-framework-and-angularjs.html
Вот тут angularjs используют.
Аноним 10/08/15 Пнд 23:59:23 #186 №528088 
>>525512 (OP)
http://jobs.42coffeecups.com/

Кто слышал?
Аноним 11/08/15 Втр 00:47:47 #187 №528108 
>>528088
Всё норм, посаны с доу рикаминдуют. Даже такую ссылку вкидывали.
https://www.facebook.com/notes/andrey-khavryuchenko/how-to-prepare-for-development-carreer-in-42-coffee-cups/10153470495568413?pnref=lhc
Аноним 11/08/15 Втр 00:52:26 #188 №528109 
>>528108
фу блять.
гляди на кого ссылку то кидаешь
Аноним 11/08/15 Втр 01:04:43 #189 №528112 
14392442834000.jpg
>>528109
Лол
Аноним 11/08/15 Втр 01:07:29 #190 №528113 
Ребят, я написал штуку которая берёт две веб страницы, в них ищет определённые теги и если они есть выводит сообщение. Все бы хорошо, но оно очень медленное, если к этим двум линкам добавить ещё пять то результата я дождусь примерно через 19 секунд. Как оптимизировать?
Код: http://pastebin.com/neyqEnRZ
Аноним 11/08/15 Втр 01:12:25 #191 №528114 
>>528113
Треды
Аноним 11/08/15 Втр 01:19:37 #192 №528115 
14392451779390.png
питон у велкоро на телефоне
Аноним 11/08/15 Втр 01:28:34 #193 №528118 
>>528109
Так тебе работа или путенвсехпереиграл с долларом по 80 зимой?
Этот хохол анальный учредитель компании куда ты хочешь пойти работать, лол.
Аноним 11/08/15 Втр 01:30:29 #194 №528119 
>>528118
Зачем работать на хохла тем более удаленно?
Хохлы ражные будут мало платить, а напрягать дофига.
Перепродают твою работу на аутсорс наверняка всё равно, потому что своих айти проектов у хохлов нет.
Так почему бы напрямую на пиндосов не работать? Тем более знание ангельского и у хохла требуется.
Аноним 11/08/15 Втр 01:30:39 #195 №528120 
>>528118
Почему анальный?
Аноним 11/08/15 Втр 01:36:00 #196 №528121 
>>528119
Нахуя ты меня об этом спрашиваешь? Дебила выше спроси. Мне в целом похуй на кого работать, хоть на ИГИЛ, главное чтобы платили хорошо.

>>528120
Потому что учредитель и будет ебать тебя в анус. НОЧАЛЬНЕК
Аноним 11/08/15 Втр 03:17:10 #197 №528141 
>>528118
>куда ты хочешь пойти работать, лол.
если я тебе молочко с супом сфоткаю, твоя попка выдержит?
Или ты просто воспримешь критику и начнешь адекватно подписывать ссылки, если они токсичны?
Аноним 11/08/15 Втр 03:36:17 #198 №528146 
>>528141
Я тебя нихуя не понел. Какое молочко, какой суп, ты ебанутый? Можешь что угодно фоткать, я разрешаю.
Токсичные ссылки у него. Реддитодебил, это ты?
sageАноним 11/08/15 Втр 03:40:13 #199 №528147 
14392536134660.jpg
>если я тебе молочко с супом сфоткаю, твоя попка выдержит?
Или ты просто воспримешь критику и начнешь адекватно подписывать ссылки, если они токсичны?

Ты сайтом не ошибся?
Аноним 11/08/15 Втр 04:22:06 #200 №528151 
>>528147
Может вы разделом ошиблись?
Аноним 11/08/15 Втр 06:15:35 #201 №528159 
>>528114
Попробую, спасибо.
Аноним 11/08/15 Втр 07:20:27 #202 №528164 
>>528159
https://github.com/madisonmay/Tomorrow
Аноним 11/08/15 Втр 10:48:30 #203 №528194 
>>528114
>ио
>Треды
>2015
>>528113
https://docs.python.org/3/library/asyncio.html
Аноним 11/08/15 Втр 10:55:35 #204 №528195 
>>528194
Спасибо, но я пока на 2 ветке сижу, как освою её на приличном уровне перелезу на 3.
Аноним 11/08/15 Втр 11:04:14 #205 №528197 
>>528194
Для его задачи треды норм. Да чего уж там скорее всего тупо запускать несколько процессов питона норм. Нахуй выебываться.
Аноним 11/08/15 Втр 13:01:01 #206 №528239 
>>528195
Сразу 3 осваивай, делать нехуй что ли так распылятся?
Аноним 11/08/15 Втр 15:24:48 #207 №528334 
>>528195
Кто тебе подсказал такой глупостью заниматсья?
Аноним 11/08/15 Втр 18:26:58 #208 №528501 
14393068182300.png
Вопрос по Django 1.8. Начал осваивать туторы на оф.сайте, делаю всё, как там расписано, но после %переменная%.save() получаю это. Как пофиксить?
Аноним 11/08/15 Втр 18:47:10 #209 №528510 
14393080304170.jpg
>>528501
Вышел из шелла, снова зашёл, проделал те же самые действия. Всё исправилось, хотя я так пытался и раньше это решить.
Аноним 11/08/15 Втр 18:48:05 #210 №528511 
>>528510
Спермопроблемы
Аноним 11/08/15 Втр 21:29:47 #211 №528599 
14393177874170.jpg
14393177874171.jpg
Бля
Аноним 11/08/15 Втр 21:48:19 #212 №528606 
>>528599
Я в потере, подскажите
двойные кавычки на одинарные менял
Аноним 11/08/15 Втр 21:57:47 #213 №528608 
14393194673160.jpg
Что за херня? Убрал скобки квадратные и работает. А вот выше и с квадратными скобками норм...
Аноним 11/08/15 Втр 22:00:11 #214 №528609 
>>528606

> двойные кавычки на одинарные менял

дурной что ли?

seashel != seashell
Аноним 11/08/15 Втр 22:01:48 #215 №528611 
>>528608

> Убрал скобки квадратные и работает

a, b, c == (a, b, c) == tuple([a, b, c])

Видать в задании срать - кортеж это или список
Аноним 11/08/15 Втр 23:03:56 #216 №528647 
>>528239
>>528334
У школьников батхерт что они выучили троечку потому что ЦЫФЕРКАЛЬ БiЛЬШЕ а её никто в продакшене не использует и не собирается.
Её только в уроках для студентоты освоили.
Аноним 12/08/15 Срд 00:45:56 #217 №528679 
>>528647
Использую 3 в продакшене, где твой дьявол теперь?!
Аноним 12/08/15 Срд 00:47:08 #218 №528680 
>>528679
Твой локалхост с бложиком это не продакшн))
Аноним 12/08/15 Срд 00:48:51 #219 №528681 
>>528680
Сарян, мимо.
Аноним 12/08/15 Срд 00:49:43 #220 №528682 
>>528647
Что твой продакшын легаси будет делать, когда у второй ветки кончится поддержка? Четко и ясно давай
Аноним 12/08/15 Срд 00:53:57 #221 №528684 
>>528682
Не кончится. Секьюрити фиксы будут делать.
Аноним 12/08/15 Срд 00:56:19 #222 №528685 
На самом деле этот «спор» между версиями просто раздут дибилами, которые не могут в питон. Ведь всем очевидно, что третий лучше второго по дизайну.
Аноним 12/08/15 Срд 01:03:12 #223 №528688 
>>525852
http://scanlibs.com/python-sozdanie-prilozheniy/

Две секунды в гугле. ДВЕ, КАРЛ!
Аноним 12/08/15 Срд 01:15:10 #224 №528692 
>>528647
Да что ж вы так схватились за эту двойку? Какие в ней выгоды?
Аноним 12/08/15 Срд 01:17:01 #225 №528693 
>>528684
Вообще-то только их сейчас и делают:
>Python 2.7.10 is a bug fix release of the Python 2.7.x series.
>Python 2.7.9 is a bugfix version for the Python 2.7 release series.
>Python 2.7.8 This release includes regression and security fixes over 2.7.7
>Python 2.7.7 This is a regularly scheduled 2.7 series bugfix and includes numerous bugfixes over 2.7.6.
>Python 2.7.6 was released on November 10, 2013. This is a 2.7 series bugfix release.
>Python 2.7.5 was released on May 15, 2013. This is a 2.7 series bugfix release.
>Python 2.7.4 was released on April 6, 2013. This is a 2.7 series bugfix release.
>Python 2.7.3 was released on April 9, 2012. 2.7.3 includes fixes for several reported security issues in 2.7.2

а закончат в 2020:
>Being the last of the 2.x series, 2.7 will have an extended period of maintenance. The current plan is to support it for at least 10 years from the initial 2.7 release. This means there will be bugfix releases until 2020.
>This means there will be bugfix releases until 2020.

Никаких фиксов после 2020 не будет. Вообще.

Аноним 12/08/15 Срд 01:18:48 #226 №528694 
>>528693
Недавно бэкпортировали измнения для улучшения производительности
https://lwn.net/Articles/646888/
Аноним 12/08/15 Срд 01:22:18 #227 №528695 
>>528694
Как видишь они считают это bugfix-release. Которые прекратятся после 2020.
Но ты с темы не утекай. После 2020 делать то что со своим легаси будешь?
Аноним 12/08/15 Срд 01:36:36 #228 №528698 
>>528692
Да никаких, просто некоторые лелки вдолбили себе в голову бред уровня "говно мамонта = багов нет" и ставят на сервера всякие дебиан-стейблы с центосями. Как будто баги выветрились за 10 лет.
Аноним 12/08/15 Срд 01:39:41 #229 №528699 
>>528695
Ты до 2020 не доживешь всё равно пидораш
Аноним 12/08/15 Срд 01:40:17 #230 №528700 
>>528698
Дебиан с центосями тоже кстати переходят на третий. В одном из прошлых тредов обсуждали.
Аноним 12/08/15 Срд 01:41:08 #231 №528701 
>>528699
Ясн
Аноним 12/08/15 Срд 01:43:36 #232 №528702 
14393330167980.png
>>528698
> Да никаких
Многие библиотеки до сих пор только под двойку. Где мой twister?
Даже из всяких мелких примочек для джанги только треть работает под тройкой, хотя их-то легко было бы портировать. Про pypi я вообще молчу.

Может быть новый проект я бы и начал на тройке, может быть. Но старые никто на тройку переводить не будет просто ради тройки.
>сервера всякие дебиан-стейблы с центосями
Ты нихуя не шаришь, там стабильная версия софта, так что при обновлении у тебя нихуя не сломается из-за несовместимых api и прочей поеботы. Но секьюрити фиксы все туда портируются, у редхата этим занимается специальные люди.
Аноним 12/08/15 Срд 01:55:34 #233 №528707 
>>528702
>Но старые никто на тройку переводить не будет просто ради тройки.
Как и никто не будет портировать новые фичи из тройки в двойку. А потом и на багфиксы забьют.
Вот и думай кто больше соснул, твое легаси без языка, или язык без легаси.
Аноним 12/08/15 Срд 01:59:35 #234 №528709 
>>528707
Я просто подожду пока появиться что-то пиздатое на python3 что будет оправдывать переход. И пока больше либ поддянеться.
Пока что это только asyncio, если делать проект с ним, то конечно есть смысл тройку использовать.
Аноним 12/08/15 Срд 02:38:11 #235 №528713 
>>528702
Откуда такая уверенность что множество Py3 пакаджей полностью включено в Py2? Немало нового и интересного запилено уже начиная с тех же asyncio и aiohttp.
Аноним 12/08/15 Срд 06:19:17 #236 №528738 
>>528702
Вроде как всеми силами переводят. Вот из последнего ченджлога
>10+ modules ported to Python 3 (see NEWS for specifics)
Аноним 12/08/15 Срд 06:46:08 #237 №528742 
Хорошая у вас шапка треда, вот только там не сказано, как мне совсем нюфагу стартануть, я не про книги и прочее, я про то что мне нужно скачать сам питон с оффсайта, установить его? как в нем работать дальше, что, где. Вот это все.

Аноним 12/08/15 Срд 06:47:16 #238 №528743 
Блин что за сраный акцент у него австралийский чтоли. Еле понятно что он бормочет
https://www.youtube.com/watch?v=UgcC_bY4rPg
Аноним 12/08/15 Срд 06:53:23 #239 №528745 
>>528742
В линуксе он установлен по умолчанию.
В венде да скачать с python.org запускаешь idle и можешь вводить команды и сразу видеть результат.
Можешь поставить какую-нить IDE типа pycharm потом вбивать там код и запускать прям оттуда.
Аноним 12/08/15 Срд 06:54:46 #240 №528746 
>>528742
Потом там есть ссылки на всякие онлайн курсы, в них и объяснено что делать ньюфагу. И вроде там вообще ничего ставить не надо, можно вбивать код по мере обучения в окне браузера прям.
Аноним 12/08/15 Срд 06:55:52 #241 №528747 
>>528742
Вот ещё например
https://winpython.github.io/
Аноним 12/08/15 Срд 07:10:08 #242 №528749 
>>528745
>>528746
>>528747

Спасибо ребят. Еще такой вопрос, все эти курсы наверняка с разным уровнем вхождения(или нет) есть совет, какой подойдет для человека который никак вообще не связан с программированием?

Я прсто инженером работаю, и на теперешнем месте у меня довольно много свободного времени, вот я и подумал - почему бы и нет.
Аноним 12/08/15 Срд 07:21:50 #243 №528753 
>>528749
Я сам ими не пользоался так что не знаю, но поидее они очень простые. Единственно анлийский надо знать.
Аноним 12/08/15 Срд 07:29:17 #244 №528754 
>>528753
Я знаю его явно не на достаточном уровне.
Аноним 12/08/15 Срд 10:47:28 #245 №528782 
14393656482500.png
Ребят, я вот этот вот нюфажик >>528742 >>528749 >>528754

Стартанул, по урокам, делаю хелловорлды естественно...

Обратите внимание на скрин.
Стандартный шелл, писать черным на белом у меня вытекут глаза, поменял фон на серый, но у текста все равно белый фон - выглядит пиздецово, читать неудобно. В нотпаде все ок, тут и говорить нечего, но из нотпада я не могуили могу? запускать свой код сразу, как я это делаю в шеле.
Задача:
Или напердолить шелл до удобоваримого состояния, или я даже незнаю что. Нужно чтоб глаза не уставали, и выглядило все приятно для глаз. Если это будет что то стороннее, чтоб синтаксис подсвечивался.. ну вы думаю поняли о чем я. Скорее всего конечно, делать что то с шелом, потому что нужна возможность запускать код сразу же.
Аноним 12/08/15 Срд 10:56:03 #246 №528785 
>>528782
Поставь какой-нить редактор который умеет запускать питон.
https://pythonhosted.org/spyder/installation.html#installing-on-windows-xp-vista-7-8
например
Аноним 12/08/15 Срд 11:00:18 #247 №528788 
>>528782
Вот ещё вариант
поставь http://sourceforge.net/projects/console/
И запусти python.exe из c:\python или где он у тебя там.
Можешь конечно в обычном cmd.exe запустить ,но эта console вроде лучше.
Аноним 12/08/15 Срд 11:00:24 #248 №528789 
>>528785
Спасибо, посмотрю, но ты мне лучше скажи что мне вообще нужно, как это называется, что мне гуглить - дальше я думаю сам разберусь.
Аноним 12/08/15 Срд 11:10:35 #249 №528794 
>>528702
>Где мой twister?
Твистер?
>Даже из всяких мелких примочек для джанги только треть работает под тройкой, хотя их-то легко было бы портировать
Это все аргументы того же уровня, что и когда с шиндовс 7 с хп переходить не хотели. Мол, "пок-пок мой кейлоггер от васяна на 7 не заработает". Не знаю как там на джанго пакаджес, но на pypi любой хуй может свою лабу1 загрузить, в результате 90% пакетов абсолютно бесполезны. Я уж не говорю о том что если либу даже не пытаются портировать на питон 3 то она скорее всего не поддерживается совсем, а использовать неподдерживающиеся либы это идея невероятно хуевая.
Аноним 12/08/15 Срд 11:12:14 #250 №528795 
>>528794
Ладно убедил. В 2020 начну переползать на 3-й.
Аноним 12/08/15 Срд 11:18:04 #251 №528796 
14393674843180.png
>>528785
Лол, отличное начало!
Аноним 12/08/15 Срд 11:23:08 #252 №528801 
>>528796
Бери вот это http://www.jetbrains.com/pycharm/
Аноним 12/08/15 Срд 11:26:29 #253 №528808 
>>528801
Кстати в чем отличие комьюнити и полной версии?
Можно за полную версию не платить? Бесконечный триал как-нить себе устроить например?
Аноним 12/08/15 Срд 11:27:43 #254 №528809 
>>528808

А Зачем тебе полная версия то? Мне и комюнити с головой хватает.
Аноним 12/08/15 Срд 11:28:49 #255 №528810 
>>528809
Да мне вроде тоже хватает.
Я вообще с джангой в основном работаю, вот там пишут что какая-то улучшенная поддержка джанги, но в чем?
Надо попробовать будет триал всё-таки.
Аноним 12/08/15 Срд 13:20:14 #256 №528880 
>>528810

Автокомплит специфичных для джанги хуевин. Например, параметры в class Meta моделей, модели в FK и M2M, если стрингой добавляешь и т.п.

Ну и с орм попизже интеграция. Мб в шаблонах тоже че-то есть (комьюнити не пользовался особо).
Аноним 12/08/15 Срд 13:28:07 #257 №528886 
В кумунити версион, отключены тонкие настройки интерфейса, размер шрифта к примеру не поменять, если буквы для вас слишком мелкие.
Аноним 12/08/15 Срд 13:32:25 #258 №528890 
14393755453710.png
>>528886
> размер шрифта к примеру не поменять
Да ладно
Аноним 12/08/15 Срд 13:33:11 #259 №528891 
>>528890
А теперь наведи мышку и напечатай свою цифру.
Аноним 12/08/15 Срд 13:36:02 #260 №528892 
14393757627520.png
>>528886
>>528891

Дваждую, у мня оно вообще серым и не активно. Всегда так было.
Аноним 12/08/15 Срд 13:39:53 #261 №528896 
14393759937740.png
>>528891
Ну ввел
Аноним 12/08/15 Срд 13:40:45 #262 №528897 

Как в PyCharm применять кастомные темы вот отсюда
http://www.ideacolorthemes.org/home/
Аноним 12/08/15 Срд 13:47:40 #263 №528900 
>>528897
> Select «File» → «Import Setting» from the main menu and follow the instructions. After the IDE restarted go to the Preferences, expand «Editor» → «Colors and fonts» tab and choose the installed theme.
В глаза долбишься?
Аноним 12/08/15 Срд 13:50:33 #264 №528901 
>>528900
Могу видео записать, импортирует как надо, само идет в перезагрузку а потом кастомной темы в Editor» → «Colors and fonts
НЕТ
Аноним 12/08/15 Срд 14:43:38 #265 №528916 
>>528901
У меня есть, я 2 темы оттуда поставил.
И шрифты и размер шрифта у меня выберается.
А какая версия, 4.5.3?
Аноним 12/08/15 Срд 14:59:35 #266 №528920 
>>528916
> А какая версия, 4.5.3?

Да

Аноним 12/08/15 Срд 15:24:04 #267 №528930 
>>528782
PyCharm
Аноним 12/08/15 Срд 15:24:40 #268 №528931 
14393822803790.png
Аноним 12/08/15 Срд 15:27:16 #269 №528934 
>>528931
Не стоит называть переменную sum, потому что есть встроенная функция sum и ты её переопределяешь тем самым. Это может сломать код.
Аноним 12/08/15 Срд 15:28:47 #270 №528935 
>>528609
Ох сука, вот это я объебался с невнимательностью тогда. Добра тебе
Аноним 12/08/15 Срд 15:36:04 #271 №528936 
14393829645700.png
Мда, что же делать, оно просто не активно и нажать туда нельзя. Поставил только что с офф.сайта.
Аноним 12/08/15 Срд 15:40:16 #272 №528940 
>>528936
короче https://www.jetbrains.com/pycharm/help/configuring-colors-and-fonts.html
Надо схему свою создать
>click Save as button, and type the new scheme name in the dialog box.
После этого можно будет менять шрифт.
Аноним 12/08/15 Срд 15:45:17 #273 №528943 
>>528934
Норм все.
Аноним 12/08/15 Срд 15:52:52 #274 №528949 
Перевели какую-то книгу по питону
http://vk.com/wall-97616552_223
Аноним 12/08/15 Срд 16:08:14 #275 №528960 
>>528949
Как бы я уже давно добавил ее.
https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Аноним 12/08/15 Срд 17:12:06 #276 №529012 
>>528949
В книге охватываются базовые вещи, хватит ли этого чтобы потом перейти к изучению фласка?
Аноним 12/08/15 Срд 17:14:47 #277 №529014 
>>529012
Мне хватило прочитать туториал по питон и джанге чтобы что-то начать лепить на них. Потом уже книгу почитал по питон чтобы детальней вникнуть.
Правда я знал php.
Аноним 12/08/15 Срд 18:06:56 #278 №529052 
>>529014
Хз, я слоупок.
Аноним 12/08/15 Срд 18:07:51 #279 №529053 
>>529052
Хотя кое-какое знание РНР имеется, что такое MVC и прочие вещи, но ничего серьезного на нем не делал.
Аноним 13/08/15 Чтв 10:47:19 #280 №529343 
http://ideone.com/d9gn7h

Пытаюсь к словарику создать второй словарик, в котором бы values из первого словарика стали key, а key - соответственно values.

Столкнулся с такой хуитой, что в первом словарике 38 слов, а второй словарик на последнем прогоне содержит 37 слов. Явно, что какая-то шляпа связана с тем, что индексация идет с нуля.

Но все равно не пойму причину:
В последнем прогоне len 37, это значит порядковый номер икса 36. Последний возможный порядковый номер икса 37, какого хуя оно не идет на еще один круг x += 1?
Аноним 13/08/15 Чтв 10:52:52 #281 №529347 
>>529343
http://stackoverflow.com/questions/483666/python-reverse-inverse-a-mapping
Аноним 13/08/15 Чтв 10:59:10 #282 №529351 
>>529347
Это классно, но что с моим кодом?
Аноним 13/08/15 Чтв 11:06:14 #283 №529353 
>>529347
Алсо, с инвертмапой тоже какая-то жидохуита творится.

len(inv_map) 37!
А первый словарик len 38.
http://ideone.com/MrbsP1
Аноним 13/08/15 Чтв 11:29:09 #284 №529360 
14394545496330.png
>>529353
Два одинаковых иероглифа.
Аноним 13/08/15 Чтв 11:38:58 #285 №529366 
>>529360
Блджад, и точно. Импортные коллекции, значит. Удобно, я не знал про эту шляпу. Спасибо, анон.



Аноним 13/08/15 Чтв 15:46:06 #286 №529469 
На последней дырке проблема вылезла
http://ideone.com/7oKxcF

Рандомно генерит key из словарика, загадывает загадку. Но проверку равенства инпутного пользователем m и d[key] код фейлит. Пробовал вариант if m in d[key], if m == d[key], if d[key] == m. Нихуя.
Аноним 13/08/15 Чтв 16:52:17 #287 №529524 
>>529469
random.sample возвращает массив.

Вообще, питон тебе об этом явно и сообщает, говоря "TypeError: unhashable type: 'list'"
Аноним 13/08/15 Чтв 16:52:38 #288 №529525 
>>529524
В смысле, лист возвращает. А то налетят.
Аноним 13/08/15 Чтв 17:35:27 #289 №529560 
>>529524
>>529525
А так?
https://ideone.com/G6SwVJ

Конвертировал лист в стр через n = r[0]
Аноним 13/08/15 Чтв 19:22:11 #290 №529610 
>>529560
Ну и в чём вопрос? Работает же. Оче вырвиглазно.
Аноним 13/08/15 Чтв 19:27:17 #291 №529612 
>>529610
чтобработало
Аноним 13/08/15 Чтв 19:30:28 #292 №529613 
>>529610
>Оче вырвиглазно

Имеешь в виду, что все это гораздо проще можно было сделать?
Аноним 14/08/15 Птн 23:15:11 #293 №530167 
14395833113790.jpg
Зацени, ананас. Хорошо зделол или можно лучше?

http://pastebin.com/UXLCYZe8
Аноним 14/08/15 Птн 23:19:01 #294 №530170 
>>530167
Как давно я не видел эту картинку на бордах. Какой-то воровачер что ли просмотрел папку с картинками?
Аноним 14/08/15 Птн 23:21:17 #295 №530172 
>>530167
А собственно какая задача была?
Аноним 14/08/15 Птн 23:28:46 #296 №530181 
>>530167
Корутины не занимают потоки, поэтому делать пул не из чего. По сути ты просто ограничил количество одновременно работающих задач, что можно было и семафором сделать. http://ideone.com/DjYcMD
Аноним 14/08/15 Птн 23:50:42 #297 №530221 
Объединюсь с ньюфагом и слоупоком для совместного обучения на опенсурс проектах. elektropochta88 at gmail.com
Аноним 14/08/15 Птн 23:52:55 #298 №530225 
>>530221
Давай лучше запилим что-то свое опенсорсное, чтобы пацаны зауважали. С тебя годная идея.
Аноним 14/08/15 Птн 23:55:37 #299 №530229 
>>530225
Давай, но я пока ничего не умею.
Аноним 14/08/15 Птн 23:58:00 #300 №530236 
>>530229
Идею вперед плз, окда? Можешь сюда писать.
Аноним 15/08/15 Суб 00:06:30 #301 №530253 
14395863902870.jpg
>>530236

Я еще ничего не придумал.
Аноним 15/08/15 Суб 00:07:23 #302 №530254 
>>530236
Пойду спать.
Аноним 15/08/15 Суб 00:11:39 #303 №530258 
>>530181
>>530172
Ну мне надо ещё распределять задачи по определённым слотам с данными, а не только ограничить количество. Грубо говоря, если только три лошадки, а нам нужно по очереди на них наездников сажать когда те сделают по кругу.

Хм. Может и правда на семафоре переделать. А то я как-то глянул, но почему-то отбросил такой вариант. И если честно долго врубался чем корутины от фьючеров и тасков отличаются.
Аноним 15/08/15 Суб 00:11:40 #304 №530259 
>>530229
Сюда идею не пиши, а то я спизжу и создам стартуп, а вы соснете.
Аноним 15/08/15 Суб 00:12:48 #305 №530260 
>>530259
Нет я.
Аноним 15/08/15 Суб 00:13:24 #306 №530262 
>>530258
>Ну мне надо ещё распределять задачи по определённым слотам с данными
Создай очередь из этих слотов и вместо print('+ task') и print('- task') доставай элемент/клади обратно.
Аноним 15/08/15 Суб 00:28:51 #307 №530276 
14395877315620.gif
>>530262
Интересно. Спасибо.
Аноним 15/08/15 Суб 00:35:02 #308 №530283 
>>530276
Впринципе семафор тогда тоже не нужен. http://ideone.com/p2XTal
Аноним 15/08/15 Суб 00:42:57 #309 №530297 
>>530283
> return (yield from coro)
Ох блин. А я с ним страдал. Скобки оказывается надо поставить.
Аноним 15/08/15 Суб 00:51:59 #310 №530310 
Есть один сервис хранения текстов и фотографий.
Просто выдрать ссылки на фотографии на нужной странице мало и это я уже сделал. Дело в том, что помимо тех фотографий ссылки на которые указаны, хостинг хранит и те фотографии ссылки на которые не публикует. Т.е., опубликованные ссылки могут быть вида:
1.jpg
2.jpg
5.jpg
9.jpg
и т.д.
При этом файлы с именами 4, 6, 7, 8 существуют и их надо выдрать. Проблема осложняется тем, что файлы могут содержать буквы, подчеркивания и тире. Т.е., быть формата (буквы)_(цифры)-(буквы)(еще цифры). При этом заранее неизвестно какая часть изменяется - изменяться могут буквы от a до z или цифры по порядку.
Так вот как сделать проверку какая части изменяется и высчитать те имена, которые не опубликованы? Я пока все это вижу адским количеством циклов, проверяющих каждый элемент имени файла на то является он инт или стринг, потом объединяющий элементы по типу если они идут друг за другом, сравнивающий с предыдущим именем, высчитыванием разницы и т.д. Короче, это должно решаться как-то сильно проще.
Вопрос в том как?

Вопрос второй: у нас есть цифры 1, 2, 3 и т.д. Мы их можем отсортировать и посчитать разницу между первой и второй, второй и третьей и т.д. Как сделать тоже самое для букв? Т.е., не для 1, 2, 3, а для a, b, c и т.д.?

Вопрос третий: как указать куда скачивать файл? Скачиваю так:
image = urllib.URLopener()
image.retrieve(img, filename)
Как указать путь куда скачивать и создать папку при необходимости не нашел. Скачивать в папку с питоном желания нет совсем.
Аноним 15/08/15 Суб 00:59:20 #311 №530319 
>>530297
Дибил, хуле.
Аноним 15/08/15 Суб 02:14:54 #312 №530365 
>>530310
1. Ты хочешь узнать неизвестное рандомно сгенерированное имя файла? Дай хотя бы примеры имён, что ли. Но если там исключительно символы на определённых местах (последовательно) меняются, то зная имена отображаемых, можешь индексы различающихся найти:
nms = ['ab_cy_4-eg','ab_cz_4-eg','ab_da_4-eg','ab_db_4-eg']
diff_indices = [i for i in range(len(nms[0])) if not all(name == nms[0] for name in nms)] # [3,4]
Ну а дальше только перебор, чего ещё тут сказать-то.
2.
ord('c') - ord('a')

ну или :
import string
letters = string.ascii_letters
difference = letters.index('c') - letters.index('a')

Если тебе в обоих регистрах нужно и не хочется связываться с тем, что между строчными и заглавными буквами в ascii идут ещё символы некоторые (ord('A') - ord('z') != 1).
3. Ну, ээ, а параметр filename для чего, по-твоему?
Аноним 15/08/15 Суб 03:09:33 #313 №530372 
>>530365
>Ты хочешь узнать неизвестное рандомно сгенерированное имя файла?
Нет, имя дает пользователь, а потом грузит на хостинг. Так вот часть файлов просто не публикует.
>Дай хотя бы примеры имён, что ли.
Обычно это просто цифровая последовательность от 0 до n.
Но бывают и такие:
img_6563-001
img_6568-001
img_6573-001
Бывает последовательность от a до z, где символы меняются. Сейчас уже не найду - бывает редко, а массив большой.
>nms = ['ab_cy_4-eg','ab_cz_4-eg','ab_da_4-eg','ab_db_4-eg']
>diff_indices = [i for i in range(len(nms[0])) if not all(name == nms[0] for name in nms)] # [3,4]
Не совсем понял, но попробую разобраться.
>ord('c') - ord('a')
Я этого даже не знал. Сейчас почитал и правда, обратно переведу char(). Удобно.
Про второй вариант тоже не догадывался.
>3. Ну, ээ, а параметр filename для чего, по-твоему?
Я думал он для того, чтобы сохранить файл под нужным именем. Благодарю. Заодно про os.mkdir() узнал.
Аноним 15/08/15 Суб 10:53:38 #314 №530429 
>>527962
>checkio
Охуеть, в первой же задаче цикл for element in data выводит 6, сука, значений, когда список передан из ПЯТИ значений, ПЯТИ, КАРЛ! Нахуй и в пизду.
Аноним 15/08/15 Суб 11:05:04 #315 №530432 
>>530372
Там с первым ответом кое-что не так пошло, так как макаба индексы за курсив приняла, лол. (Надо было не i использовать.) Вот — http://ideone.com/xPOVMm Это при условии, что изменемая часть целиком число и все цифры стоят рядом друг с другом.
Аноним 15/08/15 Суб 11:37:23 #316 №530441 
Реквестирую список современных средств разработки для питона. Например:
1) Что используется для тестирования.
2) Что для отслеживания покрытия кода тестами.
3) Автоматическая сборка.
4) Как обновляют питоновскую десктоп программу.
Может еще что интересное.
Аноним 15/08/15 Суб 13:22:45 #317 №530501 
У меня всегда была проблема с лаконичным названием переменных.
Вот как называть класс, который содержит список однотипных объектов? И еще и создает сам эти объекты?
ObjectFactory? А как нибудь человечнее? Тем более что он не совсем сам создает эти объекты, а делегирует процесс создания другому классу.
Аноним 15/08/15 Суб 14:12:05 #318 №530514 
>>530429
Ссылку на задачу или не было.
Аноним 15/08/15 Суб 14:16:17 #319 №530518 
>>530441
1. nose
2. nose + coveralls
3. flit (если речь о пакете)
4. esky
Ещё дохуя всего.
Аноним 15/08/15 Суб 14:17:48 #320 №530519 
>>530501
С таким описанием токо ObjectFactory, сорян.
Аноним 15/08/15 Суб 14:24:57 #321 №530521 
>>530501
>CamelCase
Аноним 15/08/15 Суб 14:26:45 #322 №530522 
>>530521
Игнорируйте это сообщение, не увидел слова "класс" в посте.
Аноним 15/08/15 Суб 14:30:03 #323 №530524 
>>530522
Ебать ты лох.
Аноним 15/08/15 Суб 14:30:41 #324 №530526 
>>530501
SozdavatelObjektov, ochevidno je.
Аноним 15/08/15 Суб 14:48:53 #325 №530531 
>>530501
ObjectBuilder, ObjectHandler, ObjectProcessor, ObjectManager, ObjectWrapper, ObjectOfObjects
Аноним 15/08/15 Суб 14:56:18 #326 №530539 
Какой фреймворк юзать на фронтенде для чтения рест апи?
Аноним 15/08/15 Суб 14:57:28 #327 №530540 
>>530501
AbstractObjectFactoryProxyList
Аноним 15/08/15 Суб 15:38:50 #328 №530571 
Анон, памаги, чем(как) скомпилировать пистонистский скрипт с расширением .pyt? С меня как обычно.
Аноним 15/08/15 Суб 15:40:37 #329 №530573 
>>530571
во што?
Аноним 15/08/15 Суб 15:48:13 #330 №530575 
>>530573
Исходный код(.py) в .pyt.
Аноним 15/08/15 Суб 15:51:18 #331 №530576 
>>530575
%script_name%.py переименовать в %script_name%.pyt
Аноним 15/08/15 Суб 15:52:20 #332 №530577 
>>530576
Спермовора за километр видно.
Аноним 15/08/15 Суб 15:54:00 #333 №530579 
>>530577
нет, у меня линюкс
Аноним 15/08/15 Суб 15:55:43 #334 №530580 
>>530579
Про mv слышал? Переменные в консольке баше знаешь как обозначаются?
Аноним 15/08/15 Суб 16:00:18 #335 №530581 
>>530580
%s
Аноним 15/08/15 Суб 16:01:22 #336 №530583 
>>530581
У тебя пиратский баш.
Аноним 15/08/15 Суб 16:04:06 #337 №530585 
a = "иди"
b = "нахуй"
c = "бля"
print '%s %s %s' % (a, b, c)
Аноним 15/08/15 Суб 16:08:52 #338 №530587 
>>530585
Вот ты ебанутый.
Аноним 15/08/15 Суб 16:23:24 #339 №530590 
>>530587
Аргументируй, почему?
Аноним 15/08/15 Суб 16:24:46 #340 №530591 
>>530590
>питон 2
>2015
Аноним 15/08/15 Суб 16:28:20 #341 №530594 
>>530576
Спасибо антош.
Аноним 15/08/15 Суб 16:34:18 #342 №530596 
>>530585
1. Это формат принта второго питона, в самом питоне к переменным не по % обращаются.
2. Я спрашивал про баш. Дважды. Раз ты линуксоид, ты мог написать mv script.py script.pyt, но ты выдумал какой-то адский велосипед с процентиками в стиле cmd.exe и cловом "переименовать". В баше кстати по $
3. Ну и да,
>2015
>python2

проиграл со всей беседы
Аноним 15/08/15 Суб 18:44:28 #343 №530661 
>>530591
Питон 2 - питон здорового человека.
Аноним 15/08/15 Суб 19:17:04 #344 №530670 
>>530518
Спасибо, посмотрю. И всем кто ответил >>530501 тоже спасибо.
Аноним 15/08/15 Суб 19:29:37 #345 №530678 
>>530539
Я только ангуляром пользовался, только его и могу посоветовать.
Аноним 15/08/15 Суб 20:09:39 #346 №530697 
>>530661
Питон контрамота-лиспобляди.
Как же я устал... Аноним 15/08/15 Суб 21:25:03 #347 №530751 
14396631032650.jpg
14396631032651.jpg
14396631032692.jpg
Аноним 15/08/15 Суб 21:28:46 #348 №530754 
>>530751
Устал быть балбесом?
Аноним 15/08/15 Суб 21:30:42 #349 №530758 
>>530754
Да, особенно от невнимательности
ну ПАМАГИТЕ, ПЛЕС!
Аноним 15/08/15 Суб 21:38:29 #350 №530761 
>>530758
Сдвинь всю if-else конструкцию на один индент вправо.
Аноним 15/08/15 Суб 21:44:58 #351 №530765 
>>530761
Это...чудо
Это особенность break?
Аноним 15/08/15 Суб 21:59:34 #352 №530770 
14396651740670.jpg
14396651740701.png
>>530765
Инденты в питоне определяют область видимости и логические блоки кода.

for bla bla
.. чота делаем
.. break #будет внутри цикла

for bla bla
.. чота делаем
break #будет снаружи цикла, выполнится после завершения, но т.к. цикл уже закончился - выходить не от куда - пошлет нахуй.

В остальных языках на это можно забить, но в питоне это обязательная часть синтаксиса, чтобы такие как ты учились и не писали все подряд на первом уровне индента как на пикрелейтед. Потому что иначе хуй поймешь.
Аноним 15/08/15 Суб 22:04:42 #353 №530772 
Как в >2015 на бидоне делают риалтаймовые вещи?
Аноним 15/08/15 Суб 22:26:46 #354 №530781 
>>530772
Никак. Риалтайм делают на сишке под QNX, как и раньше.
Аноним 15/08/15 Суб 22:36:12 #355 №530788 
>>530781
Тенденция реалтайм переносить на контроллеры и общаться с ними из-под линукса.
Аноним 15/08/15 Суб 22:38:41 #356 №530790 
Питурд с кодакадемии, как твои успехи?
Аноним 15/08/15 Суб 22:43:47 #357 №530795 
>>530790
Подавился десу
и поделом
sageАноним 16/08/15 Вск 03:51:05 #358 №530881 
14396862654490.jpg
Знаешь, питонач, с одной стороны это круто, запилить нужный опенсорный проект. Но с другой это очень выматывает. Морально, а не умственно или физически. У меня внезапно оказалось чуть больше сотни звездочек на жидхабе, и люди уже во всю делают пулл-реквесты, пишут багрепорты, бегают туда-сюда, делают что-то, пишут мне. И все они накладываются друг на друга, и каждому блять надо ответить, пояснить или самому узнать/уточнить у него что-то.
Для маминого хекки это пиздос как утомительно. Я уже жалею. Не надо было ничего делать.
Аноним 16/08/15 Вск 04:22:22 #359 №530882 
>>530881
Что за проект? Давно программируешь?
Можешь без ссылок если дианон-лигивон, на словах. Реально полезных опенсорс проектов за историю сосача и кодача было 2.5 пожалуй, а то и меньше.
sageАноним 16/08/15 Вск 04:40:54 #360 №530885 
>>530882
Деанон по гитхабу моментальный, лол, тоже об этом жалею.
Проект - ничего интересного. Украл взял старую заброшенную линуксовую поделку, переписал, обновил с учетом всех модных изменений в линуксах, добавил мелких фич и красивенькую морду, вбросил на реддит. Таких возможностей по обновлению еще навалом если копнуть. Просто клад какой-то.
Аноним 16/08/15 Вск 09:28:50 #361 №530922 
14397065303200.jpg
Неужели ни одного ньюфага нет, кто хотел бы со мной вместе учиться? Будем делать всякие штуки и задавать друг другу глупые вопросы.
Аноним 16/08/15 Вск 09:42:26 #362 №530924 
Пистонята, подкиньте годных задач на чистом питоне.
Прочитал 2 книги, а толку нету
Аноним 16/08/15 Вск 09:44:48 #363 №530927 
>>530924
>>527962
>>527965
Аноним 16/08/15 Вск 09:48:28 #364 №530929 
>>530927
Спасибки
Аноним 16/08/15 Вск 13:51:00 #365 №530986 
Котаны, кто какой IDE использует?
Аноним 16/08/15 Вск 14:03:54 #366 №530989 
>>530986
pycharm
Аноним 16/08/15 Вск 14:05:44 #367 №530990 
>>530986
PyCharm
Аноним 16/08/15 Вск 14:07:55 #368 №530992 
>>530986
PyCharm
Аноним 16/08/15 Вск 14:08:12 #369 №530993 
>>530989
>>530990
ок, чекну, я просто 3 недели юзаю стандартный.
Аноним 16/08/15 Вск 14:11:49 #370 №530994 
>>530986
PYCHARM
Аноним 16/08/15 Вск 14:14:14 #371 №530995 
>>530986
пучарм конечно же
Аноним 16/08/15 Вск 14:17:17 #372 №530996 
Если кому нужна бесплатная лицензия PyCharm:
http://blog.asidorov.name/2013/09/jetbrains-pycharm-27-ide-python.html
(Работает с последней версией)
Аноним 16/08/15 Вск 14:22:35 #373 №530999 
14397241556330.png
14397241556351.png
14397241556362.png
Так, скачал и установил ПиЧарм, сразу вопрос. Вот тут http://www.ideacolorthemes.org/home/ нашел темы для него, они в вот таком странном формате(пик1) способ установки с сайта(пик2) дает нам пик3. Вопрос, как что я сделал не так, тема же лежит там, значит с не все в порядке, как поставить то?
Аноним 16/08/15 Вск 14:25:02 #374 №531000 
>>530999
>ПиЧарм
Сьеби.
Аноним 16/08/15 Вск 14:26:09 #375 №531001 
>>531000
> Сьеби.

Или что, истерику устроишь?
Аноним 16/08/15 Вск 14:41:49 #376 №531007 
>>530999
по идее должно все работать, даже незнаю, я темы не устанавливал - мне хватает дефолтных.
Аноним 16/08/15 Вск 15:11:40 #377 №531022 
>>530999
Попробуй юзать стандартный.
Аноним 16/08/15 Вск 15:15:28 #378 №531026 
14397273280810.png
14397273280811.png
>>531022

Слишком бело, слишком темно.

А как поменять конкретно фон, я еще не разобрался.
Аноним 16/08/15 Вск 15:33:41 #379 №531040 
14397284210470.png
В сублиме выглядит конечно гораздо лучше, можно конечно руками все поменять PyCharm - но все же очень жаль, что я так и не понял как кастомные темs применять, там как раз есть тема SublimeText3
Аноним 16/08/15 Вск 16:20:57 #380 №531069 
>>531040
У тебя отступ в один пробел, не пойму? Ёбу дал?
Аноним 16/08/15 Вск 16:29:44 #381 №531077 
>>531069
Ты мне лучше скажи как темы применять.
Аноним 16/08/15 Вск 16:31:12 #382 №531079 
А Visual Studio для питона пробовал кто? Как оно?
Аноним 16/08/15 Вск 17:34:37 #383 №531106 
>>531079
Ты че дебил? Используй PyCharm
Аноним 16/08/15 Вск 17:41:08 #384 №531109 
>>525512 (OP)
Насколько уместно делать сайт на питоне? Это вообще реально? Если реально - какие плюсы и минусы по сравнению с другими вариантами, типа пыха?

Сайт без йоба нагрузки, обычный сайт для компании.
Аноним 16/08/15 Вск 18:19:49 #385 №531120 
>>531106
я твою маму ебал.
Аноним 16/08/15 Вск 18:30:10 #386 №531126 
>>531109
пыха хуиха, нахуй катись, дятел.
Аноним 16/08/15 Вск 18:32:56 #387 №531130 
>>531109
Да, питон используют в многих крупных проектах как бэкенд.
Изучаешь питон, осваиваешь джангу и делаешь сайты. Можно ещё фласк, но вакансий мало, зато для небольших сайтов ничего лучше нет, на своем опыте скажу. Курсы кодеакадеми за 1.5 дня + книга-гайд по фласку на 150 страниц + хтмлакадеми и можно делать.
Аноним 16/08/15 Вск 18:37:48 #388 №531131 
>>531130
Это конечно если тебя не воротит на фронтенда, от жс, от хтмл с ксс, от бутстрапов всяких, вот от этого всего. Меня воротит.
Аноним 16/08/15 Вск 18:39:00 #389 №531133 
>>531131
>на фронтенда
ОТ*, конечно же.
Аноним 16/08/15 Вск 18:39:24 #390 №531134 
>>531077
Кодом сначала займись, идиот, потом уже темы меняй.
Аноним 16/08/15 Вск 18:42:16 #391 №531136 
>>530986
vim+jedi
Аноним 16/08/15 Вск 19:11:42 #392 №531141 
>>531134
С кодом у меня все ок, спасибо. Я вижу ответа на вопрост у тебя нет, только пиздеть в состоянии - типичный сосачер. А чтоб код писать, нужно сперва сделать так, чтоб его было писать удобно и приятно.
Аноним 16/08/15 Вск 19:21:41 #393 №531144 
>>531141
Пошел вон. Чтобы писать код нужно иметь клавиатуру.
Аноним 16/08/15 Вск 19:24:35 #394 №531147 
>>531144
Хочу нейроинтерфейс. Как в каменном веке руками работаем.
Аноним 16/08/15 Вск 19:24:50 #395 №531148 
>>531144

И вытекающие глаза, от пяления в монитор, на черные буквы на белом фоне 5+ часов? Иди наааахууууй.
Аноним 16/08/15 Вск 19:32:34 #396 №531155 
>>531130
>>531131

>Это конечно если тебя не воротит на фронтенда
Поясни как это связано именно с выбором питона? На том же пыхе от фронтенда тоже никуда не деться.

Я просто никогда сайты не делал, имею только общее представление о них.
Аноним 16/08/15 Вск 19:32:59 #397 №531157 
14397427794840.png
>>531040
> не понял как кастомные темs применять
Дурачок штоле?
Аноним 16/08/15 Вск 19:35:34 #398 №531158 
>>531155
https://www.udacity.com/course/full-stack-foundations--ud088
https://www.udacity.com/course/developing-scalable-apps-in-python--ud858
https://www.udacity.com/course/web-development--cs253

Можешь пройти эти + вступительные по питону, ну и кодеакадеми. Потом перекатывайся на джангу и делай дальше.
Аноним 16/08/15 Вск 19:39:11 #399 №531165 
>>531158
Ты не ответил на мой вопрос.
Аноним 16/08/15 Вск 19:44:23 #400 №531171 
>>531165
Ты задавал его не мне, поэтому я и не отвечал. Вопрос, если честно, дебильный. Анона выше утомляет пердолинг в фронтендом, вот и всё, поэтому он намекнул что если тебя это утомляет как и его, то не хочешь ли ты делать что-то другое, а не сайты. Как-то так пожалуй.

А по делу - пиздуй учить питон, вопросы он тут задает. Можешь и пхп, разница ровно нихуя, но питон не превратит тебя в такого говнокодера как пхп. Строже, проще, можно писать под все платформы, простые кодестайлы, тонны литературы для нюфаков
Аноним 16/08/15 Вск 19:48:38 #401 №531174 
>>531157

Смотрим сюда

>>530999
Аноним 16/08/15 Вск 19:51:31 #402 №531177 
>>531155
Да никак не связано, тащемта. Просто он говорит что типа все так легко, просто взял за 1.5 дня и запилил. А на самом деле не легко, ведь надо преодолеть рвотные позывы при работе с фронтендом. Там та еще свалка копротехнологий, бэкэнд сказкой покажется.
Аноним 16/08/15 Вск 19:53:18 #403 №531178 
>>531171
>если тебя это утомляет как и его, то не хочешь ли ты делать что-то другое, а не сайты.

Блин, я уже хуй знает сколько лет на C++ пишу, от драйверов до машинного зрения. Мне нужен сайт для собственного наебизнеса и все, а питон просто удобен для прототипирования матана, поэтому хочу, делая сайт, еще и в нем прошариться заодно.
Аноним 16/08/15 Вск 19:54:41 #404 №531180 
>>531177
За полтора дня освоил. А делать он будет дольше, Лутца то можно и за вечер прочитать, но без практики это нихуя не стоит, поэтому и говорю - учишь базу и вперед, только практика, только хардкор, только стаковерфлоу и тупые вопросы. Добра.
Аноним 16/08/15 Вск 19:59:33 #405 №531183 
>>531178
Ааа, епта. Я то думал ты нюфак очередной извиняй, кек. Ну смотри, если тебе по книгам удобнее там, вечерок почитать. Я бы взял Dive into Python на твоем месте, потом глянул мануал по джанге и всё сделал.

Да, с фронтендом будет геморрой, потому что там обычно начинается дрочево и всё криво. В JS треде есть Фленегана книга, она в целом отличный справочник, скачай и по ней смотри что и как.

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

Алсо, да, для сайта попроще есть flask.
Аноним 16/08/15 Вск 19:59:48 #406 №531184 
>>531178
Короче мне нужно что-то, чтобы быстро въехать в веб-разработку с моей базой, а не сидеть эти нудные лекции слушать или хз чего там на курсерах.

HTML, CSS я представляю что такое, делал плагин для браузера.

Какие проблемы с совместимостью - хз.
Аноним 16/08/15 Вск 20:05:04 #407 №531185 
>>531183
> с фронтендом будет геморрой, потому что там обычно начинается дрочево и всё криво
Там - это где? Во фронтенде в принципе или это как-то с питоном связано? Я так понимаю, что фронтенд от выбора бекенда никак не зависит - везде тот же самый HTML и JS. Или на питоне это все скрыто за какими-нибудь фреймворками и т.д.?

>В JS треде есть Фленегана книга, она в целом отличный справочник, скачай и по ней смотри что и как.
C JS я уже сталкивался ранее, разберусь наверное на ходу.

Какие плюсы и минусы у питона в бекенда по сравнению с тем же пыхом?
Аноним 16/08/15 Вск 20:17:14 #408 №531188 
>>531183
>>531185
Ну смотри, посоветовали тебе правильно.

По HTML/CSS тебе нужен CSS: The Missing Manual, там всё есть. Если сайт интерактивный, нужный перделки на JS тупой вопрос, конечно нужны, то Фленеган ОК. Не хочешь тратить на всё это говно время, а сразу за работу - тебе нужен htmlbook и MDN. Там просто охуительнейшая документация с примерами по всем вопросам. Чтобы не изобретать велосипеды и тратить на это время, бери Bootstrap и JQuery, чтобы без лишней траты времени всё сделать сразу.
По Python смотри dive into python, если что-то поменьше и чтобы за часик, то byte of python. Если совсем мелкое - то документация.
По Django - официальный мануал. Он в целом ОК и даст всё что надо. Тут ещё писали про его альтернативу, Flask. Так вот, Flask это микрофреймворк очень клевый. На нём ты сможешь быстро реализовать сайт, не тратя время на всякую магию джанги и поиски нужных решений. Годнота, глянь документацию, он простой как пробка.
Там буквально на ходу чтения документации питона и фласка сможешь набросать простенький сайт, а дальше уже навешать перделок. Ну и потом сделать весь бэкенд нужной тебе сложности.

Про плюсы и минусы? Я бы не сказал что пых чем-то хуже для веба или лучше. Он просто популярнее, поэтому больше всяких CMS, фреймворков и других радостей. Синтаксисы всюду съедобны, особенно после С++ то лол, так что выбирай что больше нравки и пригодится. Всё таки питон скриптовый язык который можно всюду применить, а пхп весьма ограничен в этом выборе. Я бы лучше потратил время на змею, полезнее будет. Ну и да, если тебе интересны всякие машин лернинги и бигдаты, то тут уж точно питон идеально подходит.

Надеюсь помог.
Аноним 16/08/15 Вск 20:27:30 #409 №531190 
>>531188
>то тут уж точно питон идеально подходит
Вот поэтому его и выбрал, лол. Вопросы про пых просто для общего развития были.

Еще такой вопрос. У меня был когда-то скачанный сайт на пыхе, там был веб-сервер апач. Для .net есть IIS. А что выполняет роль веб-сервера для питона?

И еще поясни за хостинг. У меня тот сайт стоял прямо на компе с апачем у провайдера и там все было просто, а про внешний хостинг я вообще не знаю ничего. Зависит ли выбор хостинг-провайдера от языка реализации бекенда? Какой дается доступ к машине?

Заранее извиняюсь за дебильные вопросы.
Аноним 16/08/15 Вск 20:30:43 #410 №531192 
>>531190
Обычно берется впс с линуксом и ssh для доступа. Дальше у тебя полнейшая свобода действий, любой веб-сервер, любой язык бекенда, любой фреймворк.
Аноним 16/08/15 Вск 20:32:01 #411 №531193 
>>531185
>>531188
Да, тебе хорошие вещи посоветовали. В общем смотри как можно быстро нашлепать сайтец.
На бекенде python + flask.
Создаешь rest api.
Далее делаешь обвязку к rest api с помощью angular/backbone.

Мне такая модель построения приложений очень понравилась.
Аноним 16/08/15 Вск 20:33:13 #412 №531194 
>>531174
Просто скопируй папки colors и fonts в C:\Users\username\.PyCharmверсия\config.
Аноним 16/08/15 Вск 20:34:03 #413 №531195 
>>531190
Что касается flask, то он использует встроенный WSGI, т.е. тебе ничего не нужно устанавливать.
Аноним 16/08/15 Вск 20:36:19 #414 №531196 
>>531192
>>531193
>>531194
>>531195

Короче всем спасибо, теперь есть у меня есть отправная точка.
Аноним 16/08/15 Вск 21:03:07 #415 №531202 
14397481879780.png
14397481879791.png
>>531194
> Просто скопируй папки colors и fonts в C:\Users\username\.PyCharmверсия\config.

Спасибо, в принципе все работает, правда settings файл я так и не применил, незнаю куда его положить, да и нужно ли.
Аноним 16/08/15 Вск 21:05:32 #416 №531203 
>>531202
>шрифты с засечками
>в коде
Ебу дал? Я чуть не ослеп!
Аноним 16/08/15 Вск 21:07:01 #417 №531204 
>>531203
Как глаза потекут будет знать.
Аноним 16/08/15 Вск 21:08:00 #418 №531205 
>>531203

Я только поставил пиШарм, нехуя еще не пердолил, все что я делал пока что - это подбирал тему, чтоб глазам было приятно. Посоветуй шрифт, рас ответил.
Аноним 16/08/15 Вск 21:09:01 #419 №531206 
>>531205
Очевидный терминус, лучший моношрифт для кода.
Аноним 16/08/15 Вск 21:10:29 #420 №531207 
>>531206

Ок, ка мне теперь его впердолить в сишарм?, я смотрю оно шрифты берет из себя самой а не из системы.
Аноним 16/08/15 Вск 21:11:10 #421 №531208 
>>531207
Не знаю, у меня вим.
Аноним 16/08/15 Вск 21:25:46 #422 №531216 
>>531205
C-o-n-s-o-l-a-s
Аноним 16/08/15 Вск 22:07:36 #423 №531244 
14397520566300.png
>>531216
> C-o-n-s-o-l-a-s

Да это там есть, единственный нормальный блять.


Поставил нормальные шрифты - пиШарм их не видит, все другте системные шрифты видит, рукалицо блять. Что то я уже заебался с ним, на первый взгляд нормальный инстркмент, а на дели все гвоздями приколочено и костыль на костыле.
Аноним 16/08/15 Вск 22:48:45 #424 №531268 
14397545256580.png
>>531244
>Поставил нормальные шрифты
Вот нормальные шрифты. Просто, вам уже ничего не поможет.
Аноним 17/08/15 Пнд 00:08:46 #425 №531306 
Почему синглетон не рекомендуют использовать? Разве не лучше ли его взять для другого паттерна - медиатор? По-моему, он туда неплохо подойдет, если программе как раз нужно связующее звено в виде одного объекта.
Аноним 17/08/15 Пнд 00:34:11 #426 №531311 
>>531268
0/10
Аноним 17/08/15 Пнд 00:50:13 #427 №531313 
>>531306
http://fprog.ru/2009/issue1/eugene-kirpichov-fighting-mutable-state/
Аноним 17/08/15 Пнд 07:46:34 #428 №531362 
Посоны, а как в логгерах обычно организуется запись в файл? При каждом новом логе открывается файл, аппендится, закрывается, или при запуске программы открывается и там уже будь что будет, если крешнется?
Аноним 17/08/15 Пнд 08:08:07 #429 №531364 
>>531362
Открывается при open, пишется в буфер энного размера (io.DEFAULT_BUFFER_SIZE), по переполнении которого идет flush на диск. Повторить до бесконечности. При закрытии тоже flush.

https://docs.python.org/3.4/library/functions.html?highlight=open#open тут все написано.
Аноним 17/08/15 Пнд 08:12:12 #430 №531366 
>>531364
Да, забыл. Закрывается только явно с file.close() и неявно с with open. Все остальное время файл держится открытым, посмотреть кто держит файло открытым можно например с /usr/bin/lsof ./logfile
Аноним 17/08/15 Пнд 11:14:41 #431 №531434 
>>531362
import logging
Не?
Аноним 17/08/15 Пнд 13:07:40 #432 №531469 
>>530885
Ну подкинь пару идей.
Аноним 17/08/15 Пнд 14:01:05 #433 №531491 
>>530986
vim
Аноним 17/08/15 Пнд 21:03:17 #434 №531705 
Ньюфак, изучаю PyQt4. Сделал мейн виндоу, в нем график вью, в график вью положил сцену с парой линий и картинками.
Как при изменении размера окна адекватно масштабировать нарисованное? Есть какое-то свойство, которое я не вижу или нужно руками делать ресайз ивент в котором пересоздать каждый элемент под нужный масштаб?
Аноним 17/08/15 Пнд 21:25:15 #435 №531714 
Во-первых, pyqt5. Во-вторых, не пересоздавать, а ресайзить, если это объекты qt, и перерисовывать, если это твои кастомные "линии".
Аноним 17/08/15 Пнд 21:32:57 #436 №531716 
>>525616
в чем код пишешь?
Аноним 17/08/15 Пнд 22:39:20 #437 №531747 
Запускаю notest локально из корня своего проекта - все работает отлично. Запускаю unittest через консоль - тоже. Отправляю на гитхаб и travis - пишет ошибку, что не может импортировать мои модули, которые я написал и которые друг друга там импортируют. Хз че делать.
Аноним 17/08/15 Пнд 22:39:42 #438 №531748 
14398403820770.jpg
>>531747
Пикрилейтед.
Аноним 17/08/15 Пнд 23:20:29 #439 №531770 
Питоняши, выручайте. Раньше баловался с поиском яндекса, но он стал часто выдавать капчу, у гугла как-то всё криво, решил пересесть на альтернативные сайты. Выдает ошибку в ссылке, ибо вроде как urllib непонятным образом обрезает её.

ValueError: unknown url type: '/searchTerms/…


fromlxml.htmlimport*
importurllib.request

headers={'User-Agent':'Mozilla/5.0(WindowsNT6.1;rv:39.0)Gecko/20100101Firefox/39.0'}
req=urllib.request.Request('http://search.disconnect.me/',None,headers)
page=fromstring(urllib.request.urlopen(req).read())

page.forms[0].fields['query']='python'
result=parse(submit_form(page.forms[0])).getroot()

Аноним 18/08/15 Втр 00:28:36 #440 №531811 
Суп, пайтонач. Помоги, пожалуйста. Есть один сайтик на джанге, который является интерфейсом к python-демону, работающему на сервере. Хочу чтобы приложение брало настройки из бд, которые туда записываются из веб-интерфейса. Весь гугл перерыл, но не смог найти ответ на интересующий меня вопрос: можно ли использовать одну бд для их связи друг с другом? Может есть более простые общепринятые решения?
С меня как обычно.
Аноним 18/08/15 Втр 00:47:46 #441 №531823 
>>531747
Посмотри чужой проект, в котором всё работает. Что как маленький?!
Аноним 18/08/15 Втр 03:12:39 #442 №531854 
>>531811
можно, почему нет?
Аноним 18/08/15 Втр 07:06:20 #443 №531906 
>>531716
ipython
Аноним 18/08/15 Втр 09:05:08 #444 №531920 
>>525616
ебать цветовая схема, меня пока глаза не потекли.
Аноним 18/08/15 Втр 09:13:04 #445 №531925 
>>531920
Это терминал просто
Аноним 18/08/15 Втр 11:07:01 #446 №531947 
>>531854
Спасибо
А в sqlite есть блокировки или что-то подобное? Меня просто останавливает то, что есть вероятность одновременной записи/чтения.
Аноним 18/08/15 Втр 11:10:33 #447 №531949 
>>531947
https://www.sqlite.org/lockingv3.html
Лучше sqlite для этого не используй. Данные то может и целостными будут, а вот тормоза могут быть.
Аноним 18/08/15 Втр 11:12:32 #448 №531953 
>>531947
И вообще когда ты юзаешь django с sqlite это может привести к проблемам всяким. Дохуя функционала не поддерживается на уровне бд и эмулируется в питон коде - связи, контроль целостности и т.п. Даже типа данных в sqlite есть только text и int, остальное эмулируется.
Например у меня есть сайт с sqlite его на другую бд уже так просто не переведешь - дохуя ошибок всяких вылазит.
Юзай постгрес.
Аноним 18/08/15 Втр 11:45:59 #449 №531969 
>>531953
>>531949
Спасибо, няши. Возьму постгрес. А почему не мускуль, например?
И да: смогу ли я использовать разные орм для одной бд? (гугл молчит)
Аноним 18/08/15 Втр 12:19:54 #450 №531975 
>>531969
У постгрес намного больше фич и производительность сейчас лучше. Я код качественней судя по автоматическим тестам всяким.
Мускуль имеет смысл брать если ты очень хорошо знаешь его особенности и поведения и умеет оптимизировать под мускуль всё имхо.
> И да: смогу ли я использовать разные орм для одной бд?
Да, почему нет. Ты можешь и django orm/модели использовать со своим демоном тоже.
Можешь sqlalchemy какой-нить прикрутить.

Если тебе понадобиться серьезно тюнить postgres вот ссылка http://postgresql.leopard.in.ua/
Аноним 18/08/15 Втр 12:24:25 #451 №531976 
Есть идеи как в Kivy сделать тень вокруг виджета? Как вообще их делают? Шейдеры?
Аноним 18/08/15 Втр 12:26:55 #452 №531977 
>>531976
киви и так говно тормозное а ты ещё тени какие-то хочешь
Аноним 18/08/15 Втр 13:21:34 #453 №531997 
>>531975
Спасибо большое, пойду кодить :3
Аноним 18/08/15 Втр 13:22:27 #454 №531998 
>>531977
Ну на самом деле оно только грузится долго, в остальном юзабельно.

мимо
Аноним 18/08/15 Втр 14:50:36 #455 №532026 
14398986362880.jpg
Как в tkinter в виджете Text табы отключить или на пробелы заменить. С помощью .bind() перехватываю нажатие <Tab>, но печатает сначала 4 пробела, а потом таб.
Аноним 18/08/15 Втр 18:41:01 #456 №532119 
14399124613680.jpg
В чем шутка?
Если ищу в листе "new" то пропускает букву "О" а если в строке "text" то всё ОК. По сути функция должна гласные удалять из строки
Аноним 18/08/15 Втр 18:43:55 #457 №532121 
>>531770
Бампну, пожалуй.
Аноним 18/08/15 Втр 18:53:08 #458 №532122 
>>532119
В том что нельзя изменять список когда по нему итерируешься.
Аноним 18/08/15 Втр 18:53:45 #459 №532123 
>>532119
Потому что ты проходишь по списку, из которого удаляешь. Либо проходи по копии, либо итерируй с конца.
Аноним 18/08/15 Втр 18:55:59 #460 №532125 
>>532119
Не надо изменить список ходу итерирования по нему.
Если ты напишешь for x in list(new):
То всё будет окей.
А вообще
return ''.join(x for x in text if x not in 'aeiouAEIOU')
Или
import re
re.sub('[aeiouAEIOU]','','testeeOO')
Аноним 18/08/15 Втр 19:26:41 #461 №532134 
>>532123
> либо итерируй с конца.
С чего бы этому работать?
Аноним 18/08/15 Втр 19:48:46 #462 №532148 
>>532134
https://ideone.com/9u0NKt

Идя сначала мы удаляем элемент, изменяем len, упускаем из итерации n элеменов, которые удалили. Пилим сук на котором сидим.
Идя с конца мы уже идем со стартового, максимального len до нуля, и удаление нам ничего в итерации не ломает. Пилим сук перед собой.

А с копией листа можно соснуть если он оче большой.

//Хуле ideone так лагает?
Аноним 18/08/15 Втр 19:52:37 #463 №532150 
14399167578830.png
Не могу запустить pydoc в режиме gui. В пуске значка этого нет.
Аноним 18/08/15 Втр 19:53:06 #464 №532151 
>>532148
Твой пример кода хуев.
Во-первых ты итерируешься по range то есть по копии l во втором случае
Во-вторых, range создает список с нуля по len(l) а l у тебя с еденицы.
Аноним 18/08/15 Втр 19:54:10 #465 №532153 
14399168508900.jpg
>>532122
>>532123
>>532125
Спасибо, ясно. Видно прохлопал момент в теме про строки и листы
Аноним 18/08/15 Втр 19:59:18 #466 №532154 
>>532150
Подскажите, пацаны
Аноним 18/08/15 Втр 20:01:13 #467 №532155 
>>532154
pydoc.py -b
может? у тя же нет там никакого -g в списке опций
Аноним 18/08/15 Втр 20:01:57 #468 №532156 
>>532155
Это я вижу. В книге просто был написан этот ключ
Аноним 18/08/15 Втр 20:02:02 #469 №532157 
14399173222350.png
>>532154
Собственно этот гуи это хуйня, которая просто предлагает тебе открыть браузер.
pydoc.py -b
делай
Аноним 18/08/15 Втр 20:02:29 #470 №532158 
>>532155
ключ -b открывает локальный файл этот в браузере.
Аноним 18/08/15 Втр 20:03:45 #471 №532159 
14399174252580.jpg
>>532157
Да я уже понял. Просто интересно чего это у меня нет такой опции.
Вот такой вот интерфейс был в книге.
Аноним 18/08/15 Втр 20:03:55 #472 №532160 
>>532151
>ты итерируешься по range то есть по копии l во втором случае
>по range то есть по копии
Чего несешь, ебанутый? Во втором случае копия листа НЕ делается. Делается список с индексами, с циферками от нуля до len(l)-1, потом на него кидаем реверс и идем от len(l)-1 до нуля, удаляем из листа по индексу. Такой список в дохуя раз легче чем копия листа из которого удаляем. Там хуй знает что может быть, сотни сотен данных.

>l у тебя с еденицы.
Какая нахуй разница с чего начинается l? Я на рандом вбил, ну вбей туда буковки, нихуя не изменится.

Аноним 18/08/15 Втр 20:07:27 #473 №532163 
>>532157
А какая у тебя версия питона?
Аноним 18/08/15 Втр 20:07:28 #474 №532164 
>>532160
> Во втором случае копия листа НЕ делается. Делается список с индексами
Тогда и итерируйся в первом случае не по l а по списку с индексами.
И будет однохуйственно
Аноним 18/08/15 Втр 20:07:59 #475 №532165 
>>532163
Вторая. В pydoc3 у меня ключика -g тоже нет
Аноним 18/08/15 Втр 20:09:24 #476 №532166 
>>532164
https://ideone.com/IVfdF6

Нет, не однохуйственно. Фишка именно в том, чтобы идти с конца.
Аноним 18/08/15 Втр 20:10:10 #477 №532167 
>>532165
Походу тогда выпилили они это gui, ибо учебник по ранней версии 3-го
Аноним 18/08/15 Втр 20:14:52 #478 №532170 
>>532166
Эмм ну да в данном случае да.
Но вообще это хуевая идея удалять элементы из списка по которому как-то итерируешься. Лучше уж тогда что-то типа
while l: dosomething(l.pop())
Аноним 18/08/15 Втр 20:17:04 #479 №532171 
>>532148
А, ну ясно, я-то думал ты с remove пример приведёшь как у >>532119
Но вообще такие манёвры лучше не делать.
Аноним 18/08/15 Втр 20:32:28 #480 №532178 
>>532170
Ну по сути мы итерируемся не по листу который меняем, а по его индексам, которые в отдельном листе даже не в листе, а "в" range, он не отдает листов. И если идти с конца то Все безопасно, размер листа меняется вместе с итерацией по листу индексов или не меняется вовсе и не может быть <i.

А обходить лист через while как-то странно, а если еще не до пустого листа то бряки всякие ставить надо, иначе бесконечный цикл. Геморрой. Я обычно через такую обратную итерацию делаю.

>>532171
С remove не покатит, он по value, а мы по индексу удаляем. Но суть близка жи.
Аноним 18/08/15 Втр 20:44:53 #481 №532184 
>>532178
Вообще while True и break где-нить довольно часто попадается в коде. Иногда это удобней.
grepнул /usr/lib/python - 654 раза while True попалось.
Аноним 18/08/15 Втр 20:49:16 #482 №532186 
>>532184
Ну так то для других целей норм, а не для обхода листа. Мы то обходим. Длина листа известна, количество итераций чтобы его пройти равна его длине, каждый элемент смотрим один раз. Зачем там while true? Путает читающего только.
Аноним 18/08/15 Втр 20:52:03 #483 №532188 
>>532186
Ну while lst: lst.pop()
для обхода листа вполне норм если лист у нас что-то вроде очереди - надо доставать оттуда элементы убирая и обрабатывая.
Аноним 18/08/15 Втр 20:53:59 #484 №532190 
>>532188
Ну лан, может быть. Надо на конкретную ситуацию смотреть, но на скриншоте у того анона я бы таки сделал обратную итерацию по индексам.
Аноним 18/08/15 Втр 20:55:11 #485 №532191 
>>532190
На скриншоте у того анона я бы сделал >>532125
Аноним 18/08/15 Втр 21:03:41 #486 №532199 
>>532151
>range создает список
2015 на дворе, а они всё списки создают для итераций. Да и вообще, 50% что на скрине третий, а значит никаких списков range не создаёт.
Аноним 18/08/15 Втр 21:07:16 #487 №532201 
>>532199
Не придирайся к словам, в данном контексте это не важно.
Аноним 18/08/15 Втр 22:03:54 #488 №532240 
>>525512 (OP)
help. Pycharm наебнулся. любая прога кончает с надписью в консоли Process finished with exit code -1073741511 (0xC0000139).
гуглъ не помог. новыйпроект вклвыкл комп и т д не помогли. щито
Аноним 18/08/15 Втр 22:06:39 #489 №532241 
14399247993120.jpg
>>532240
Семь бед — один ресет
Аноним 18/08/15 Втр 22:06:44 #490 №532242 
>>532240
Пришло время.
Аноним 18/08/15 Втр 22:08:34 #491 №532244 
>>532240
Спроси у них в багтрекере/поддержке.
Нахуй тут спрашивать то
Аноним 18/08/15 Втр 22:41:30 #492 №532261 
Питаны! Форма регистрации не создает нового пользователя. Почему?
Аноним 18/08/15 Втр 22:43:20 #493 №532263 
>>532261
class RegistrationForm(forms.ModelForm):
password1 = forms.CharField(label="Пароль",
widget=forms.PasswordInput)
password2 = forms.CharField(label="Подтверждение пароля",
widget=forms.PasswordInput,
help_text="Введите пароль еще раз")

class Meta:
model = models.User
fields = ('username', 'email', 'first_name', 'last_name')

def save(self,commit = True):
user = super(RegistrationForm, self).save(commit = False)
user.email = self.cleaned_data['email']
user.first_name = self.cleaned_data['username']

if commit:
user.save()

return user
Аноним 19/08/15 Срд 00:30:00 #494 №532294 
>>532263
Print debug в помощь. Узнай сколько раз и с каким commit вызывается твой save. Узнай что такое этот user, не факт что это модель. Ну и в конце концов лучше не выёбываться и сделать по туториалу.

form = PartialAuthorForm(request.POST)
author = form.save(commit=False)
author.title = 'Mr'
author.save()
Аноним 19/08/15 Срд 00:37:46 #495 №532297 
>>532263
Во-первых, у тебя нет ни одного инстанс атрибута нет, всё классовое. Так и задумано? Во-вторых, как ты вызываешь супер с RegistrationForm в качестве аргумента если Meta не является подклассом этой самой формы? Как это вообще не крешится? В-третьих, судя по формату супера, ты используешь второй — а это значит, что от object наследуй классы, а не просто "class Meta:". Вангую, что сейв ни разу не вызывается. Да и где он, собственно, вызываться-то должен?
Аноним 19/08/15 Срд 02:50:33 #496 №532325 
http://elar.urfu.ru/bitstream/10995/28769/1/978-5-7996-1198-9_2014.pdf
>2014
>1.5.2
Аноним 19/08/15 Срд 03:10:16 #497 №532326 
>>532026
Уже весь гугл стёр, хер знает что делать.
Аноним 19/08/15 Срд 03:20:27 #498 №532331 
>>532325
Ты ожидал от российского ойти-образования чего-то другого? Хорошо что питон вообще есть. Обычно это бейсик, делфи и насилу пропихнутый маркетолухами сисярп. По выпуску человек умеет только формочки мышкой составлять и хелловорлды из трех строк писать. А потом такие приходят в зк и шутят про
>мы вам перезвоним
Аноним 19/08/15 Срд 03:26:53 #499 №532333 
14399440132820.jpg
>>532325
>Боклаг Наталья Юрьевна
Аноним 19/08/15 Срд 03:29:23 #500 №532335 
>>532331
Да ничего я не ожидал, просто хочу табы на пробелы заменить.
Аноним 19/08/15 Срд 08:11:26 #501 №532364 
>>532294
>>532297
Спасибо, буду разбираться!
Аноним 19/08/15 Срд 11:47:52 #502 №532407 
14399740724260.png
Хеллоу.
Начинаю учить пихтон по вот етому сайту: http://pythonworld.ru/samouchitel-python
Однако, я нихуя не понимаю.
Про какие-то там циклы, какие-то переменные, вообще охуеть.
Есть более удобный самоучитель? Чтобы прям вообще для ламера. А то там, я как понимаю, для тех, кто хоть что-то знает хотя бы по другим языкам.
Или может есть анон, который поможет мне в скайпике с этим? Будет моим наставником так сказать, пока я не начну разбираться в этом.
Аноним 19/08/15 Срд 12:03:08 #503 №532418 
Утонули? Утонули.
Аноним 19/08/15 Срд 12:04:35 #504 №532420 
>>532407
Попробуй Лутца навернуть. В шапке его книги есть, чувак максимально нудно и долго расписывает.
Аноним 19/08/15 Срд 12:08:59 #505 №532422 
14399753392300.jpg
ПЕРЕКИТ
https://2ch.hk/pr/res/532421.html
https://2ch.hk/pr/res/532421.html
https://2ch.hk/pr/res/532421.html
Аноним 19/08/15 Срд 13:05:38 #506 №532450 
>>532407
Антоша, если ты тут, поясню это справочник для тех кто уже гуру в проге и просто хочет освежить в памяти или понять вещи относящиеся конкретно к пистону, или дрочи Лутца или курсы, как тебе уже советовали.
Аноним 19/08/15 Срд 13:50:24 #507 №532473 
>>532420
>>532450
Лутца уже читаю, да, просто подумалось, што с сайтами быстрее будет, и што его, Лутца, будет мало.
Но таки спасибо, буду тогда дальше его читать.
А то мой лвл совсем мал.
Ухожу-ухожу с этого треда
Аноним 19/08/15 Срд 20:52:49 #508 №532683 
Подскажите какой-нибудь самоучитель по джанго, нихуя не соображу что к чему.
comments powered by Disqus

Отзывы и предложения