24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Привет, питонач. А поясни-ка мне, в чем профит лямбд кроме того, что удобно писать маленькие функции? Есть что-то кроме удобства по сравнению с определением стандартной функции? Спасибо, извиняюсь, если вопрос нубский.
>>882293 > по нему А нахуй искать вакансии на конкретный фреймворк и задрачивать то, что можно прочесть за минут 10 и палкой потыкать? яебал, хули вы такие тупые?
>>882417 Вот это если через админку: ValueError: "<Image: 1>" needs to have a value for field "image" before this many-to-many relationship can be used.
Либо если через форму аппа то просто : urllib.error.HTTPError: HTTP Error 403: Forbidden
>>882499 Только эта библиотека под рапсбери пай точенная. Но я где-то видел её порт и под обычную архитектуру компов. И оно довольно скучно мне показалось.
>>882525 Нет её, надо сделать. Я говорю про подход, а не про то, насколько развита инфраструктура. Если не начать что-то делать, то ничего и не получится.
Привет, двач. Когда то тут писали мне что почитать на джуна и писали что-то вроде "Питон: генераторы, итераторы, декораторы и т.п.". Вот я прочитал, знаю что это, например. А какие могут быть вопросы? Определение? Написать простой генератор, декоратор? В чем отличие между списками и генераторами?. Спасибо.
>>882567 >Да блять то же самое если с локалхоста делать то всё работает. Ну IP-то разные у локалхоста и сервера, на который деплоишь. Вполне возможно, что блочат IP хостинга. Попробуй какие-нибудь прокси, user agent браузера установи если еще не.
http://pastebin.com/rdbtTgTL может, кто-то захочет посмотреть мои костыли на ломанном английском с пародией на ООП? или даже запустить. пытаюсь сделать что-то типа разговора с моим одноклассником, но пока он мало чего понимает рейт
>>882222 (OP) Читаю книгу Think Python. На 4 модуле нихуя не запускается его ебаный TurtleWorld. Этот даун решил объянить циклы на нем. Пидарас! Дропаю пайтон или ищу другую книгу.
Проясните как правильно работать с пайпами. Есть программа которая выдает в stdout кучу строк, и есть питоновский скрипт который их читает и обрабатывает
если дождаться окончания программы и считать весь output subrocess.check_output(cmd) то все работает быстро, но занимает адское количество памяти
а если обрабатывать построчно то все работает адски медленно
p2 = Popen(cmd, stdout=PIPE) out = p2.stdout for line in iter(out.readline,''): if line.rstrip(): pass
Не, обработка строк там быстрая (если разбить output из первого варианта по '\n' и так-же его обработать то все работает быстро. Затупы где-то при использовании пайпа, может отключается буфферизация вывода для программы или еще что-нибудь вроде этого.
Привет, питонач. Объясни мне плз, в чем профит итератора? Вот есть у меня список, он и так итерируемый объект, в чем профит создавать iter(my_list) перед тем чтобы просто по нему пройтись если нужно, ну и вцелом в чем их фишка. Спасибо.
Требуется совет мудрый по использованию джанги. Делаю довольно стандартную вещь. При регистрации юзеру нужно выбрать свой регион и город, при этом хочется отдать ему форму с уже заполненными данными на основе ip-адреса. С регионом все ясно: их список не меняется и в конструктор формы передается только начальное значение. С городами посложнее. Их список изменяется, причем джанга не дает поменять их у поля после создания формы. Известный костыль -- написание своего __init__ для формы. Как принято поступать в таком случае? Неужели свой __init__ -- единственный выход? И если так, то хотелось бы примеров и\или комментариев для моего варианта реализации. http://pastebin.com/PzgAgYNu
>>883485 да в джанге, как впрочем и в питоне, все меняется и все можно (и нужно) переопределить, но это понимание приходит с опытом. не говоря уж о кверисет, который черным по белому в оффдоках описан.
>>883509 Во время первого вызова запускает валидацию, чистит данные, записывает ошибки. После нее доступна pform.cleaned_data. Эта часть была написана только для поимки некоторых ошибок в настройках формы.
>>883635 в чем ограничивать!? инструмент под задачи, а не задача под инструмент. когда твой сайт, написанный на фласк, упрется в проблему 10k - перепишешь часть логики на сервисах вообще, а фласк как был так и останется вместе с энжинсом и они не плохо будут переваривать все твои 10k. хотя врят ли ты до этого дойдешь, как и 99% йоба асинхронных проектов разрабатывающихся ради технологии, а не для решения бизнес-задач.
>>883657 Дело не во фласке и не в 10k. Просто асинхронный подход не имеет минусов по сравнению с синхронным. По коду тоже самое, только async/await добавь. Ну, а то, что либ пока нет, так тут уж ничего не поделаешь. Надо же с чего-то начинать.
>>883666 ну я бы не сказал что тоже самое. там дохуя неочевидных вещей своих сущностей и я бы не сказал что совсем простых для понимания: event loops event loop policies awaitables coroutine functions old style coroutine functions coroutines coroutine wrappers generators futures concurrent futures tasks handles executors transports protocols к слову https://pythondigest.ru/view/20078/
>>883675 К слову, половина из этого уже legacy-дерьмо, которое можно и не знать и не использовать. concurrent.futures к asyncio отношения не имеет, эта либа была и до него. Почитай доку по curio, это то, к чему будет идти asyncio, я щитаю. Ну, и про sans-io почитай, это тоже будущее.
>>883692 > мне хочется знать как работает мой код и what are fuck i am using right now!? Ты наверное и исходники питона наизусть знаешь? >>883692 > зачем мне явно передавать луп? >>883813 > Потому что явное лучше неявного. Явное лучше неявного, но как показывает пример curio луп вообще не нужен (в curio нет такого понятия). Вся эта канитель с future, callback, loop на самом деле историческая и на текущий момент, опять-таки, как показывает пример curio, не нужна и даже вредна. Недавно на reddit была ссылка на большой пост какого-то чела, где наглядно объяснял чем плох asyncio и хорош curio. Реально, прочти доку по curio и посмотри выступление Бизли, где он 3 часа рассказывает про асинхронность в питоне с самых низов. Базарю, ещё захочешь.
>>883820 >но как показывает пример curio луп вообще не нужен везде в коде >while True: while True: while True: while True: while True: Хотя Дэвид мужик крутой, спору нет.
Анон, как в джанге оптимальнее организовать для юзера хранение избранных товаров, если это например магазин. Логичнее наверное сделать так, чтобы список был прикручен к записи пользователя, а не самого товара, какую связь моделей использовать?
>>884013 Допустим у тебя в большинстве будут юзеры с пятизначным id. Товары тоже. 10 символов где-то 40 бит. Лям юзеров добавили до 100 товаров в избранное. 100 млн записей = 50 мб. Уж как-то с таблицей на 50мб база справится.
>>884014 Прямая связь пользователь-товар - идея не очень. Лучше пользователь - список избранного - товар. Пользователь - список избранного через one-to-one, список избранного - товар через many-to-many.
>>884046 > Прямая связь пользователь-товар - идея не очень.
Согласен. А причем тут я?
> Лучше пользователь - список избранного - товар.
Суть не отличается от того что я предложил: Пользователь - СписокТоваров - Товар. В СписокТоваров добавить поле означающее избранность.
> Пользователь - список избранного через one-to-one, список избранного - товар через many-to-many.
И ты забываешь в своем пример что у тебя 4 таблицы - список избранного связан м2м с товаром, значит будет 4я таблица которая их будет связывать. Т.е. в таких запросах будет на 1 (лишний) джоин больше.
А чисто гипотетически, мне нужно организовать такую фигню: 1. сайт на джанго в интернете 2. зеркало этого же сайта на ноуте с прописанным хостом на роутере имитирующим этот сайт 3. что бы зеркало и сайт обменивались данными, те всё что добавили на сайт - прилетало на зеркало, а что на зеркало - добавлялось на сайт
Как это проще сделать, хотя бы на уровне идеи?
Хуитка для конференций чисто, просто разок уже обосрались с шириной инет-канала гостиницы, но нужно не забывать о тех ебанашках которые не умеют например вай-фай сетку выбрать
Привет, питонач. Как думаете, реально ли осилить лутца (хотя бы первую часть) за месяц? Опыт небольшой уже в питоне есть, нужно теперь понимание. И еще что есть почитать может про то, как в питоне работать с TCP/IP и другими уровнями модели OSI? Спасибо.
Пагни, есть скрипт, который обращается к апи яндекса, геокодируя названия географических объектов. Там простой цикл по массиву этих объектов. Но он почему-то не отрабатывает до конца и останавливается через несколько сотен итераций - приходится запускать заново. Как можно определить почему? В логи пишу все ошибки и там ничего странного нет, к тому же я все ошибки игнорирую после записи в лог.
>>884339 P.S. Знаю, что по сетям танненбаум годнота, но, может есть что-то менее объемное, более наглядное, скажем, для простого понимания достаточного для работы с сетью разного уровня?
>>884389 Какое-то условие неточное. Как едят? В каком порядке? Нихуя не сказано же. Можно сделать просто случайную выборку половины рыб например. И пиздец, нахуя ты этих классов настрочил? ООП головного мозга начало развиваться еще до окончания освоения языка?
Как такое сделать? Чтобы атрибут функции был аргумент её первого вызова. В крестах внутри функции надо просто после объявления статической переменой её присвоить значение аргумента.
>>884444 Потому что вывело в другом процессе, не подключенному к стандартным потокам ввода-вывода?
>>884450 Объемная книжица с большим количеством повторений. Лутц зануда. В принципе если у тебя дикая мотивация и уже есть какой-то опыт, то да, можешь успеть все освоить. Но объясни зачем? Книжку можно сравнить с тем как ребенка учат ходить на горшок и вытирать рот. Я бы все же посоветовал сразу взяться за Саммерфилда. Глянь оппик прикрепленного треда.
>>884462 Ок, спасибо, пойду книжки почитаю. Вчера сделал прогу, которая подбирает пароль к rar архивам. Пятизначный пароль типа 12345 подбирает за 24 минуты. Но я смог ускорить (через жопу) и теперь подбираю за 5 минут. Загружено было одно ядро. Вот читаю в документации, что если правильно разбросать процессы по памяти и ядрам, то ваще за полминуты можно управиться.
>>884475 Соответственно если тебе надо наладить "принтование" в многопоточном/многопроцессном приложении, то на практике "принтуют" в специальный лог-файл. А джоины нужны чтобы получить результаты выполнения других потоков-процессов. В коде же можешь использовать очередь в качестве массива для хранения результатов выполнения других потоков. https://docs.python.org/2/library/multiprocessing.html#exchanging-objects-between-processes
Как-нибудь можно организовать глобальный стейт во фласке или джанге? Должен быть один рабочий тред который время от времени получает xml-ку и как-то парсит ее и все запросы должны использовать эти данные (для чтения). В базу стэйт писать лень да и медленно.
>>884389 Мы как-то похожую хуйню писали, причем нужно было писать стратегию охоты для хищника/съебывания для жертвы в отличие от варианта. Там была ограниченная область видимости и нужно было составлять карту еще. Интересная хуйня.
Нужно вывести информацию из БД (Около десяти строк) в какое-нибудь окошко. Подойдет ли qt новичку в этом деле? На оформление вообще плевать, главное чтобы выводило
>>882222 (OP) почитал и посмотрел лекции по питону уровня "стартер пак". хотел бы найти задачки какие-то, но просто гуглить это не то, надеюсь все же на советы здешних анонов, где найти интересные задачки. Рандомазейр и калькулятор уже написал.
>>884678 что-то сомнительно звучит. посчитай, сколько там будет вариаций этого пароля и сколько это займет места и времени. а если в памяти будет хранится только один пароль, то это далеко выходит за рамки "стартер пака". так что, я, пожалуй откажусь от этого, хоть это и интересно.
>>884797 Ну допустим, есть вот отличная книга Идеальный код, есть Программист-прагматик, годные книги потому что помогают понять, с какой стороны подходить к разработке софта и рассказывают, как можно правильно закладывать фундамент к гаражам, частным домам, многоэтажкам, небоскребам. А вот какой-нибудь Брюс Эккель или Лутц хуита, они учат как пользоваться стаместкой или молотком.
>>884800 Когда я начал читать программист-прагматик (страниц 50-60), то нашел там тонны мотивационных речей уровня дешевых бизнес-тренеров. В этом потоке скама дальше все же пойдет годнота?
>>884807 >Andy Hunt, Publisher In Chief, is an author and publisher, avid musician, and sometime woodworker. When not making noise or firewood he occasionally speaks at conferences. Любитель-плотник и профессиональный балабол. Есть подозрение, что весь код в книге написан его соавтором. Почему ты выбрал эту книгу?
>>884800 >потому что помогают понять Скажи, тебе помогло? Я имею в виду конкретно - чем тебе помогли эти тонны слов в книжках? Т.е. что ты сделал лучше за счёт чтения этих книг? Буду благодарен за примеры.
Сам щетаю что подобные книги пишутся сугубо ради бабла, т.е. цель автора книги - не дать полезную информацию а удержать читателя и заставить его рассказывать про книгу всем вокруг.
>>884807 > тонны мотивационных речей уровня дешевых бизнес-тренеров > дальше все же пойдет годнота А что для тебя годнота? Там описываются вещи, до которых люди не доходят, когда работают. Например необходимость полного принятия ответственности за свои действия, необходимо думать о последствиях, прежде чем перепиливать какой-то солидный кусок когда, да и вообще думать на работе надо всегда, а не просто сейчас я поменяю эту хуйню и эта хуйня заработает, а если что отвалится - можно будет зафиксить. Про говнокод и поджимающие сроки там тоже есть.
>>884819 > чем тебе помогли эти тонны слов в книжках? Теперь я знаю как выстроить фундамент, как подойти к задаче или зарефакторить чей-нибудь код так, чтобы ничего не сломать. Задумался и сам начал писать немного важных тестов для кода. Смотрю чуть дальше, чем на пару месяцев разработки, стараюсь документировать код в неочевидных местах. Да и ответили на многие вопросы как вообще пишутся крупные проекты, благодаря чему я порядок в голове навел.
>>884819 > цель автора книги - не дать полезную информацию а удержать читателя и заставить его рассказывать про книгу всем вокруг. Ну тот же Стив Макконнелл делится своим жизненным опытом, а не льёт воду. Ты к этому сам когда-нибудь притопаешь. Вообще еще одной годнейшей книгой можно назвать Thinking in Forth. Помогает делать из сложных вещей простые.
наивный баг-репорт: >вещи, до которых люди не доходят, когда работают. Не слишком ли общее утверждение? Т.е. какой доли "работающих людей" это касается по-твоему? Каков процент тех, кто из данных книг может извлечь для себя некие новые и полезные утверждения? (правильный ответ - ты не знаешь и не задавался этими вопросами.) Не судишь ли ты по себе? > Например необходимость полного принятия ответственности за свои действия Это вроде обозначается токеном "здравый смысл", т.е. утверждение базовое на тему "что такое хорошо а что такое плохо?". Принятие ответственности за свои действия - это например критерий совершеннолетия в уголовном праве. В среднем это приятие должно наступать после 18ти лет. Чем раньше - тем более годный получится чуловек. Странно, что ты устроился на работу и уж затем выяснил это из какой-то книжки. Отдельный вопрос - почему наша культура не обеспечивает осознание важности понятия ответственности за свои действия и допускает такие вот казусы, когда взрослый человек находит такое утверждение в какой-то книге, а не впитывает его с молоком матери. Лично мне это кажется неким эксплоитом всей нашей культуры, которым ранее пользовались всякие высшие сословия и тп. При том ты 100% сталкивался с утверждениями на эту тему ранее, просто проглотил его, лишь читая какую-то конкретную книгу. >необходимо думать о последствиях Ну опять же это некая очень широкая характеристика - склонность думать о последствиях - отличающая в первом приближении плохого человека/дегенерата/труса/мразь/дебила/беспредельщика/лузера от человека успешного/разумного/ответственного/хорошего. >да и вообще думать на работе надо всегда Только если ты хочешь развиваться. А я мб хочу говнокодить как-нибудь получать зарплату и спокойно себе жить, думая об аниме. Зачем мне думать о работе? >а не просто сейчас я поменяю эту хуйню и эта хуйня заработает Порой это наилучшее решение, когда важнейшим качеством системы является скорость её создания.
>>884881 этот вопрос выходит далеко за рамки разработки, ИТ, экономики и тп. Т.е. это некая глобальная хуетень, касающаяся жизни каждого человека. смекаешь?
>>884922 Привет, питонисты. Вопрос такой. Я вот веб-макака в прошлом(Java), удалось поработать с питоном около полугода (автоматизация процессов и работа с данными). Хочу попробовать вкатиться в QA, ибо разработка, почему-то, напрягает. Думаю, может в QA думать меньше, сиди себе пиши тесты да документаци. Ну это так, просто мысли. Вот думал в тестирование вкатиться и потом перейти в автоматизацию тестирования. Питон для этого вполне годный язык же, не? И вообще какие шансы на становление тестером для бывшей веб макаки, которой веб-программирование не всралось, а денег хочется. Спасибо.
>>884955 Шансы хорошие, только вот тестирование ещё более скучное и однообразное занятие, а с Питоном ты будешь почти наверняка писать тесты для той же веб-параши, которую избегаешь.
>>884819 Мне помог Совершенный код когда я после универа с опытом написания Лаба_1 пошёл джуном. Сначала практические вещи типа именования переменных и декомпозиции кода на методы были для меня проблемой. Я видел много возможностей, но не мог выбрать и впадал в ступор. После Макконнелла я могу не только назвать переменную, но и пояснить почему так лучше чем по-другому. Это конечно только отдельный пример.
петян, а можно ли где-то пошкодить питона с визуальными блоками?
вот смотри в чём дело: у меня есть алгоритм, он там ебашит своё ушу, но у него много параметров. и их бы надо подстроить, что пиздец как напрягает. каждый раз менять значения в коде, запускать, смотреть что произошло.
я не хочу сам писать графическую оболочку с ручками и крутилками, которыми можно было бы интерактивно менять там всякие параметры, но хотел бы, чтобы такая хуетень бы была, дабы ею воспользоваться для отладки.
Как думаешь, если я выпущу книгу с заголовком "Серия: Уроки жизни программистов.\nКак заставить себя зарабатывать." У меня будет шанс оторвать свой кусок в инфобизнесе?
Гайс, сел я за написание своей первой имиджборды. Пилю на Django. Столкнулся с такой проблемой, что не понимаю, как посчитать пользователей в час и уникальные IP. Вроде понятно, что нужно считать сессии, но я вообще не понимаю как с ними работать. Первая идея была такая, что просто добавляем в словарь request.session значения при посещении страницы и храним это все в бд. Зашел на b получай request.session['b'] = True. Но здесь возникло сразу несколько проблем. Адекватно посчитать из бд я не могу т.к. все данные хранятся как хэш, мне придется достать каждую запись, декодировать и посчитать. Как удалять данные из бд по истечение expire_date я тоже не знаю. Подскажите хотя бы на уровне идеи как это правильно реализовать?
>>884972 спасибо, анон. Я это понимаю, просто думал что может быть менее напряжное. Я пока что-то очень устаю в течение дня, поэтому ищу какой-то компромисс для себя в IT. Просто веб-программирование настолько захватило рынок, что для entry-level ребят кроме веба считай некуда идти и учиться. Грубо говоря, если не выучил С++ в универе то почти наверняка идешь в веб. Как то не очень гибко выходит, а на питон если и найдешь джуновскую вакансию, но давай-ка парень залезай по уши в Джанго и пили виюхи, темплейты и прочее, чем то подобным я занимался на джаве, жесть как припекало от такого.
>>885136 она и хранится в бд, только в виде кэша, поэтому я через ORM не могу сразу по словарю пройтись, создать отдельную таблицу и хранить там словари была моей первой идеей, но интуиция говорит, что так делать нельзя(либо я еблан, либо это троллинг). Пилить отдельную таблицу под словари?
Анон, тут лампово, да и я питон дрочу. Вощем, надо регексп написать, начинается обязательно с латинской буквы, заканчивается обязхательно латинской буквой, может помимо это содержать латиницу,цифры, дефис и точку. Все бы ничего, да размер у строки должен быть от 1 до 20 символом. Загвоздка в длине в 1 символ, и как ограничить общую длину в 20?
Наваял вот такое барахло ^[a-zA-Z]+[a-zA-Z0-9\.\-]*[a-zA-Z]{1}$
Помогите с заданием. От цифровых датчиков в компьютер поступает информация о характеристиках физического процесса. Результатом каждого измерения является целое число.
Вам предлагается написать эффективную, в том числе по используемой памяти, программу, которая будет искать максимальную длину невозрастающей подпоследовательности.
Следует учитывать, что количество измерений может быть очень велико.
Перед текстом программы кратко опишите используемый вами алгоритм решения задачи. На вход программе в первой строке подаётся общее количество N значений измерений. В каждой из последующих N строк записано целое число. Гарантируется, что N ⩾ 1, то есть всегда имеется хотя бы одно значение измерений.
Пример входных данных:
5
-1000
0
-300
2
2000
Результатом работы программы должно являться целое число — максимальная длина невозрастающей подпоследовательности. http://pastebin.com/kfnmGTHR что не так?
>>885230 Ну как миниум print(b) нету интендант блока. Он у тебя всегда будет принтить глобальное значение объявленное вначалеb = 0 кода то есть 0. Дальше что-то ты мутью набрызгал как по мне. Вайпни код и подумай как без ебаного нагромождения if-ов сделать и лучше без обоссаного while.
>>885514 Меня тоже интересует примерно этот же вопрос но стесняюсь тут спрашивать платину, но раз зашел разговор... Реально ли вкатиться куда-то кроме веба? Но при этом никаких специфичных математических знаний нету чтобы во всякий анализ данных и прочие частично-питоновские области пытаться. Часто ли нужны админы которым приходится много писать на питоне? Куда еще можно? другой анон
Кстати, что для сетей пишут на питоне? Ну знаю я интерфейс сокетов, могу написать клиент-сервер на py или C, а как дальше двигаться? Какие есть актуальные задачи? Как находить себе таски если ты борщехлеб не работаешь погромистом?
>>885523 Ну,знать питон так, чтобы растолкать 80 конкурентов, с голодным взглядом набрасывающихся даже на самую задрипанную вакансию. Сейчас таких как ты - орды
>>885520 двачую этого. Веб это просто какая-то клоака. От себя добавлю, что видел только одну вакансию от 4 лет опыта на мидла без джанго и прочего, там связано с телекоммуникациями и интеграциями систем.
>>885622 хз, но я не выдержал. был веб макакой на джава и на salesforce еще около года годил. просто пиздец как напрягала рутина. На питоне/баше сейчас пишу всякие штуки по интересу, пробовал в джанго (как раз в этом треде спрашивал) максимум на что хватило это на говно блог. Хз почему так, может у меня с мотивацией проблемы, но желания разбираться в вебе и во всем этом вообще не наблюдаю за собой. Вот честно, очень рад за людей, которые нашли себя в этом и им это в кайф по настоящему.
А чего вам всем так веб не нравится? Веб - это ведь не только шлепать формочки, CMS и магазинчики. В перспективе ведь можно и всякие крутые асинхронные высоконагруженные бекенды писать. По моему, это может быть интересно
>>885636 дак никто не спорит, что может быть интересным, просто до интереса нужно джуниором говна пожрать пару лет, видимо. Ну и да, как я выше написал, здорово, что есть такие люди как ты, анон, что мотивация есть все это изучать.
>>885640 >только хз где Уж точно не на фрилансе. Скрапинг там это ебаное дно. Задачи уровня, пройди через все страницы на сайте скопируй все ссылки и картинки в ексель. Плата 5 баксов фиксированная. Добро пожаловать.
>>885650 фриланс вообще не по мне. Понимаю, что можно найти какой-то интересный фиксированный проект, но торговать жопой за 15$ в час это как то мда. Не знаю, отношение к фрилансу скорее негативное.
>веб дно ко ко ко... а вы пробовали сделать хотя бы каталог продукции на джанге!? а, знатоки, ебана? 90% тут еще не успели вкатиться, а уже кудахтают сидят. охуели!?
>>885654 в том то и проблема, что "сначала сделайте потом говорите" не работает, даже если я могу сделать что то подобное на чем то, то просто не откуда взять интерес. "веб дно кококо" никто так не говорит.
>>885659 кудах в том, что альтернатив мало, фактически монополия на веб. Сам сейчас в лабе работаю при институте, платят хуйня конечно, но бывают задачи прикольные. Так вот в развитой части планеты в таких лабах кипит жизнь, обучают и прочее.
>>885577 > дальше то что? Тем боле, это не значит, что технология мертва, просто у макак и хипстеров это не пользуется спросом. >>885636 > А чего вам всем так веб не нравится? ECMAScript и http. Так-то http не так уж и плох был для передачи просто размеченного текста. Вебсокеты должны немного поправить ситуацию, а там посмотрим что за тенденции пойдут. На сервере то вообще похуй, там я и на перле с таким же удовольствием буду писать, как и лет 8 назад.
>>885562 И где в девопсе именно писать на пайтоне? Потому что часто хватает баша, если уж ты админ. Как админ, я бы хотел стать девопсом, что такое ci\cd\cd, облака, и разработка я знаю. Где питон-то юзать? Примеры задач?
>>885785 основные виды сортировок, поиска и базовых структур данных, на которых они осуществляются. Знать сложности основных алгоритмов, а также сложности основных операций со структурами данных (доступ к элементу, вставка элемента и прочее). Хотя, честно говоря, вообще не понимаю, зачем это спрашивают у джуниоров. Такие вещи, наверное, начинают иметь значение на уровне миддла. Может кто из анонов пояснит мне.
Остались два вопроса 1. Как запускать скрипты через >>>python3 имя.ру ?не прописывая путь 2. Как не писать # -- coding: utf-8 -- каждый раз? или настроить атом на питон 3
>>884754 Лутц хорош тем, что позволяет въехать в язык тем, кто ни разу до этого не программировал. Я въезжал в питон по стандартной справке и это было пипец как сложно. Потом, когда достал книгу Лутца, оказалось, что там есть ответы на все вопросы, даже на самые тупые. А вообще - это традиционная проблема всех справок. Они рассчитаны на то, чтобы переманить программистов из других языков.
>>884887 > я мб хочу говнокодить как-нибудь получать зарплату и спокойно себе жить, думая об аниме > Аноны как называется это вот всё? говнокод и проблемы с поддержкой Макконнелл рассказывает об опыте разработки сложного софта на сотни тысяч человекочасов и работе в компаниях уровня Яндекс/ABBY/Amazon etc. >>885931 Всмысле собранные? Python не компилируемый язык.
>>886258 написал же сверху, либо 'string'.decode('utf-8'), либо 'string'.encode('utf-8'), либо какой-нибудь 'string'.encode('cp-1251'). Потыкай, что подойдет.
>>886325 >Всмысле собранные? Python не компилируемый язык. Нещадно проиграл. Python действительно классифицируется как интерпретируемый язык, потому что у него нет компилятора исходного кода в машинный код, но это не значит что Python не компилируемый язык. Python можно скомпилить например в бинарник.
Запилил сигналы, смысл сигнала в том, чтобы при вызове, он заполнял список, список объявляю не в функции-получателе, а выше, чтобы импортировать во вьюху. Сам список отдаю в самописный тег, который просто бесконечно итерируется по списку, если список пустой, то он заполняется нулями. Проблема в том, что сигналы работают, список вроде заполняется(вызываю принт в сигнале, все ок список заполнен), но вот при импорте во вьюху, я получаю пустой список(usr_in_hour), в чем трабла? http://pastebin.com/iHYYjMxW
>>886364 Ну у тебя скорее всего Global usr_in_hour = [] вот он и импортирует его. usr_in_hour.clear() ? То есть он у тебя каждый вызов читстит его, потом наполняет и при повторном вызове чистит опять в [] ?
>>886376 ну тип я на крон поставил вызов команды каждый час, каждый час я заполняю список новыми данные, а старые мне уже не нужны, просто очищаю и закидываю новые. Получается он чистит только перед тем, как закинуть новые данные. Как решить эту траблу то? Если объявлять список в сигнале, то я потом хуй импортирую его
>>886384 хуйня >>886388 Я так понял, что это для работы с кэшом и можно таким образом юзать обычную джанговскую таблицу для подсчета сессий? Пиздец, я уже 3 день убиваю на велосипед...
>>886388 покумекал немного и чет не понимаю, как мне это поможет . У меня изначально стоит задача посчитать кол-во сессий за час на странице. Сессии сохраняются в зашифрованном виде, поэтому я запилил свою таблицу под сессии. Дальше я запили код во вьюхе, с помощью которого я закидываю сессии к себе в таблицу, дальше я поставил на крон команду, которая раз в час чистит бд от устаревших сессий. После выполнения этой команды мне нужно пройти по таблице и посчитать сессии(там нужно не один раз посчитать, поэтому я хочу все это засунуть в список), я хотел это сделать через сигналы(в команде из крона вызывался бы сигнал). Как в этом деле мне поможет кэширование я чет не понимаю, передвать в словаре нихуя не удобно, эти данные мне нужны только один раз в час, после этого расчет повторяется.
Питонянцы, наворотил хуйни, пришлось снести питон и поставить заново. Накатил все нужные либы, но возникла проблема с PyQt5. Установил, в папке c:\py3.5\lib\site-packages все на месте, проги на pyqt запускаются, но через help() modulesпитон не видит pyqt, и pyinstaller тоже пишет что файлы otgui qtcore и тд. не обнаружены. Как фиксить?
>>886695 если следовать идеи с сигналами, то они не работают(код выше), была мысль в функцию передать переменную, я переписал код, но теперь сигнал вроде как не проходит т.к. принты внутри ничего не отрисовывают. http://pastebin.com/ZfmtZxP5
>>886701 Вообще я может не правильно задачу понял, но вот если бы я делал, то я бы на крон (вообще нет, я бы юзал celery-django какой-нибудь) повесил задачу чистить раз в промежуток таблицу от старых сессий, и сделать вьюху, которая бы просто брала количество существующих записей в таблице. И еще вьюха, чтобы забить фейковыми данными таблицу. Ну а так-то сессия заносится в таблицу, когда юзер заходит на целевую страницу - без сигналов, просто еще пара строчек в нужной вьюхе. Не понимаю зачем там больше сигналов.
Конкретно по твоему коду не увидел где происходит запись в бд. То есть что-то в списочек пишешь, но и только-то.
>>886707 на кроне висит задача чистить бд один раз в час, один раз в час я хочу получать данные из бд, а не каждый раз их считать во вьюхе. Сигнал мне нужен, чтобы после чистки базы рассчитать один раз все значения.
>>886711 А вообще может и не помочь. Я на джанге давно кодил, в каком там порядке грузятся модули и когда живут, а когда умирают? Может для промежуточного хранения результата нужно писать в бд.
>>886722 я не думал об этом, на самом деле наверн это норм решение т.к. мне так и выводить проще данные проще будет, а то я там заморочился и cycle под список написал. Пошел пилить, спасибо
>>886472 По-моему у тебя overengineering. Я бы написал middleware, который сохраняет session_key в БД вместе c timestamp/datetime. Потом просто фильтровал по времени и считал. Тогда и удалять устаревшие в принципе не обязательно.
>>886723 Тю. Я-то думал у тебя там какая-то хитро-выебанная логика, раз такие изъебства, а оказывается... В таком случае, не знаю в точности, что ты хочешь получить на выходе, но вангую свою задачу решаешь ты не правильно. Энивей, как осознаешь, так и перепишешь (надеюсь).
Не кидайте ссаными тряпками, просто очень хочут разобраться наконец-то со всем этим. Вот одно из различий гет и пост запроса в том, что параметры одного передаются в урле а второго в теле запроса. А что будет если передать пост запрос с параметрами и в урле и в теле? Тогда это будет гет с телом и примутся только параметры из урла? Или зависит от поведения принимающей системы? Спасибо.
Шаблон <form method="post" enctype="multipart/form-data"> (экшн прописывал и как {% url 'home' %} в котором эта форма и валяется, и по адресу action='.' и action='/' - до пизды дверца {{ form.as_p }} {% csrf_token %} <input type="submit"> </form>
Чего оно не хочет? Я уже заебался с этими формами из раза в раз лажать нахуй, ёбанное нахуй всё блядь.
>>886927 Ньюфаги не могут пепвосить. class Activity(models.Model): user = models.ForeignKey(User) add_date = models.DateTimeField(auto_created=True) message = models.TextField(blank=True, max_length=1000)
>>886866 анон, что то я прочитал и нового для себя ничего не выяснил, если честно. Вот на одном собесе прямо был вопрос, что будет если POST запросом передать какой нибудь файл или параметры чего либо (форма) и еще в урле параметры как в гет. Можно ли такое провернуть? Если нет да то почему и какое ожидается поведение? Спасибо если кто поможет.
>>886967 Тип запроса указаывается в headers, заголовок - method. По умолчанию - GET Если указан post, будет POST запрос по адресу, который ты указал. Адрес включает в себя и все параметры. В django это можно разрулить еще на этапе роутинга, то есть у тебя будут в post и параметры и в качестве аргументов твоей вьюшки get параметры. А все потому что регулярочки обрабатывают адрес, который ты вбил. Чет ты тупанул на собеседовании.
>>882222 (OP) Помогите мне тупому. Хочу сделать это - >python3 -m http.server --cgi Для сидящих на Windows чуть проще будет запуск Python файла (заметьте, что он должен находиться в той же папке, в которой мы планируем работать!): from http.server import HTTPServer, CGIHTTPRequestHandler
Где должен находится файл со скриптом в винде, не на рабочем столе же ? В папке с питоном ? Там нет всяких usr/bin/cgi
Существующее значение q будет выброшено при конвертации в дикт. Хотя проще было бы стринговыми методами воспользоваться, наверное. Запилили бы метод типа qset(key, value) в урллибе.
>>887527 Мне б сниппет. Так-то я уже решил проблему, обойдясь двумя строками. Не то, чтобы строки экономил, но если в реквестах то же самое делается столь же громоздко, то оно и нахер не нужно.
>>887535 Чому? У меня с ним пока всё красиво и легко.
А в джанго когда во вьюшке форму обрабатываешь обязательно после проверки валидации формы значения выгребать через cleaned_data? Или есть способы проще?
Реквесты штука хорошая, но в ней вообще нет ничего для работы с урлами. Поэтому заменить параметр в строке с урлом при помощи requests не представляется возможным.
>>882222 (OP) Привет, питоняч. Я, как мне кажется, сравиниельно уверенно знаю питон. Использую в основном вещи типа numpy и scipy, немного qt, недавно начал делать мультипроцессинг. Но при этом не программист ни разу, про всякую сортировку пузырьком и синглтоны в душе не ебу. Еще пишу скрипты в матлабе и немного шью ардуины, но это совсем редко. Как ты уже, наверное, догадался, я использую эти илитные знания сидя в ебучем НИИ за 16к в месяц. И тут я подумал, что хватит это терпеть, нужно искать нормальную работу, а что я умею делать? Только программировать. Я понимаю, что с такой базой я нахуй никому не сдался даже на фрилансе, так что расскажите мне, какие у меня перспективы. Что нужно к моей базе доучить, чтобы сделать хоть немного денег? Что нужно с нуля выучить? Кто-нибудь из вас вкатывался в питонрование из сириус сцайнс?
>>887835 На фрилансе конечно не нужен. А вот в приличное место с numpy/scipy могут взять. Ищи вакансии с ключевыми словами big data, data mining, machine learning и т.п. Нахуй тебе этот веб?
>>887835 >Что нужно к моей базе доучить >про всякую сортировку пузырьком и синглтоны в душе не ебу. К какой базе, молодой человек. Вы обосрались. Ни алгоритмов ни структур данных не знает. Моя база говорит))
>>887835 Фрилонс на 99.995% сделан из СЛЕПИ КРУДОПАРАШУ С ФОРМОЧКАМИ и ЗДЕЛОЙ ПАРСЕР ВОН ТОГО САЙТА. Открой любую парашу типа апворка и сам посмотри чего там обычно хотят.
>>887846 >На полном серьезе считает знание bubble/merge/quick/heap sort какой-то базой. Это все за пару дней изучается и выбрасывается за ненужностью. Как и bigO, как и половина паттернов...
суп питоняч. Обращаюсь к тебе т.к. горят сроки в универчике. я 3ий курс. Помоги с лабкой, б-гом молю тебя. Скину здесь условное задание что-бы не кидать всю методу -Написать ф-ию поиска случайного простого числа из интервала с генератором случайных чисел (он дается в лабе) и тестом проверки на простоту . -Сгенерировать через эту ф-ию 2 пары простых чисел -Написать ф-ию генерации пар для RSA (со своими приколами, что указані в методе) -Написать ф-ии шифрования, разш., генерации сообщения с подписью. И там еще по-мелочи. Спасиба ананас, я знаю ты отзовешься, а там я и методу скину.
>>887865 > Скину здесь условное задание Ты охуел с запросами-то? И Миллера-Рабина тебе написать, и решето Аткина, и RSA реализовать, и еще по-мелочи? Пиздуй учиться. Что непонятно - спрашивай. Напизди готовых примеров из интернета и склей, на худой конец, (хуевых) реализаций каждого алгоритма сотни. А код за тебя писать никто не будет, сколько бы простой он не был, а это все равно минимум пара часов.
> Написать ф-ии шифрования, разш., генерации сообщения с подписью Вам, надеюсь, объяснили почему не надо вот этого делать никогда в реальной практике или хоть при каком-то шансе что написанный код хоть как-то будет использоваться хоть по сколько-то близкому к назначению?
>>887877 Ты с чем несогласен? Что все это ерунда, которую не сложно выучить? Или у тебя пригорает, что тебе ни разу не пришлось писать свою сортировку, а все время пользуешься готовой? Или тебе хотелось написать ПИТОНЯЧИЙ СИНГЛЕТОН, а тебя коллеги за это пиздили?
>>887915 >>887915 А у нас акция - скажите, где еще кроме собеседования Вам пригодилось знание сортировок и получите ХОЛЕСТЕРМАК и ТОШНОФРИ совершенно бесплатно!
С другой - вот нихуя неправда эти знания нинужны(tm). Их куски используются "на ходу". Ты, ясен хуй, не пишешь, например, квиксорт (нахуя, если он уже сто раз написан?), но вот - ну несколько высосанный из хуя пример конечно, но - например, идея про половинки у тебя где-то в башке засела и ты ее применяешь в другом месте, может вообще не связанным с сортировкой.
Дрочево алгоритмов это не только умение на доске написать копипасту, это еще все откладывается в башке и всплывает в памяти ассоциациями когда видишь что-то похожее. Как и большое О которое никто никогда не считает (ну, почти, иногда надо бывает), но "на глазок" прикидывают практически подсознательно.
Но, да, увидеть, понять как работает (главное) и забыть нахуй.
Я на питоне 99,999999999999999999999999999% времени, блять, беру лист хуйни, обдрачиваю его нахуй, и накапливаю всё что пережило зиму в другой лист, потом этот обдроченный лист заебашиваю в третий, самый дрочёный, с самой-пресамой писечной датой. Где вы применяете свои алгоритмы?
>>887842 Ну не стукай, я же сразу сказал, что я не настоящий программист. Просто с моими задачами я и без теоретических знаний алгоритмов справляюсь, мне достаточно знать, что нужно все записывать в векторной форме. Поэтому и вопрос, что нужно делать, чтобы стать нстоящим.
Пацаны, на собесе короче спросили, работал ли я с некой asynchio или что то вроде. Я только недавно начал вкатываться в веб питон. Вообще не ебу что это и в чем профит. Просвети плз и по туториалам каким тоже.
+ хочу узнать, в чем профит знать и джанго и торнадо, на джанго сделал небольшой проект, щас хочу на торнадо.
>>888007 >работал ли я с некой asynchio или что то вроде Гугли python asyncio > хочу узнать, в чем профит знать и джанго и торнадо Будешь использовать джанго и торнадо в работе и получать за это деньги.
Привет, всем. Изучаю книгу Introduction to Tornado. Интересуют какие нибудь статьи, которые просто и понятно объяснят в чем суть асинхронности. Ну или если кто сам может с примерчиками то тоже спасибо.
Ребята, на собесе задали такой вопрос мол что такое objects в джанговском Model.objects.all() , и почему , например, не сделали Model.all() просто. Только начал изучать джангу, поэтому не понял как ответить. Спасибо.
>>888079 Какое торнадо, какое торнадо, блядь? Дали вам 3.5, дали вам asyncio, пиши асинхронно, не хочу, хочу костыли.
По поводу того как понять - для начала узнай как реализован этот механизм в ядре и для чего, посмотри на соответствующие системные вызовы, epoll там, вот это все.
>>885650 Петуханы, а что вообще, как там с фрилансом на питоне? Что хотят, сколько дают? У меня нет вариантов в офисы наниматься за неимением оных в моей дыре.
Питоняши, подскажите в какую сторону ползти/что посмотреть по этим вопросам: 1) Scheduling. Есть один сайт на дажнге и есть скрипт, который ползает по БД этого сайта и выдает результат в файл. Нужно сделать, чтобы этот скрипт запускался каждые 6 часов. В учебном проекте по джанге использовался Celery, но интересно, чем анон пользуется для таких задач. 2) Monitoring. Предыдущий скрипт сгенерировал нам новый файл, теперь нужно из него сгенерировать красивый pdf и отправить по почте. Отправка по почте и генерация pdf мне не важна, но вот как можно мониторить появление новых файлов в папке? В той же джанге были сигналы, но а вообще как сделать, чтобы сервер сам мониторил поступление новых файлов и запускал скрипты? 3) Вопрос по джанге: как можно реализовать пост для блога с картинками? Т.е. нужно сохранение структуры типа 3 абзаца - фото и тд. Как все это можно сохранить в БД?
>>888334 1) Celery самый приличный вариант, можно и cron, если никуда деплоить не надо. 2) См. п.1, просто сканишь директорию на наличие новых файлов, может, ещё inotifywatch прикрутить как-то. 3) А какие сложности? Берёшь и без задней мысли сохраняешь. Если связи тебе нужны, то это уж от функционала зависит.
>>888334 Вопрос - зачем тебе мониторинг, если уже есть шедулинг? Запускай остальную обработку когда задание на генерацию pdf завершится, в Celery есть функционал.
>>888079 Книга бестолковая, про шаблонизатор зачем-то больше написано, чем про саму модель асинхронности в Торнадо. Я бы рекомендовал сначала почитать Luciano Ramalho - Fluent Python, конкретно главы про корутины и конкуррентность. Там довольно подробно всё расписано. Далее уже можно читать доки Торнадо, может видео на ютубе найдёшь годные (я не находил). Кукареки не слушай, Tornado зрелый и всё ещё актуальный. Перелезть на asyncio всегда сможешь.
Если опыта немного, то, возможно, будет сложновато. И если долгое время ничего не будет получаться, то лучше переезжай в другой город и устраивайся в офис. Потому что на апворке можешь много драгоценного времени проебать, пытаясь взять заказы, а опыта так нихуя и не получить.
>>888609 Я с высоты своего говнокодирования думаю, что года мало, лучше попердолиться хотя бы еще один. Второй язык я собираюсь учить js, если кто-нибудь меня попробует отговорить, я буду очень рад.
>>888659 ну ходят слухи что компании уровня яндекса иногда набирают. наверное попасть в такой набор не реально, не будучи студентом - отличником с какого нибудь знаменитого физмата страны.
С вами снова анон, пилящий имиджборду. Добрался до задачи ранжирование тредов, первая идея была, добавить в бд колонку score, и за просмотр треда и комменты добавлять некоторые значения, нормальное ли это решение? Стоит ли в самом начале закреплять тред наверху на n-ое время?
>>888792 >{% if im.url%} А ты уверен, что передаешь im в шаблон? А то выглдяит так, будто ты сначала проверяешь, а уже потом делаешь >user.profile.photo as im Хуйня какая-то
Оставь все как на 2 пике, только попробуй im.url, а не im.image.url
Всё, разробрался где я тупой мудак >>888811 Вообще, скажите как лучше: Добавлять юзеру автоматически "No image" дибо просто как у меня в темплейте рендерить картинку?
>>888828 У объекта пользователя и так есть необходимая информация - или путь к картинка или null. Как именно показывать состояние "отсутствие картинки" - дело представления, т.е. шаблона.
хули я из modelForm во вьюхе в def save не могу выцепить залогиненного юзера через request.user? и через User.objects.get(username=request.user.username) и через просто shit_to_db.user=request.user - всё тлен Хотя казалось бы фенечка ну не то что базовая, но блядь используется по пять раз на дню
Пофиксенная версия: хули я из modelForm во вьюхе через if request.method=='POST' не могу выцепить залогиненного юзера через request.user? и через User.objects.get(username=request.user.username) и через просто shit_to_db.user=request.user - всё тлен Хотя казалось бы фенечка ну не то что базовая, но блядь используется по пять раз на дню
Привет питоны, как реализовать распознавание образов с активного окна? Например нужно получать данные о картах на столе по их изображению. Я совсем нуб в питонировании, только доусона осилил, прошу отнестись снисходительно.
views.py def home(request): ..feedbackform = FeedbackForm() ..if request.method == 'POST': ....feedbackform = FeedbackForm(request.POST) ....if feedbackform.is_valid(): ......feedbackform.save(commit=False) ......feedbackform.user = request.user - вот в этом месте я перепробовал всю магию какую знал ......feedbackform.save() ......return redirect('/') ....else: ......feedbackform = FeedbackForm() ..return render(request, 'hui.html', {'feedbackform': feedbackform})
в итоге сообщение добавляется ииииии... всё. Юзера не цепляет никаким хуем может хуй знает, в модели переписать сохранение как-то на self.user'а , у меня уже просто фантазии не хватает понять
>>889110 Если форма без еботни с токенами, джаваскриптом и т.п. - берешь requests, делаешь POST запрос на целевой сервер. Если форма сложная - попробуй selenium.
>>888429 > Hi, > I m looking to have a tool that will first scrape any website(but specifically e-commerce) and draw out information(category, sub-categories, articles/products) in an ordered manner in a csv file.
>>889134 Спасибо большое, последний вопрос: где можно почитать про то, как формируется запрос и как мне сгенерировать запрос со всеми готовыми формами?
Чем обработать строку, чтобы получить безопасный файлнейм? Есть ли годные модули? Нужно чтобы было либерально, со всеми кракозябрами, а не тупо аски. Можно ограничить одной Виндой.
>>889219 >Я хуй понял почему Когда ты вызываешь save(commit=False) у формы, то этот метод возвращает экземпляр модели Feedback, но не сохраняет в бд. Ты его записываешь в переменную feedback, делаешь что-то с ним и вызываешь метод save() уже у экземпляра модели Feedback.
Когда ты делаешь >feedbackform.save(commit=False) >feedbackform.user = request.user то ты пытаешься у экземпляра формы FeedbckForm поменять поле user, но не у экземпляра модели Feedback.
>>889402 Я уже примерно на таком велосипеде и катаюсь. Иероглифы ещё работают, но всякие стрелочки-сердечки уже нет. Тут нужен более-менее объемный модуль.
как передатьв функцию, которая принимает args список, внутри которого лежат элементы, которые и должны восприниматься как эти самые args? Можно изъебнуться так: target_func(args=my_list_with_args) ?
Кто-то умеет в BeautifulSoup? Мне надо вытянуть первую ссылку из первого параграфа определенного класса. Как "достучаться" до класса я понял, а дальше что? Как-то в цикле надо искать <p>? http://pastebin.com/aD83cqqT
for row in file.readlines(): ....main_dict[my_domain_pattern.findall(row)[0]].append(row)
domain_pattern - скомпиленный регексп, main_dict, как видите, перед этой херней я заполнил пустыми списками, чтобы в них аппендить можно было Только цимес в том, что на выходе после обхода файла у меня каждое значение в ключе имеет блядь все подходящие под регексп строки. Сейчас дошло что я каким-то образом может хуякнул во все значения один и тот же словарь?
>>889610 Между list() и [] разницы нет. Ты читал скорее всего про то, что в defaultdict надо передавать list, а не []. Не "list()", а "list". Функцию, создающую список, а не сам список. defaultdict у себя внутре эту функцию дёргает кучу раз и получает кучу инстансов пустых списков. А когда ты передаёшь пустой список аргументом в dict.fromkeys лист всего один и все процедуры выполняются с ним. dict.fromkeys лучше использовать только с иммутабельными значениями - числами, строками и т.д.
>>889632 Мне бы и какая-нибудь ссанина на жс подошла, лишь бы просто безо всяких ебанутых json'ов прикручивалась. Но в идеале конечно что-то что бы само из модели гребло и графиком няшно выстраивало
>>889634 ну так если жс либа, то там без json никак наверное? с бекенда отдаешь json и рендеришь на графике. и чем он вообще плох-то? нормальный же формат.
Прошлый: