— Какие книги считаются лучшими? На слуху чаще всего Лутц, но там очень много воды. Ещё на слуху Марк Саммерфильд, Эл Свейгарт "Автоматизация рутинных задач с помощью python". Эти книги рекомендуют чаще всего, но книги довольно старые, а питон развивается.
— А как учить джангу? Нахожу книги по джанге 1.х, можно их использовать? У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать даже для версий 1.x, т.к. принципы остаются теми же. Но лучше хотя бы с версии 2.0, слишком много мелких изменений в базе.
— Какие веб-фреймворки стоит учить в начале двадцатых? Что бы не говорили, Джанго живее всех живых и умирать не собирается (и Django REST Framework), очень перспективный асинхронный FastAPI, асинхронный AioHTTP. Flask ещё где-то используется, но уже legacy. Прочие фреймворки или у нас экзотика, или это вымирающее легаси как Торнадо.
— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать Вот, пожалуйста, та же самая программа, но частично переработанная под язык Python: https://www.composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом? Ролик на американском языке про многопоточность и асинхронность, построение своего event loop с нуля, помогает понять, как устроена асинхронность внутри: https://www.youtube.com/watch?v=MCs5OvhV9S4
— Как можно без лишней возни ускорить программу на питоне 1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь. 2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.
— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
DJANGO. Проясните пожалуйста, я не совсем понял. Как в джанго мы работаем с методом, если не хотим переходить на другую страницу. Я делаю приложение по учебнику. Есть пара таблиц и страница, допустим, A. На странице А есть форма, где в поле action страница B. Страница B запускает метод bm (иногда при этом принимая геты. Метод возвращает HttpResponseRedirect("/A").
Я чувствую, что все это какая-то неправильная практика. Хочу добавлять этот функционал на любую другую страницу. Наверно, не стоит передавать название страницы переменной, должен быть способ получше. Какие есть альтернативы? Как редиректить из метода на первоначальную страницу?
>>3055443 >Хочу добавлять этот функционал на любую другую страницу. Я имею в виду, сейчас я прописываю путь обратно на страницу с формой, константой в методе, который вызывается из urls. Явно должен быть способ получше.
>>3055475 Приведи начальную свою дату к дейттайму потом прибавь к нему таймдельту 1день, переведи эту дейтдату к нужному тебе формату (я не понял что у тебя написано)
>>3055535 хуйней ты занимаешься. исправлять ошибки за пользователя - моветон. а если в day напишут 99, а -105, а если в месяце ошибутся? не туда ты идёшь анон - обрабатывай ValueError и выводи пользователю о необходимости исправить ошибку.
А чё реально ещё не в любом инструменте предусмотрен инпут для даты? Или всегда же можно дать пример формата переводить инпут в дейттайм по этому же формату и кидать обратно в юзеря если он хуйню написал. Нет?
>>3055728 Что ты несешь дегенерат? Каком любом инструменте? У встроенных библиотек всегда были методы принимающее строки в формате заданного шаблона. Я хуею откуда столько барист навкатывалось, которые сами не понимают что несут.
Функция лен так и должна себя вести? Разве лист в листе это не отдельный элемент? Я думал она будет считать все элементы в листе вне зависимости от их типа будь то число строка или список. думал длина будет 5, а не 9
Привет! Заебался уже искать инфу об этом: Есть массив из 8 флоатов. Сколько блять он весит в памяти? Суммарно. Сам массив - 120 байт. Флоаты - 8*8 байт. А референсы в массиве? А прочая объектная нагрузка? Где про это почитать? Документация будто для дебилов написана.
>>3056314 один float = 24 байта список из 8 элементов = 120 байта итого: 144 байта
кортеж из 8 элементов = 104 байта итого: 128 байт
инфа от sys.getsizeof но метода такая себе, прежде всего из-за таких вопросов: непонятно когда останавливать просчёт - идём до object? учитываем ли дедупликацию и ссылки на одну и ту же область данных? 47
Вкатун скуф в треде. Накопилось 30 книг по питону, линуху, сетям и справочники учебники джанго пхп регулярки вершины мастерства и т.п. ни разу из них ничего не открыл за год есть МЯУы?
>>3056594 >Накопилось 30 книг по питону, линуху, сетям и справочники учебники джанго пхп регулярки вершины мастерства и т.п. МЯУ, но я всё-таки осваиваваю понемногу. Полгода прохожу курсы и читаю книги по основам пайтона, сейчас ебусь с фласком, скоро возьмусь за джангу.
Спешить особо некуда, один хуй на работу всё равно не возьмут, чисто для души всё это учу.
>>3056971 А теперь подумай что из этих 3к человек на одно место обязательно найдутся 30 илонов касков, Павлов буровых, Биллы герцовых, и Марков цукерковых Сможешь с ними конкурировать?
>>3056969 Да, там про это и написано. Дал пример юзера как надо заполнить данные, попробовал перевести в дейтайм п этому шаблону, получил ошибку - плюнул в юзера что он формат не выдержал
>>3057115 так это заводчане и откликаются, им что на заводе обменивать пальцы на 25000 рублей, что в тёплом офисе помощником джуниора кнопки нажимать. но во втором случае хотя бы есть перспектива дорасти до заветных 300к, а в первом перспектива только на вал намотаться.
>>3057277 Ну я откликнулся на такую вакуху. У меня опыть говнокодерства в разных языках, несколько лет на питоне, гитхаб с кучей моих личных проектов, мои проекты там лайкают и форки делают. Есть диплом с курсов лол, но диплом этот гос образца гос образца. Чому Кабан Кабаныч тебя должен брать а не меня?
Я дебил медленно решаю задачи. Особенно те которые требуют производительности. Как фиксить? Алгоритмы плохо понимаю. Там какая-то линейная алгебра, с которой у меня в университете не особо хорошо было. Хотя большая часть тех задач за что я берусь на кодварсе я решаю. Но через жопу говно кодом в квадрате ни в какое сравнение с элегантным решениям гениев с комментариев. Лишние переменные сравнения там где не надо. Использование методов там где можно было бы избежать причин для их использования. Очень не оптимизировано. Решаю в основном 5 и 6 ку. Решил штук 20 4 ку и одну вроде 3 ку. Но все равно часто туплю даже над 7 ку бывает. Потом приходит озарение. На собеседовании дадут решать задачу за 5 минут. А я смогу решить только за 5 часов. Сука ненавижу свой тормозной мозг. Хотя решаю уже несколько месяцев почти каждый день. Как исправлять? Я безнадёжен? Скуф 30 лвл
>>3057746 >Как фиксить? Никак. Я думаю когнитивные свойства и абстрактное мышление формируется в районе совершеннолетия, а в этом возрасте уже только угасает к сожалению.
>>3057746 >Как исправлять? Только опыт поможет тебе. Ебашь ебашь ебашь ебашь.
Как получить опыт? Необходимо иметь мотивацию. Делай свой проект, "набиваший шишки", исправляй. И постепенно научишься. И не стесняйся заглядывать в чужие исходники.
>>3058056 Пиздеж, просто с возрастом обычно растет лень и нежелание въебывать ради сомнительных перспектив. Когнитивные возможности может и падают, но не критично и очень индивидуально для каждого.
Проблема всех вкатунов в том, что они сами не знают для чего вкатываются. У них нет мотивации кроме прогрева от инфоциган "бросай завод и заработай 300к в наносек за неделю". Вся доска в вопросах "напсиал хэло ворлд" а че дальше делать, бля не понимаю я эти ваши онотации линейная алшебра какая-то хрюк пук кудах. Нюфани не понимают, что литкод это просто веселые ребусы для погромистов написанные в синтаксисе языка. Это как решать логические задачки "что тяжелее пуд сена или пуд железа" в надежде в итоге стать великим писателем и написать поэму. Это так не работает, только практика даст тебе настоящий опыт, когда ты сталкиваешься с задачей и ищешь решение. Но в этом то как раз и проблема у нуфань нет мотивации, они хотят 300кк в наносек, а кодить им не интересно, они не пишут в стол не развиваются для себя, только литкод дрочить и остается, толкько вот литкод тебя как погромиста не развивает.
>>3057746 >медленно решаю задачи >берусь на кодварсе Бля так это СПОРТИВНОЕ программирование. Оно специально сделано, чтобы ломали голову и медленно решали. В сайте не было бы смысла, если всё быстро и без головняка решалось бы. Нахуй тогда этот сайт нужен.
>>3058949 Программисты-анальники, что предали философию решения задачек и написания никому не нужного кода, ради написания веб приложений и зарабатывания денег
Гнались на питон что там зумеры питохонеры огромный отклик создали идите в яву. А в яве глянул ща на хх там тоже сотни откликов 🐑🤡 похоже уже никуда не войти. Придется возвращаться обратно на шахту 😭
>>3058732 Двачую. Не знаю ни одного алгоритма кроме бинарного поиска. Задачи на кодварсе выше 6 ку вообще решить не способен, даже понять. Но зато я работаю макакой в отличии от вкатунов знающих алгоритмы, архитектуру компьютера, линейную алгебру и комбинаторику
>>3055259 (OP) httpd = HTTPServer(('localhost', port), HttpGetHandler) Исключает использование сервера извне Подключившись к серверу извне и отправив GET http://localhost/service?...
>>3060186 >Исключает использование сервера извне Да, локалхост работает только на локальной машине. Если у тебя сервис слушает по локалхосту (а не 0.0.0.0), то значит с другой машины ты к нему не сможешь подключиться никак. Иначе ставь 0.0.0.0, ну или специфичный ip, это для более хитрых случаев
Заранее извиняюсь за платину Держу дома сервер, хочу надрочиться писать на питухоне и вкатиться в нормальные боты для телеги, до этого раздводил педофайлов в 2018-2020 и писал хуету вроде чатботов, считаю для себя это золотым временем, в шараге всегда был при деньгах.
Щас просто хочу вкатиться чтоб попробовать пописать нормальные магазины для телеги по типу каталога запчастей с заказами и чатом техподдержки, и желательно связав с базой 1С.
Под рукой есть только домашний сервер, мобила на ведре откуда я сервер настраивал по ssh, и такая миниBT полноценная клава похожая на джойстик.
Попробовал пописать через vim с мобилы на клаве, пишется быстро, вроде нормально, быстро наклепал простейшего чат бота.
Хватит ли vim для удава? Просто я на работку ебал тащить ноутбук, да и ему там пизда быстро придёт, много железной пыли, хотя я на работе ничего не делаю, из 8 часов я 3 часа только работаю, вот решил попробовать хуйней пострадать на работе.
>>3062793 Алсо сервер это и есть ноутбук, там просто ftp, smb, торренты, shadowsocks, сервер кубача и jabber сервер держится, он у меня 24/7 запущенный стоит, им дистанционно ещё два человека пользуются, и в жабе целая конфа.
>>3062740 >Тимофей Хирьянов противный он какой-то, но ХЗ, где найти расшаренный курс, чтобы ещё из какого-то приличного заведения для приличной аудитории, а не менеджеров по розничным продажам телефонов
>>3063168 >Python норм для микро сервисов? Не хуже, чем Go? Микросервисы решают не техническую проблему, а проблему менеджмента. Безразлично на чём их писать. Это просто способ дать нескольким командам возможность работать независимо друг от друга. В техническом плане ничего не прибавляется и не убавляется. Для компании удобно то что можно какой-то отдельный сервис отдать на аутсорс индусам. Язык любой абсолютно, какая разница у тебя брокер сообщений стоит а-ля кафка, который будет рассылать событиям другим сервисам и всё.
Господа, есть локалка на 5 машин, нужен маленький сервер, чисто обрабатывать входящие сообщения и отправлять ответ, на sockete вполне норм написать? или есть что поудобнее и попроще? На питоне пишу на любительском уровне
Анон. Сижу в автотестах на почти 300к и чувствую, как деградирую, хочу поразвиваться в языке и архитектуре. Что бы такого почитать/посмотреть посоветуй (без джанги/фласка пожалуйста)? Чувствую, что к лету опять подкрадется выгорание. Прошлое еле пережил, переключившись и подрочив мобилки на dart + flutter. Посмотрел на дата сатанизм и машоб, но ебал в рот матан, если честно. Хочется инетересно, а не заебаться в усмерть. Выручай, я верю в тебя
>>3063802 >Что бы такого почитать/посмотреть посоветуй (без джанги/фласка пожалуйста)? Wiegers K. Software Development Pearls...2021 PDF Serra J. Deciphering Data Architectures...2024 Network Architect's Handbook by Alim H. Ali Haviv Y. Implementing MLOps in the Enterprise. A Production-First Approach 2024
>>3063828 За архитектурные спасибо. Может что-то посоветуешь из языка? Какой-нибудь актуальный кукбук или типа того. Может что-то по параллельному программированию или интересным реализациям/лучшим практикам в разработке. А то зачастую в тестировании хуй кладут на это. Хотя на прошлой работе со мной в автоматизации работали сильные разрабы и было интересно с ними сложные архитектуры строить и поддерживать
Есть кто работает докер + вим? Сейчас работаю на вс код, и там подключаюсь к интерпретатору питона в образе для автокомплита. Как сделать так же для вима?
>>3055259 (OP) Всем привет, возникли проблемы с созданием бота Что и где я только не смотрел, но точной инфы мне не выдавало Даже читал книжки по поводу этого, но не нашёл точного ответа. Вообщем по логике, бот должен слушаться человека у которого есть права админа(На фотографии показан код если что), но бот может выполнять команды кого угодно, даже пользователей без админских прав>>3055259 (OP)
>>3064046 Разрабам, которые ценят своё время и хотят быстрее написать код, достаточно VS Code. С Vim будешь всегда возиться, это такой Arch Linux из мира редакторов.
>>3064261 Вс пидорнул поддержку контейнеров на базе 11 дебиана. Я прекрасно умею работать и там и там. С аимом только работа с интерпретатором в контейнере не задалась. Вот и спрашиваю
>>3057514 > У меня опыть говнокодерства в разных языках, несколько лет на питоне, гитхаб с кучей моих личных проектов, мои проекты там лайкают и форки делают. Есть диплом с курсов лол, но диплом этот гос образца >Откликнулся на вакансию 25к Нихуя ты тупой. А ведь кто-то говорит, что погромисты умные, профессия интеллигентов.
Сап аноны, подскажите допустима ли такая реализация сортировки вставками или я ебаный даун? Если что писал сам помня просто её принцип, но моя реализация отличается от всего что в гугле, там чуть по-другому и везде по 3 переменные в функции
Занимаюсь этой хуйней чисто для удовольствия уже, на мысль вкатиться практически уже забил
И ещё такой вопрос, обычно я завожу счётчики сравнений и перестановок, но вот тут случае отсортированного массива я не понимаю в какое место кода прикрутить счетчик сравнения, хотя очевидно в условии цикла while оно всегда происходит хотя бы 1 раз на каждой итерации
>>3065142 Может он занижает ЗП на которую претендует из за того что нет опыта в трудовой, или может он просто омежка, боится что не справится. Но так или иначе это не как не коррелирует с умственными способностями, это всё из области социальных навыков. Получается тупой тут только ты т.к. не понимаешь этого.
>>3065168 > подскажите допустима ли такая реализация сортировки вставками Допустима. Не является оптимальной (обычно используют бинарный поиск для того чтобы найти место в отсортированной части массива), но допустима.
> моя реализация отличается от всего что в гугле Каждый дрочит как он хочет.
>>3065169 А чем тебя встроенная сортировка не устраивает, она работает на вставке либо на слиянии в зависимости от упорядочивания данных, если ничего не путаю?
>>3066577 Слушай, ты прав. Поресерчил - там в 2-ой версии был продвинутый квиксорт, потом тимсорт, а начиная с версии 3.11 вообще поверсорт для больших массивов или бинарные вставки, если длина < 64
Индексы 1,2,3 - удобно брать данные по ним. Но! Иногда нужные данные меняют индекс и надо переделывать значение индекса в коде. Это неудобно и всё ломается, когда такое происходит. Как тогда брать данные из таких json? Допустим мне надо найти "TPXUSDT" и узнать значение "0.038335". Получается циклом надо проходиться по json? Анон, покажи кодом, как это примерно будет работать. Всякие GPT выдают фигню с поиском по ключу, а тут надо по значению искать.
здарова мужики, я молодой вкатун-студентик, чуток поигрался с PyPy, рантайм в раз быстрее, в итоге назрел вопрос: почему его не используют везде вместо CPython? Преподы ниче внятного не сказали
Как я понимаю, в python есть альтернатива нативным методам из java(тот же numpy). Дайте, пожалуйста, хороший гайд или хорошее руководство по нативам в python. В разных книгах про такое информации толком нет, но иногда просто упоминание.
Плюс разработку CPython поддерживают крупные корпорации, а у PyPy в спонсорах из более-менее узнаваемых имён только Mozilla и Couchbase засветились насколько я вижу, да и то видимо перестали спонсировать. Поэтому и доверия больше к CPython. Ну и ещё доверия к нему больше потому что тупо на порядок более популярная и как следствие более обкатанная и проверенная имплементация
>>3063168 Думаю, что питон для бекенда в целом становится все менее популярным.
>>3063183 В целом соглашусь, но все же в Go побольше всяких фишечек для работы с concurrency кодом. И GIL нет. Плюс типы и компилируемость прямо из коробки. Я вот прямо сейчас пытаюсь адовое монолитное легаси на mypy перетащить, получается очень хуево пока что.
>>3069851 Мы тоже с этим столкнулись на питоне и гоуленк не помог. На последнем слишком много велосипедов приходится писать/интегрировать. В итоге вернулись на джева-спринг, лол. Всё-таки это пока безальтернативный по своей зрелости фреймворк. 7
Кто-нибудь добавлял к джанго-сайту django-prometheus, чтобы собирать метрики? Я добавил, потом поднял графану, импортировал туда дашборды с сайта графаны. Все красиво, но цифры какие-то нереальные. Графана показывает, что у меня где-то под 200 запросов в секунду, хотя если посмотреть в лог nginx, то там будет 4-5 запросов. У django-prometheus все настройки по умолчанию, может там надо бакеты как-то по-умному править?
+>>3070073 Проблема в том, что под 1) питон написали неимоверное количество библиотек на научную тематику, и люди на это завязаны, решения на этой завязаны, команды и .т.д. 2) Практически нет высоко абстрактных фреймворков на С++ 3) Хайп представляет питон как что-то очень простое, а С++ - как что-то очень сложное, ну и соответственно никто особо не разбирается 4) Компиляция С++ с геморроем заголовком, прагм, макросов, билд тулов и линкинга библиотек не прибавляет привлекательности. Нахрена во всем этом разбираться, если мне просто посчитать матрицу? 5) Управление памятью в C++, в том числе автоматическое, требует времени на вникание и разбирательство, никому это не надо.
По итогу людят нужен язык с прозрачным управлением памятью, простейшей линковкой билиотек и билдом, многопоточный, в народе известный как простой, желательно с уже готовыми научными библиотеками, и с гайдами как использовать эти библиотеки. Это java/groovy/kotlin (через слэши потому что интероп).
>>3071812 Ну это очевидно приколы из АОП, то есть подключаемые перехватчики вызова, например удобно замерить сколько вызов длился, выполнить какой-то посторонний код при выполнении функции, например подсчет ссылок какой-нибудь и всё в таком духе. Конечно, всё это можно сделать непосредственно вызовом методов, но с этой штукой удобно подключать/отключать такую функциональность.
>>3071812 Как анон сверху сказал, в него удобно заворачивать всякие приколы дополнительные к функционалу. Например логеры часто делают через декораторы, так как это позволяет не засорять лишними принтами функцию. Также много функционала реализовано через интерфейс декоратора в разных либах, типа aiomisc, fastapi, redoc/swagger и прочее. Это просто удобно
>>3072664 Согласен, детская игрушка какая-то, не то что Паскаль. Я на нём серьезные вещи пишу в нашем НИИ, да и зарплата серьезная, целых 30 тысяч рублей. Наше НИИ это вам не шутки, чтобы здесь за тыканье в клавиатуру такие деньжищи платили надо лет 10 отпахать лаборантом помощником оператора ЭВМ. Ну, а что питон, про питон некоторые коллеги даже не слышали, оно и верно, если язык мало пригоден к работе, то о нём и знать необязательно.
>>3058732 Я питон первый раз в глаза три месяца назад увидел, за это время придрочился на пандах фреймы вертеть, в дб стучаться, довелось спарсить пару рейтинговых аггрегаторов и реплицировать рейтинг на своей стороне под задачу, плюс манагерам в офисе десяток отчетов автоматизировал. Понятно, что это не разработка и вообще не особо программирование, а скорее приправа к экшелю и эшкуэлю, но я погромистом никогда и не планировал становиться и мне банальное НАДО очень оптимизировало трек обучения без курсов и книжек.
>>3073066 Чтобы 300к наносеки-сеньоры не так сильно травили меня на анонимном форуме для прыщавых социопатов, конечно же.
На самом деле я не оправдываюсь, а лишь отмечаю, что в ограниченные сроки можно выучить какие-то утилитарные вещи когда понимаешь, какой именно костыль тебе нужен и умеешь в английский, но это вряд ли существенно приблизит заветные 300к/наносек и уж тем более с этим не справятся шестимесячные курсы без боевой практики и привязки к продукту/сфере деятельности.
С наибольшей вероятностью тут никто не сталкивался, однако спрошу, какая то проблема с гитлабом и , по видимому.
Дано: PyAutoGUI и OpenCV. Их задача в частном случае - отыскать на текущем экране какой то элемент по точному совпадению, делается скриншот всего экрана затем на нем ищется картинка (прямоугольная, с четкими краями), в случае успеха возвращаются координаты места где было найдено совпадение.
Суть проблемы: локально все работает отлично, код запускается и все искомые элементы находит. Помимо локального окружения есть тестовая машина, на ней стоит гитлаб раннер который запускает код. При пробеге часть элементов находится со 100% шансом, часть элементов не находится ни при каких условиях, независимо от искомого изображения, будь оно больше или меньше. По ощущениям - не может найти элементы связанные с дополнительно открывающимися окнами внутри приложения. Непонятно какую роль это все играет, потому что делается скрин всего экрана, тем не менее. На скринах в процессе все эти окна отображаются, то есть должны быть найдены.
Из того что уже пробовал но не помогло: выставил одинаковое разрешение на обеих машинах, привел изображения к одному цветовому пространству, использовал пиксельные шрифты для уменьшения шума, попробовал несколько разных библиотек и методов поиска - всегда валятся на одном и том же этапе, сверил библиотеки и переменные path - все одинаковое.
Мда, раз в год в тред питонячий захожу и все как всегда — 90% постов от бездарных вкатунов, которые надувают щеки и обсуждают с умным видом плюсы и минусы питона, при этом оставшиеся 10% реальных вопросов почти всегда остаются без ответа. Грустно
>>3073985 >Сломанный рынок труда Не сломанный рынок, а рынок труда работодателя. Это нормальная ситуация, которая наблюдается во всех сферах, и в айтишке неизбежно со временем она настанет. >технологический застой Увеличение числа разработчиков не может привести к технологическому застою, даже если средний их уровень понизится. >превращение программирования в массовую доступную профессию. А минусы какие? Нет возможности тешить своё ЧСВ, придумывая священную касту, в которой ты якобы состоишь?
нужно написать CRUD-парашу на django инф. система для записи студентов на элективные курсы, с фильтрацией и все такое с питоном знаком, с django нет, за сколько смогу осилить и смогу ли?
>>3073996 >Не сломанный рынок, а рынок труда работодателя. Это нормальная ситуация Вкатуны не нужны, ситуация ненормальная, работодателю очень тяжело плавать среди огромных толп совершенно левых людей.
>>3073985 >превращение программирования в массовую доступную профессию. нет такого, профессия скорее усложняется
>>3074116 Судя по тому, как ты задаёшь вопрос и что вообще ты его задаёшь, ответ "нет, не сможешь"
>>3074116 >с питоном знаком Поясни, что это значит? умение написать программу из одной строки print("hello, world") тоже можно назвать "знакомством с питоном"
Хотя чего я спрашиваю, и так всё ясно. Но ты можешь всё-таки попытаться, мой совет, смотри в документацию Джанго, там есть в том числе специальные разделы-пособия для начинающих.
>>3074122 знаю базовый синтаксис, включая ооп ну, есть прям конкретный вопрос существует 2 таблицы в бд - студент/преподаватель Как реализовывать функцию авторизации и аутентификации? Пользоваться встроенным в джанго функционалом или писать какой то свой бэк для логина?
>>3074144 Ты работу какую-то вузовскую делаешь чтоли? Забей хер, залей все в чатгпт и сиди кайфуй. Он такое напишет запросов за 15. Юзай все джанговское, там и аутентификация, и авторизация, и ормка. Опять же, гпт в помощь
>>3074120 > Вкатуны не нужны, ситуация ненормальная, работодателю очень тяжело плавать среди огромных толп совершенно левых людей.
Ну врядли, если у чела есть подтвержденный опыт разработки - то он не левый, можно рассматривать на хайр. Чувствую, огромное количество вкатнуов отклеится как только на хх подвезут подгрузку выписки из трудовой с госуслуг
>>3074757 Мне как бы выбирать не приходится, на чем сказали на том и гребу. Да кстати я нашёл как делается это говно. Кому надо вот: https://docs.huihoo.com/pyqt/PyQt5/qml.html# Альсо если погуглишь доки по pyqt там блять нерабочий пример который выдаёт ошибку, и примечание: "автоматически сгенерированго из примера на c++". Сука что за криворукие уебаны. Ненавижу этот ебучий qml.
>>3073099 >а лишь отмечаю, Всё равно не понятно что ты пытаешься этим сказать. Похоже на то, что ты просто пришел похвалиться что за 3 месяца синтаксис выучил и скриптики для автоматизации наговнякал? Ты сейчас выучил базовые правила иностранного язык и написал на нем сочинение "как я провел лето". Ну поздравляю. Ты сделал свой первый шаг. У всех нуфань случается этот ВОСТОРГ от первых успехов, когда все их маленькие дела получаются, какие раньше казались компутерной магией, и кажется что море по колено. Все, наверное, через это проходят, тем более питухон, пожалуй, имеет самый низкий порог вхождения, не зря его справедливо называют ненастоящим скриптовым языком для школьников, типа AutoHotKey.
>Советую Курячего. нет глянул, он сам начинает с того, что его лекции не нужны, всё есть в официальной документации Python tutorial, а его лекции просто потому, что нужны лекции
минусы его лекций: много воды примитивной с одной стороны, при этом подразумевается, что слушатель уже умеет программировать на чём-то, например на Си, с ИТ дружит, ему надо что-то про питон узнать
>>3075035 вообще я о том, что Хирьянов неприятен, но ценен тем, что его лекции, что в шапке, про алгоритмы, про сложное алгоритмическое программирование с использованием питона. Это реально полезно
А Курячий просто про синтаксис питона и может некоторые моменты реализации для тех, кто уже умеет программировать
Я могу понять, зачем смотреть Хирьянова и реально тратить на него время, но Курячий какой-то совсем бесполезный
>>3075152 Потому что stdout не прокидывается в терминал назад, потому что ты запускаешь программу как даун через васянский скрипт в идешке, а не как нормальный человек. Запусти через python3 файлнейм.py и все будет работать
>>3075234 перезагрузился, теперь файлы созданные через IDLE Shell открываются автоматически в VS code в аутпуте показывает результат. Как это сработало хз
>>3076965 >Через атрибуты Это как используя класс или что-то другое, приведи пример плес. >через глобальные флаги, через лок трединг Ну это практически то же что и через if с переменной. Хотя через лок трединг похоже правильнее всего, если дохуя вызовов.
>>3070780 Джэва/kotlin хороший выбор когда есть куча запутанной бизнес-логики, сущности, походы в базу, много крудов.
Гоуленг неплох для инфра задач, где нужно всякие кубернетис операторы писать или там сетевой трафик хитро перенаправлять.
Питон хорош для всего, но только поначалу - если это прототип или пруф оф концепт, который нужно быстро на коленке собрать, чтобы показать кабанам и получить добро на дальнейшее развитие.
Сам сейчас работаю на довольно зрелом проекте, который все хотят с питона переписать на kotlin или go, но нет денег и ресурсов на такое. И очень сильно страдаем. Mypy пока что очень хуево получается встроить, во многих критичных местах предыдущие разрабы почему-то решили, что словари вместо полноценных классов это хороший выбор, из-за чего во многих местах просто адовая гора мусора скопилась, которую почти невозможно нормально разгрести, так как хуй поймешь что там внутри этих словарей лишнего лежит. Ну и алсо у нас утечки памяти и потоков, которую за несколько лет так и не смогли найти и поправить, в итоге просто по расписанию раз в полтора часа рестартим все, чтобы не было OOM'ов.
>>3077761 Сужу по моему окружению и в целом по рынку вакансий в ру бигтехе (вк, яндекс, сбер, озон, авито, yadro, okko и прочие) Питона там не особо много, в вакансиях питон это тесты или ml/ds в основном, а не разработка.
В проекте где я работаю, почти все сервисы были изначально написаны на питоне и джаве. Сейчас питон практически отовсюду у нас выбросили, переписали на го. Лично мой сервис довольно старый, был быстро написан на фласке где-то в районе 2015-2016 годов, сейчас мы его хотим на несколько сервисов на go/kotlin распилить.
Новые сервисы на питоне в моей конторе уже не стартуем совсем, максимум - это прототипы и proof of concept, которые потом переписываются на компилируемых языках с статикой.
>>3077761 И кстати скрин у тебя хуевый - laravel и express местами попутали, так еще и непонятно в чем популярность измеряется. Какой-то инфоцыганский наброс для рекламы курсов по питону.
А руби это вообще смех, на российском рынке он подох чуть ли не полностью уже. Легаси конечно есть везде, но на легаси ты нормальным спецом никогда не станешь. Так и будешь ворочать ложками застарелое говно мамонта вместо нормальных и актуальных продуктов на рынке.
>>3080318 Потому что по-хорошему вместе с питоном нужно знать тонну вузовской математики на хорошем уровне + непосредственно уметь в эти самые ML/DS. Бекенды на питоне сейчас писать стало не модно, так как для этого лучше подходят типизированные языки.
>>3080367 Ну как первый язык программирования, чтобы научиться писать циклы и условия с массивами сойдет.
Дальше нужно что-то конкретное брать. Питон в бекенде по моему только в Яндексе из российских крупных контор остался. Да и то, его там на го пытаются заменять всеми средствами.
>>3080386 Нормальная тема, но только слишком сложно. Плюс нужно становиться экспертом в какой-нибудь конкретной области. Видеонаблюдение, сетевой трафик, компьютерное зрение, графика, инфобез итд.
Если просто деньги хочется получать и какие-нибудь круды писать в банке, то Java/Kotlin имхо самый нормальный выбор.
Блять. Я не python программист да и вообще не программист, но понадобилось написать скрипт, который запускает 10 экземпляров программы.Проблема такая: когда закрываю vs code, то все экземпляры программы закрываются. Как этого избежать? Подозреваю, что заместо wait() надо что-то другое написать, но я чёт зне нашёл. Код:
programms = []
for i in range(10): programms.append(subprocess.Popen(['path'])) for programm in programms: programm.wait()
>>3080358 >Бекенды на питоне сейчас писать стало не модно, так как для этого лучше подходят типизированные языки очередной типошизинг Бекенд более чем популярен в бекенде. Типизация нужна для вычислительных задач, для бекенда же нужно взаимодействие с другими программами и сервисами, с ОС.
Для бекенд-специальностей на питоне в большинстве случаев подразумевается приличное владение линуксом, чтобы ты его более-менее понимал и дружил. C# это про виндовс-платформы, но бэкенд обычно линуксовый
>>3080318 Питон лишь инструмент. Конечно другие языки тоже, но для скриптовых языков это особенно верно. Тебе надо попутно знать другие предметные области
Ну и очень много пытается вкатиться именно в питон, конкурентность среди вкатунов намного выше, чем на других платформах, менее хайповых.
Кто-нибудь читал пикрилы? Блядь, насколько же небо и земля в плане понимания авторами, как писать книги по питону. Я их взял одновременно с твердым намерением сначала прочитать книгу по линейной алгебре, потому как думал, что она сложнее, а потом на чиле книгу по сайпай. В книге по линалгебре автор изначально настраивает тебя на обучение, начинает с легких тем, все нормально структурированно, есть репозиторий на гите, где если что в самой книге не понятно - становится понятно в коде. Да, в конце немного душновато стало из-за объема теории и всяких отсылок к прошлым главам - но это все тупо можно повторить.
Так вот, потом я взял вторую книгу(по сайпай) - и чуть не блеванул уже после первой главы, настолько все контрастно по сравнению с первой - это не книга по сайпай, а какая-то мешанина из сайпая, нампая и матана с непонятной структурой. Такое ощущение, что это отрывки диссертации, а не книга. Вот нахуя мне эта медицинская матчасть, если я не медик? Нахуя мне разгребать всю эту кучу пользовательских функций, пытаясь понять, что хочет автор? И ладно бы там нормальный репозиторий еще был, но там хрень какая-то, а не репозиторий...
Короче, вот такие дела, анончик, книга книге рознь.
Меняю работу, хотел спросить в треде может кто хочет пойти на удаленку: FastAPI, SQLAlchemy 2.0, Pydantic 2. Особо не дрочат, но для меня там уже никакого роста нет. Бывает 2 часа работаешь, а потом в потолок плюешь. Могут быть задачки типа Keycloak настроить, создать запрос в БД Postgres/Clickhouse. Созвоны только понедельник-пятница на открытии и закрытии спринта. Самодурство присутствует как м везде, но в малом количестве. Мне надо уже кому-то свой говнокод передать
Вычислительные задачи - там везде матрицы и векторы с флоатами, какие там еще другие типы могут быть.
А вот в бизнес-логике без нормальных типов никуда. Ты как свои сущности без типов собрался описывать? Я сейчас ебусь с легаси монолитом 8 летней давности, типов очень не хватает. Типы нужны, компилируемость тоже нужна. Чтобы узнать, что ты написал говно еще на этапе компиляции, а не когда оно ночью на проде стреляет. Пытаемся купировать проблему при помощи mypy, но получается пока что хуево. Босс говорит в последнее время про микросервисы, буду просить бюджеты и время, чтобы основную логику вынести в 2-4 сервиса на Go или Kotlin. Питон на бекенде неплох только для быстрых прототипов, поддерживать годами большие проекты на нем крайне сложно.
>>3081075 Я хз при чем тут C#, но даже на нем новые проекты крутятся на линуксовых контейнерах. Винда - это windows forms по большей части, либо очень старое легаси на .net framework из середины 10-х годов.
>>3084556 >Не могу вкатится уже третий год >учу питон бэкенд А что конкретно ты учишь? Алсо вкатываться в питон бекенд я сейчас крайне не рекомендую, когда есть более популярные в бекенде стеки технологий.
>>3084228 >Как это безобразие изучать? Какое-то громоздкое такое. Мне сложным показалось, ну скорее запутанным. 2.0 уже яснее, к ним стало просветление приходить или наняли нормального документоведа. Но язык документации по прежнему дремучий и косный. Сразу в 2.0 вкатывайся, срать на легаси.
Подскажите, как лучше делать. Есть ~1000 файлов. Их надо постнуть в 2 разных эндпоинта, получить ответы, сагрегировать мета-инфу и построить отчетики, в условном сеаборне.
1) Если делать последовательно: итерируемся по списку файлов прочитали файл, сделали пост 1 (~2-3 сек), сделали пост 2 (~5-10 сек), зааппендили в глобальный датафрейм построили отчетики
2) Если делать через тредпул: создали тредпул условно с 10 потоками закинули в тредпул функцию, которая прочитает файл, сделает пост 1 (~2-3 сек) и пост 2 (~5-10 сек), вернёт локальный датафрейм итерируемся по списку файлов и сабмитим после отработки тредпула заапдендили все локальные датафреймы в глобальный датафрейм построили отчетики
3) Если делать через асинк: чтоб он сразу 1000 задач не наплодил, нужен семафор? чтоб чтение файлов не блочило эвентлуп, нужен aiofiles? оно типа тру асинк или только имеет асинк интерфейс, а под капотом run_in_executor? т.к. мне надо единожды прочитать каждый файл, но дважды отправить его, достаточно ли это также всё обернуть в одну асинк функцию, а не ебаться с передачей контекста из одной таски в другую таску и т.п.? всю итоговую цпу-задачу с отчетиком надо делать также в run_in_executor или можно стопать луп и спокойно будет работать синхронный код в мейн треде?
В 1 случае всё работает, но долго (текущая реализация). В 2 случае вроде бы кажется, что будет работать быстрее, но т.к. я всё равно делаю оба запроса в рамках одного потока, то с течением времени тредпул забьётся и будет долго обслуживать оставшийся список файлов + могут быть проблемы с обработкой ошибок. В 3 случае только вопросы, т.к. дальше фастапи, склалхимии и редиса с асинком не работал.
>>3063168 а) микросервисы не норм, если они у тебя не по-настоящему независимые друг от друга б) ну ты сравнил интерпретируемый и статически-компилируемый языки конечно. Го конечно будет быстрее >>3084802 Если ты секунды уже считаешь, то тебе нужен настоящий параллелизм, можешь котлин попробовать https://kotlinlang.org/docs/data-science-overview.html
А вообще ты сильно выиграешь в производительности, если можешь убрать из этого процесса сетевые вызовы (я так понимаю - микросервисы?)
Так что как лучше делать: - Язык с настоящей параллелизацией - Обрабатываешь файлы пачками по 10-20 в параллели - Посты или не делаешь вообще или только в конце на всё
Питонисты, поясните мне по хардкору. Есть я и моя мечта - на досуге реализовать один проект, который работал бы в вебе и на andoid/os. Он довольно сложный, как мне кажется, но почти некоммерческий. Я правильно путь себе подобрал - изучать Питон для этого и соответствующие библиотеки и фреймворки?
Потребуется ли добавить Go в это блюдо знаний? Думал добавить Dart+Flutter, но по-моему Питон + какой-нибудь Kivy или BeeWare дадут результат не сильно хуже.
Другими словами, мой вопрос - что помимо собственно Питона мне нужно изучить, чтобы реализовать свою мечту?
>>3085034 Извини, бро, идею я сказать не могу. Это мое ноу-хау, вроде как. По нагруженности - это что-то среднее наверное или даже ниже. Мне не с чем сравнивать, но примерно так чувствую.
>>3084802 Асинхронное чтение файлов asyncio не поддерживается, под капотом будут треды
>чтоб он сразу 1000 задач не наплодил, нужен семафор? Как вариант семафор, можно просто самому сделать пул воркеров-обработчиков, которые будут брать задачи из очереди
Там вообще надо вникать в твою задачу детально, профиль какой-то делать, на что время уходит. На сетевые вызовы, на чтение файлов, на чисто питон код, или на сишные функции, которые вызываются из питон-кода
>>3085145 он наивный юноша просто, который думает, что в жизни так просто всё. Что вот возьмёт, что-то изучит и сразу начтёт красиво писать. Что в состоянии сразу реализовать свою сложную идею, или же если его идея проста, то она кому-то нужна, узнают и украдут сразу, но вот просто никто реально не реализовал
А зачем вообще асинхронно читать файлы? Насколько я понимаю, асинхронного чтения файлов в линуксе в принципе не было в течение долгого времени пока io_uring не завезли. В винде асинхронное чтение файлов кажется было почти всегда, правда кейсы использования не ясны.
>>3085023 >который работал бы в вебе и на andoid/os. Если каких-то сложных взаимодействий с ОС не нужно, то тебе может и одного веба хватит, погугли PWA.
>>3085023 Если что-то простое, то просто берешь typecript и ебашишь фронт+бек+мобилки. Если бекенд посложнее, нужна ебанина с инфрой или просто намеки на хайлоад, то добавляешь Go на бекенд.
>>3085282 другой анон, на самом деле полезно было бы, чтобы было асинхронное чтение, хотя для SSD уже почти не актуально.
На вращающихся магнитных дисках там уже важнее, чтение может быть долгим из-за доступа к диску. Хотя вот если серьёзно заниматься, то надо другие способы оптимизации использовать, оптимизированную подгрузку в кеш. Там есть магия, когда ты читаешь массу мелких файлов из одного каталога, можно в десятки раз ускорять чтение, не прибегая к тредам и асинхронщине. Причём тредами такое ускорение не получишь.
>>3085308 >Питух (питухон) нахуй не нужен в этой схеме. Для среднего уровня наоборот Писон наиболее подходящий. Во всяком случае, лучше уж Писон, через очередной хуйпойми УБИВЕЦ ЖЫЭСА.
Примерно такая хрень в коде, ключевое я выделил, суть проблемы в том что если ты захватываешь вывод инфы, то она выводится или принтом или в переменную, но не в сонсоль. Если сделать capture_output фэлс, то тогда в сонсоль, но не в переменную, а надо и туда и туда. Что-то искал решения, но пока так и не нашел. Может кто подскажет? Захватить stdout и вывести например принтом тоже не совсем варик. В сабпроцессе есть не только ран, например check_output, но по моему yt-dlp.exe с ним нормально не работает.
>>3088441 >Захватить stdout и вывести например принтом тоже не совсем варик Почему? Других вариантов нет, у тебя потребитель stdout должен быть один, либо твой скрипт, который делает read()/readline(), либо консоль
Вообще что именно ты пытаешься делать? Я вангую, что тебе больше хочется контролировать через скрипт вывод процесса, и одновременно глазами наблюдать, что происходит. И тебе при этом интересно, что происходит в случае, когда что-то выкачивается очень долго.
Тебе нужно смотреть скорее в сторону proc = subprocess.Popen(), там ставить stdin=subprocess.PIPE, опций вроде bufsize=0, дальше делать не proc.read(), а proc.readline() или proc.read(100) (100 байт тут от фонаря, можно по одному байту читать). Если ты сделаешь просто read(), то этот вызов заблокируется до момента, пока процесс не завершится, а скорее всего у тебя именно тут запарка.
Я хочу написать скрипт для рассылки сообщений по чатам в тг, когда тестил у меня слитал акк. Использовал библиотеку Telethon. Может кто знает почему акки сносились?
>>3089882 Может быть проблема в настройке времени на компе, нужно обязательно NTP включать, а может быть ты как ебаный школьник флудил запросами без задержек вот тебя и отключали
Анон, что я делаю не так? Хочу что то запостить при помощи библиотеки requests, но мне выкидывает ошибку 666. Может вроде как нужно составлять запросы вида multipart/from-data, что я и делаю. Что я делаю не так? url = 'https://2ch.hk/user/posting/' data = { 'task': 'post', 'board': 'test', 'thread': 30969, 'usercode': None, 'code': None, 'code': None, 'captcha_type': '2chcaptcha', 'email': None, 'comment': 'test', '2chcaptcha_value': captcha, '2chcaptcha_id': value, 'makaka_id': None, 'makaka_answer': None } response = requests.post(url, data=data)
В России рынок гоуленга примерно такой же, как и рынок питона. Джуном в него залезть тоже можно, но через стажировки. Java/Kotlin тоже хороший выбор. Но в целом бекенд на питончике тоже есть и никуда он не уйдет, просто сам язык имхо плоховат для такого.
Как отключить этим ебучие хуйни рядом с именами параметров? Меня прям тошнит от того, что я кликаю туда - а курсор для печатанья не ставиться.
Со строчками пустыми где написано о количестве usage ещё хуже было, что я по пять раз кликал пытаясь что-то написать - а там нет строчки, там пустое место из-за надписи о usage - но слава богу они нормально отключились.
>>3094401 >Использовать ORM или долбить руками? Очевидно если ты задаёшь такой вопрос, то orm без альтернативы.
>Где почитать о лучших практиках, о том какую базу выбрать? Зависит от ТИПА ДАННЫХ. Какие у тебя данные, под этот тип подбирай БД. Если у тебя социальная сеть, бери графовую бд. Если у тебя график цен на акции, то это временные ряды. Если у тебя нейронка и нужен поиск по данным, бери векторную базу данных. Если у тебя кеширование, бери redis. Если у тебя обычное приложение, но нужна аналитика - бери postgresql. Если тебе просто нужно хранить данные - бери nosql, mongodb например.
>>3095135 А как ты хочешь, каким образом путь к элементу получать? Причём так, чтобы универсально?
Вот представь, сделаешь ты метод json_data.get("лол>кек>ку"), но ведь тебе никто не запрещает в словаре такие ключи создавать, как ты поймёшь, у тебя вложенный словарь, или длинный ключ в словаре?
В принципе, примерно то, что ты ищешь, называется "json path", это по аналогии с xpath в XML, больше нужно для поиска по жсону.
>>3097767 Брось этот язык, иди на завод на токарный станок уже. Тебя там нехватает, а здесь не соображаешь уже, видимо ужнался так, что документацию не можешь прочитать, там примеры есть же.
Уважаемые питонисты, под алхимией юзается фунция драйвера psycopg2 copy_from. Переписываю функционал на асинхронную алхимию, теперь используется asyncpg. Вопрос - чем заменить эту функцию? Выполнять голый copy from stdin с выводом файла в запрос или делать insert в цикле пробегая по файлу? С циклом можно будет асинхронно считывать файл с помощью anyio и подобного. И тогда как-будто будет более эффективная выгрузка. Ваши предложения? Так же реквистирую как должен выглядеть голый sql-запрос с copy, учитывая что написать на скорую руку у меня его не получилось, asyncpg ругается
>>3097791 >Потому что в питоне string переменные это на самом деле char массив. Вообще это просто неверно. string в принципе не массив, строки это самостоятельный иммутабельный тип, их внутреннее устройство другое.
Но при этом это итерируемый тип, то есть по нему можно проводить итерацию (то есть вот так цикл гонять).
Но человеку, только начинающему разбираться с циклами, не стоит лезть в эти итераторы, это подготовка нужна относительно приличная
Просто нужно знать, что вот со строками так можно, как можно обращаться к элементам строк по индексу print(my_string[2]), но при этом это не массив, и сделать my_string[2] = 'x' нельзя
Аноны в какую сторону копать Есть корп сеть допустим CORP, есть пчелики которые заходит под своими аками в эту сеть в windows.(обычная офисная сеть с планктоном) Есть веб приложение на fastapi/flask/streamlit. Как индефицировать пользователей которые заходят на это веб приложение? только по айпи или можно вытащить имя пользователя? Например зашла на сайт Даша Иванова, а у тебя в консоли высветилось тип: login: CORP\dasha_shluha У нас есть корп приложуха которая автоматически идентифицирует пользователей внутри сети, когда они туда заходят, а с интернета просит пароль и логин. Хотелось бы понять как это работает
>>3109840 Это значит, что параметр опциональный, то есть не обязательный. А вложенные скобки означают, что более глубоко вложенный параметр опционален относительно внешнего, то есть в данном случае sub обязателен, start можно указывать, а можно нет, end можно указать только в том случае, если start уже есть.
На чем пишете, какие редакторы используете? Плюсы, минусы, подводные камни. Хочу что нибудь компактное и полностью бесплатное, надоело каждый месяц новую почту для пайчарма регать.
Доброго времени суток, помогите найти ошибку и подсказать как её исправить (я не погромист).
Я хочу написать скрипт который будет выписывать слова определённого формата из текстовых файлов, отображая в итоге только первые упоминания каждого слова. В интернете я нашёл похожие примеры, но те скрипты работают только с одним файлом. Я попытался добавить цикл для того чтобы код прочитал все файлы, но idle выдаёт IndexError: tuple index out of range. Как это можно пофиксить?
import re import os
codes = set() pattern = re.compile('\d{10}')
for fil in os.listdir('Папка/'): with open('Папка/' + fil,'r')as f: for line in f: match = pattern.search(line) if match: codes.add(match.groups()[0])
files = [ open(file, "r", encoding="utf-8") for file in pathlib.Path("./Папка").iterdir() if file.is_file() ]
for file in files: for line in file.read().split(): if line.startswith("искомое слово"): # тут указать слово целиком или начало слова print("слово найдено!") print(line) else: print("слово не найдено!")
>>3111102 для хранения результата используй множество, а не список, ну и не придётся проверять есть ли что-то уже в результате - просто пересекаешь накопленный результат с новой партией найденных...
Сеньоры помидоры, посоветуйте чем сейчас выгоднее и менее трудозатратно промышлять на петушином и в каком секторе. На последней работе поднимаю эмэльку с нуля, поэтому могу закрывать дата инженера, бэк, ds, mlops. На срыночке хх нихуя непонятно.
Ну что, вкатился кто-нибудь в разработку в этом году? Я словил конкретного вялого от всех вакансий с 800+ откликов. В итоге остался в инженерной компании, где работал асушником. Договорился с руководителем, в итоге, пилю приложения на pyQT для инженеров асушников. Опыт не особо релевантный, но хотя бы в рабочее время учишься.
>>3111644 >Я словил конкретного вялого от всех вакансий с 800+ откликов Проблема не в рынке, проблема в твоей психологии. Это не рынок хуёвый, а ты хуёво ищешь. Искать нужно уметь. Если ты смотришь 0 лет опыта, джуниор, стажёр, а чёж все остальное-то блять тогда ищут? Получается по твоей логике все остальные - слепые долбоёбы, которые не хотят легкой наживы, шоп сразу придти и с порога трудоустроится. "Джуниоры" - это не буквально, а просто фигура речи. Так образно называют начинающих программистов. Не нужно вбивать "джуниор python" в поисковую строку. Ты же не ищешь "халявный iphone" на озоне? Это есть, но обычно такие вещи не говорят прямо, а пишут между строк, в описании. Нормальная компания никогда прямо не скажет "нам нужен начинающий программист", если не хочет потом заново переделывать "работу". Такие вакансии с 800+ откликов обычно публикуют рекрутинговые агентства, а не сама фирма.
>>3111907 Это называется terminal multiplexor, либо использовать какой-ниьбудь TUI фреймворк типа https://github.com/Textualize/rich Но проще в tmux 4 лога вывести, серьёзно
>>3110737 Короче если кому-то интересно(никому) - ищем рабочий ключ лицензии (на гите и лоспере их валом). Далее через терминал sudo nano /etc/hosts прописываем вот эти хосты: 127.0.0.1 www.jetbrains.com 0.0.0.0 account.jetbrains.com 0.0.0.0 www.jetbrains.com Готово, теперь ваш софт от ЖидБрейнс не задетектит, что лицензию забраковали, а это только вопрос времени
>>3112269 CE работает, но я ей никогда не пользовался, там вроде дела с фреймворками и некоторыми мелочами чуть хуже обстоят чем в прошке, по крайней мере так в инете пишут. Короче мышление макаки "спизди платное, оно точно чем-то лучше, чем бесплатное" заставило меня прошку выбрать
>>3112715 А почему? В обоих принтах создается с нуля инстанс класса и он из глобальной переменной test берет значение, и во втором случае это же 5. Я не понимаю...
великий и могучий как вам такой трабл: есть интерпретатор питона на питоне:да это ебанистика и так короче код берется из textFild и compile() и потом exec() ага видимость namespace globals() там еще есть автодополнение на jedi короче все катит, но когда его компилишь в exe, globals резко слепнет и не видет установленных модулей кроме стандартных типа math, собственно блять как этому ебучему экзешнику сказать что смотри python'овские библиотеки
>>3112968 он видемо в vs code работает потому что выполняется на питоне, и собственно может нормально забрать globals, а когда компилится то туда уходит только то с чем он собирался, хотя это пиздец странно. я хз как фиксить
>>3112736 Даже если создавать инстансы, ситуация не изменится.
Ввиду того что код в питоне исполняется построчно, а переменные это по сути не переменные, а имена для объектов, он интерпретирует объявление класса следующим образом: создать класс config, для него установить атрибут number, значение которого равно объекту, на который в момент объявления ссылается переменная number (то есть 3). 5 - это другой объект. Строкой test = 5 мы не поменяли значение объекта, а просто присвоили ей ссылку на другой объект. Объект 3 продолжает жить, так как на него продолжает ссылаться атрибут config.number.
Это всё по причине фундаментального поведения языка: a = 1 b = 2 a = b b = 99999 # "a" не изменится потому что строки и числа присваиваются по значению, а не ссылке.
Любители веб-джанги и им сочувствующие, скажите честно, как часто вам приходится по работе юзать алгоритмы, поиски по графам и подобную красоту? Судя по ответам в гугле – у всех по разному, но не часто.
>>3113322 Пишу бек на fastapi, какой-то нетривиальный алгоритм приходится вкорячивать может раз в два года. Естественно его тогда гуглишь, а не вспоминаешь из головы, находишь по возможности готовые имплантации. И если это какой-то хитрожопый алгоритм, то это все в очередь складывается, на самом сервисе обычно не считается.
>>3113322 >юзать алгоритмы, поиски по графам Если бы я хотел использовать графы, я бы поставил neo4j. Нахуй мне обосрались эти графы. Ну серьезно, неужели ты думаешь нужно переизобретать "поиск по графам" лол если уже есть язык цифер https://neo4j.com/product/cypher-graph-query-language/
Суть такова, скачал stable-diffusion-webui, в скрипте запуска эта параша создаёт себе venv и пытается доставить зависимости в него. Не вышло, но суть не в этом. После запуска я это ебаное говно что-то мне похерило в системе, теперь pip freeze показывает ТОЛЬКО те пакеты что поставил скрипт, pip install посылает меня нахуй и говорит что мои пакеты externally managed. В ебучей директории venv которую этот скрипт создал нет скрипта deavtivate про который говорят в гугле. Это говно поломало мне системные пакеты все.
Сука, как это отменить? Ёбаные выродки, первый раз за много лет я хочу нахуй сжечь заживо людей писавших это ебаное говно, ЧЕТЫРЕЖДЫБЛЯДСКАЯ ЯРОСТЬ! Как это говно чинить?
>>3113416 >теперь pip freeze показывает ТОЛЬКО те пакеты что поставил скрипт Даже если пересоздать терминал?
Покажи что выведет "which python3" или "which python" если первое не сработает. Если покажет не системный питон то лезь в эту папку и покажи её содержимое, по идее там должен лежать deactivate скрипт
В любом случае я психанул и просто грохнул всё что связано с питоном и переставил по новой.
В общем это говно видимо стало поведением по умолчанию в 12 питоне, решается удалением волшебного файла-флага или вызова pip с флагом --break-system-packages.
Сыны шлюх на мейнтейнерах просто поменяли поведение по умолчанию и сказали "note: If you believe this is a mistake, please contact your Python installation or OS distribution provider."
>>3114450 >В общем это говно видимо стало поведением по умолчанию в 12 питоне, решается удалением волшебного файла-флага или вызова pip с флагом --break-system-packages. Ссылочку? Странно как-то звучит, причём тут версия питона к дистрибуции пакетов? Наверное ты про версию pip а не питона. Ну в любом случае интересно было бы почитать
#Traceback (most recent call last): # File "C:\Users\user\Desktop\123123.py", line 1, in <module> # class C(num): #NameError: name 'num' is not defined
>>3112690 из-за такой же ебени и не душу питона для ООП. Используй его ТОЛЬКО для процедурного программирования, не для ООП. Для ООП питон не дорос ещё, пися_ маленькая.
>>3115031 >>3112690 Собственно процедурщина тут не поможет, если не знаешь чего опасаться. Дело в том что все значения в питоне - это ссылки.
Ссылка тест указывает на 3 Ссылка number теперь указывает на то, на что указывает test то есть 3 Ссылка test теперь указывает на 5, но number указывает не на тест, а на то, на что тест указывал по время присвоения number = test
>>3115036 Хотел тебе развернуто рассказать, что ты делаешь не так, но увидел этот ответ на пост, в котором по сути тебе помогли и указали на проблему, и передумал.
Кто-нибудь пишет юзерботов на Telethon? Часто вижу однотипные задачи такие как спиздить контент из защищённых от копирования каналов и групп в свой закрытый канал с затёртыми копирайтами. И если с незащищенными каналами всё понятно и сообщение копируется через метод send_message, то с защишенными такое не прокатывает. Сам создатель Telethon скромно говорит, что это нарушение пользовательского соглашения. Так как же пиздить защишенный контент с помощью Telethon?
Посмотрел каталог и похоже это самый релевантный тред для вопроса. Видели ли вы low-code платформу для веб приложений вроде baserow и nocodb, где можно использовать питон для изменения логики, вида темплейтов и т.д. Основа того же nocodb устраивает в плане удобно добавить записи разной структуры. Но вот веб приложение из него толковое не сделаешь.
pandas или polars? с одной стороны polars, который может быть в два-три раза быстрее. Да и написан он на раст, что делает возможным его запустить на всех системах с одним кодом. с другой стороны разрабы панд, которых поддерживают всякие nvidia, intel и прочие гагинты. Что значит проект явно не забросят, не выдержав конкуренции. Да и различие в скорости с каждым новым апдейтом все меньше, вангую кстать, что все основные функции перепишут на раст, и поларс может отлететь в небытие
>>3116035 Polars не шупал ещё. А как там с совместимостью numpy операций и поддержкой популярными пакетами вроде catboost/lightgbm? А то с пандас df можно работать как с numpy массивами и скармливать напрямую в МЛ либы для тренировки
>>3116457 Пы сы если тебе не только на чтение но и на запись то тут я так сходу хз, видать придётся брать исходный код как текст или как аст, менять его, на ходу создавать новую функцию из этого текста или аст и переприсвоить идентификатор функции на этот новый объект но тебе это не надо скорее всего, иначе ты бы тут не спрашивал а сам заресёрчил
Postgresql. Есть столбец таблицы, который хранит значения в диапазоне 0-2. С ними работать неудобно, зато компактно. Хочу чтобы они везде, где мне это нужно, подменялись на строки "плохо", "средне", "хорошо". Есть способ сделать это лучше, чем вручную?
пытаюсь сделать авторизацию/аутентификацию в джанго, есть бд с двумя таблицами сотрудник/админ у аудмина может быть 3 роль, реализовано булевым значением в таблице и соответственно с разным функционалом, в таблицах хранится логин/пасс как лучше всего реализовать логин? 1. OneToOne 2. Proxy 3. AbstractUser 4. AbstractBaseUser Сам склоняюсь к 3 либо 4 варианту, что думаете?
Люди разбирающиеся в машобе, нужен ваш проффесиональный взгляд. Задача бинарной классификации, используется логистическая регрессия, из 300 признаков отбираются лучшие методом прямого отбора,минимизируя логлосс на кросс валидации. Проблема в том что на финальной тестовой выборке логлосс заметно ниже. При постепенном удалении признаков показатели улучшаются до определенного момента. Задача представляет из себя прогнозирование временных рядов, потому взять в качестве финальной выборки другую часть и проверить на ней варианта нет. Выглядит как переобучение, но я не предполагал что при таком подходе оно вообще возможно так как выборка не так уж и мала. В общем что вероятнее переобучение или отклонение?
Люди разбирающиеся в машобе, нужен ваш проффесиональный взгляд. Задача бинарной классификации, используется логистическая регрессия, из 300 признаков отбираются лучшие методом прямого отбора,минимизируя логлосс на кросс валидации. Проблема в том что на финальной тестовой выборке логлосс заметно ниже. При постепенном удалении признаков показатели улучшаются до определенного момента. Задача представляет из себя прогнозирование временных рядов, потому взять в качестве финальной выборки другую часть и проверить на ней варианта нет. Выглядит как переобучение, но я не предполагал что при таком подходе оно вообще возможно так как выборка не так уж и мала. В общем что вероятнее переобучение или отклонение?
>>3117697 да, ещё вопрос, только что узнал про '--enable-optimizations --with-lto' PYTHON_CFLAGS='-march=native -mtune=native' есть смысл? или я накрашиваю свинью? Кто вообще оптимизирует медленный питон и зачем? Я думал все, что должно быть быстрым,уже написано на C (тот же numpy)
Отправляю данные на сервер и получаю. При попытке прочитать, вылазит что-то похожее на unicode-escape. Ничего не помогает перевести данное дело в буквы. Что делать?
>>3117698 > '--enable-optimizations --with-lto' смотри у тех кто поставляет тебе питона как его собирают. в debian, офф. docker образах собрано с оптимизациями, в nix - юез оптимизаций, т.к. они не позволяют сделать полностью воспроизводимый билд. проверить можешь глянув процесс сборки в апстриме, либо флаги сборки твоего питона: > python -c 'import sysconfig; from pprint import pprint; pprint(sysconfig.get_config_vars())' | vim офф. доку на сайте почитай using/configure.html lto thin будет дефолтом для Clang, если он поймёт этот флаг. дальше сам ибо лень с телефона подробный оьвет давать - вроде и так уже всё понятно.
> PYTHON_CFLAGS='-march=native -mtune=native' gcc соберёт питон, оставив при сборке только инструкции под целевой проц - размер сборки будет меньше. поидее, возможно ускорение за счёт использования лучших нативных инструкций.
резюме: читай доку и не занимайся хуйнёй... можешь по приколу насобирать питонов и сделать для нас бенчмак!
>>3117676 Так падажжи ёбана. Если ошибка на тесте меньше, чем на кросс-валидации, то всё прекрасно же. А что с целевой метрикой происходит, и какая она?
>>3117782 резюме: ты пидорас и не умеешь читать Я не спрашиваю, что эти флаги делают, а есть ли в них смысл. Кто оптимизирует питон и зачем. И ускорят ли они мой говноскрипт, если в нем все тяжелое и так отдается сишным либам типа numpy
>>3117958 если ты всё знаешь, дибилушка, то чего спрашиваегь? в доке все оптимизации описаны. реккурсию в циклы переводит. где это возможно - как пример одной оптимизации. осталбное rtfm, оладушек
>>3118016 хуесос, ты читать умеешь или нет? Хорошо, напишу ещё раз, большими буквами КАКОЙ ПРОФИТ Я ПОЛУЧУ ОТ ОПТИМИЗАЦИИ ПИТОНА ЕСЛИ ВСЕ ТЯЖЕЛОЕ УЖЕ ДЕЛАЮТ ПОДТЯНУТЫЕ ЛИБЫ НА СИ. ЕСТЬ ЛИ В ЭТОМ СМЫСЛ?
>>3118289 правильно написали, что vscode уже умеет jupyter. а так - neovim
>>3117861 Ошибка на тесте больше. Я крч разобрался, модель переобучается какого то хуя. В качестве функций у меня средние значения с разными временными окнами и каждая такая функция повторяется десять раз с разным значением альфа для экспоненциального взвешивания. Видимо такой подход не канает. А метрик нет, мне нужно вероятность максимально точно определять. Не в курсе как в таком случае оптимальные функции выбирать?
>>3118613 Попробуй следующее: - добавь значение метрики день назад, неделю назад, месяц назад, год назад, индекс месяца, индекс дня недели, будний/выходной/праздничный, YoY, WoW, MoM - добавь в модель регуляризацию - попробуй другие модели, более устойчивые к переобучению - попробуй выход одной модели в качестве метрики, а потом обучи другую
>>3118584 да чел с околонулевым reading comprehension че то там про флаги насрал, когда я спрашивал про сам смысл\эффективность задумки с оптимизцией питона так что вопрос остается открытым
Сап, двач. Есть один массив 1000x1000. В массив записаны числа от -0.5 до 0.5. Нужно построить из этого массива трехмерную столбчатую диаграмму. Желательно, чтобы столбики имели разные цвета, в зависимости от значения. Желательно, чтобы положительные столбцы шли вверх, а отрицательные вниз. Желательно, чтобы я мог посмотреть на эту диаграмму в вертикальном и горизонтальном разрезах. Желательно, чтобы на вход я просто подавал на вход датафрейм, а на выходе получал красивую диаграмму, как я описал. Какие библиотеки и методы мне гуглить?
>>3118786 Но тебе же реально уже ответили. Или ты ждёшь ответа по типу 2% ускорения цикла фор? Такого ответа не будет, очевидно что никто не знает. Как и очевидно что некий прирост есть, даже когда вызывается сишный код
Так, анон, есть игра где надо из танчиков по баллистической траектории стрелать. Хочу написать скрипт который будет отрисовывать оверлей с траекторией. Какой либой это удобнее сделать? То есть надо: 1. Выводить прозрачный оверлей 2. Рисовать по формуле
>>3117675 Насколько ниже логлос в %? Насколько несбалансированный датасет? Как происходит разделение train|test? Распределение свойств признаков совпадает в выборках? Каков variance ошибок на кросс валидации? Какая регуляризация используется? Какой solver? Делается ли скалирование/другой препроцессинг?
>>3119858 Когда вы создаете виртуальное окружение с помощью virtualenv, скрипт активации (activate) делает несколько важных вещей. Во-первых, он изменяет переменную окружения PATH, чтобы указать на исполняемые файлы в вашем виртуальном окружении, а не в глобальной установке Python. Это гарантирует, что скрипты и установленные пакеты будут использовать версии Python и зависимостей из вашего виртуального окружения.
Кроме того, скрипт активации устанавливает другие переменные окружения, такие как PYTHONPATH, которые помогают Python найти модули и библиотеки в вашем виртуальном окружении.
Если вы просто сделаете chmod +x и выполните скрипт напрямую, он не будет иметь доступа к этим переменным окружения, и ваш скрипт может использовать неправильные версии Python или зависимостей. Поэтому используйте source activate для корректной активации вашего виртуального окружения перед запуском скриптов в нем.
Привет, ребята Есть вопрос по библиотеке pyTelegramBotAPI: Можно как-то с ее помощью узнать количество картинок, которые пользователь отправил в группе фотографий?
Просто я как понял, картинки отправленные группой имеют media_group_id и все, типа никак нельзя понять сколько их в группе (нашел костыльное решение с таймером только)
>>3120013 Обычные боты вообще не видят историю чатов, они могут только отслеживать новые сообщения и считать изображения по факту их появления. Бери Telethon или Pyrogram и получай всю историю сообщений пользователя и считай
>>3120129 Понял, спасибо Тоже увидел, что можно Pyrogram использовать Просто я уже написал все на pyTelegramBotAPI и переписывать с нуля не буду под другую библиотеку
Не подскажешь, есть ли более адекватный способ, кроме таймера в этом случае?
Петян за манкипетчинг вопрос. Есть датакласс Foo, чтоб меняться каким-то простым набором чисел x,y,z и по минимуму с ними там работать (допустим реализован метод __add__).
Как можно через обращение к классу (а не к экземпляру) на ходу поменять реализацию метода __add__? то есть например вызвал Foo.change_add() и сложение теперь для всех стало работать как вычитание. Пример всратый, просто чтоб наглядно продемонстрировать, что я хочу.
>>3120464 >для чего. собрал на коленке скриптик, который мультипроцессором пробегает по файловой системе и делает хасл и возвращает для каждого файла датакласс-объект с результатами. потом просто суммирует по всем полям и выдаёт ответ. у скрипта есть два дополнительных ключа, которые добавляют ещё две дополнительные суеты. >для чего. подменив метод, я избавлюсь от двух сравнений в worker'e, вызван ли был скрипт с ключами или нет, чтобы вызывать или не вызывать дополнительную суету.
>>3116672 Моветон использовать глобальные переменные когда они изменяются во время использования и влияют на основную логику приложения. Обычно логгинг настраивается при инициализации приложения и дальше ты уже юзаешь только это, по сути это просто синглтон. В большинстве случаев достаточно корневого логера и ты уже можешь делать так
>>3120701 да, заебись. есть ли глубокая разница подходов second/third реализации? понимаю, что одна это классовый метод, который манкипатчит сразу нужный метод; а другой метод экземпляра который обращается к классу и потом уже меняет нужный метод. есть ли подводные камни, моменты на которые надо обратить внимание или это равноценная хуйня?
>>3121688 Херкам разве не поебать на проекты? Их только формальные параметры в резюме интересуют. Задачи херки 1) Матчинг возраста, стажа, кейвордов 2) Первичный созвон, обратная связь 3) Поддержка базы кандидатов, черных списков
>>3121688 >Какой пет на джанге написать джуну, что бы hrки радовались? А сам не хочешь своему проекту радоваться? Какой нахуй смысл делать для других, если можно делать для себя? Открой ебучий интернет-магазин, начни продавать какие-нибудь электронные сигары, прибамбасы для собак, ещё какую-нибудь шнягу. Или ты прям живёшь для других шоп другие радовались а ты нет?
>>3121704 Чет сложно звучит. Хочется просто покрудошлепить>>3121737 >>3121737 Просто хочется добавить в резюме какой нибудь +- интересный проект >>3121741 Я хочу радоваться своим проектам, но у меня 0 идей. За идеи спасибо, но просто хочу вкатиться в это ваше айти и грести 70к/мес., проект нужен чисто в качестве красивой строчки в резюме
>>3121800 Блядь, да не продавай там нихера, просто сделай магазин, напихай псевдо-товаров, сделай корзину, блядь, регистрацию, оформление заказа, всю хуйню сделай, только оплату не прикручивай. Может вообще продавать там "шмындрики" за "100 бублей". Почему ты такой тупой?
>>3121864 >Напоминаю, что никто не смотрит гихабы Этого достаочно. Напоминаю историю разработчика homebrew которого попустили алгосами на интервью в гугел
>>3121862 Да какая нахуй разница? Ты реально настолько баран, что думаешь, что крутизну тебя как веб-разработчика определяют товары, которые ты продаешь, а не то, как ты сделал интернет-магазин? Бля, пиздец, надеюсь, ты тролль.
>>3121864 >Напоминаю, что никто не смотрит жидхабы если у вас там не проекты на +500 звездочек или вы в большой попенсорс не комитите. Даже в этом случае не смотрят, если нет коммерческого опыта. Для вкатуна главная цель - любыми путями получить / нарисовать первый год опыта, причем реального, а не учебного, а не закапываться в пет-проектах.
>>3121906 >>3121864 Вообще ни в каком случае никто никогда ничего нигде не смотрит, если ты не Илон Джобс 100500КК/нс. Только в этом случае в одном случае из квадрилиона, эйчарка может открыть твою хуйню, и ты сможешь претендовать на позицию помощника младшего джуна. Просто напоминаю.
>>3121915 Да, еще стоит просто дежурно напомнить о том, что и так все знают, ведь это очевидно, но всё же просто напомню, что всех уже порешал чат ГПТ, которого нанимают олимпиадники гарварда, а вакансии висят просто для вида, как и гитхабы с линкдинами. На самом деле пробиться невозможно, так что наилучшей стратегией будет ничего не делать, ведь если ты родился без опыта работы в отделе инноваций Бостон Динамикс и без золотых медалей на мировых олимпиадах, то совершенно бесполезно что-то делать. Просто напоминаю. >>3121925 Типа того
>>3121926 Делать, но понимать что это для себя. Никто смотреть не будет? в лучшем случае, а в худшем "все что вы скажете может быть использовано против вас"
На петы джунов смотрю вскользь. Даю тестовое, его мидлы оценивают и потом решают, стоит ли звать на собес. Вкатунов берем только если физмат за плечам. Эти ещё ни разу не подвели
>>3121573 моя наивная идея состоит в том, чтобы избежать 100500 ненужных if один раз указав на нужную реализацию. типа инкапсуляция всё такое, класс сам знает как ему что делать.
>>3121938 В худшем зачморят на весь интернет, будут показывать код по первому каналу и у ведущих блогеров и ржать. Прифотошопят хуев на лицо, сдеанонят, насрут под дверь, вызовут чеченцев, заставят извиняться, а потом отправят на войну.
>>3122432 А чего там понимать? Если проект оформляешь в виде рабочего сайта, то любой поймет. А если это простыни кода на гитхабе, то конечно нахуй они кому нужны. Если только общий стиль твоего кода и комменты кто-то оценит. У меня такое было, кстати, однажды.
>>3122224 Так никого же не заставляем, сами приходят
>>3122047 Лучший - система анализа поведения пользователей реддита. Разделена на несколько докер контейнеров. Сбор данных по API, пишет в две базы sql и influxdb. Есть векторная база для простого nlp. С правильной обработкой ошибок и не долбящая по напрасну серваки реддита. Групирование постов и сообщений по векторной близости через word2vec и вывод на дашборд с базовыми статами
Был 2016 года, мой знакомый 30 лет никогда нигде не работавший написал консольную спамилку в вк на питоне, она умела просто долбить разные сообщения в ЛС и показывать капчу. Этих знаний ему хватило чтобы переехать из мухосранска в спб, устроиться там в галеру (это слово я впервые от него услышал) на которой он якобы нихуя не делат, и через полгода-год купить себе квартиру. В каких Европах он сейчас живет я не знаю.
>>3124211 Мораль истории в том, что для успеха софтскилы не менее важнее хардскилов. И на прокачку навыка общения надо отдавать столько же времени, сколько на дроч в обход дерева и бинарный поиск.
>>3124760 Ну а то, у меня вон тоже друг свата брата по дедушкиной линии в 2012 году только слюни пускать умел. Сейчас работает в отделе инноваций apple тимлидом. Надо было тогда вкатываться, сейчас уж бесполезно.
>>3124129 Мы вообще вкатунов берем мало. Чисто бэкэндерские задачи и нужно понимать некоторые алгоритмы, где без математики уровня 1 курса вуза не понятно, почему один лучше другого и за счет чего. Вот тут физмат и пригождается
>>3125573 >без математики уровня 1 курса вуза не понятно, Математика уровня первого курса есть далеко не только на физмат-специальностях. У меня например были и матан, и линал, и дискретка, но ваша эйчарка меня отсеет, потому что образование не профильное.
>>3125661 Че ты распереживался из-за какой-то одной конторы? Мало их что ли? У всех свои заскоки. Одни из физмата не берут, другие в офисе работают, третьи черный нал платят вместо зарплаты. Из-за каждой такой трястись никаких нервов не хватит.
>>3126253 В ML можно залезть без профильной вышки. Это конкретные условия конкретного отдела в конкретном бизнесе. Они для себя решили, что им вот так удобнее собеседовать людей, а рядом с ними может быть точно такой же ML отдел, который решит по другому, и будут готовы собеседовать в том числе и людей и не с физмата. Чего трястись то из-за каждого? Работы полно вокруг.
Хоть убейте, но Джанго не хочет пропускать в админку на 0.0.0.0:8000 CSRF_TRUSTED_ORIGINS = ['http://0.0.0.0'] ALLOWED_HOSTS = ['0.0.0.0'] На 127.0.0.1 все работает. В чем проблема?
>>3126805 Блять, жопа горит теперь. Все из-за того что локально записал себе куки в 0.0.0.0, потом когда запустил контейнер на таком же хосте, куки не перетерлись и csrf не перезаписывался.
Аноны, кто на Flask пишет, как вы оцениваете туториал на их официальном сайте? Насколько там тру вей? Спрашиваю, потому что надо быстренько накидать онлайн-журнальчик, чтобы юзеры CRUD там делали. Сам для веба никогда не писал.
Это минимальное требование, чтобы человек вообще хоть что-то понимал, о чем говорят коллеги. Чтобы хотя бы имел представление о таких вещах, как отличия матрицы Якоби от Гессе и зачем они хоть примерно нужны вообще
В этом вашем питуне есть кастомные типы? Ситуация такая, у меня очень много различных int переменных, значение которых должно обязательно укладываться в конкретный диапазон (например [-100,100]). Переменные фигурируют и изменяются очень во многих местах, и каждый раз делать проверку на попадание в диапазон слишком муторно. На плюсах я бы просто сделал класс с одним полем и перегруженными операциями присваивания и арифметики. В питоне так же делать, или есть способ лучше?
Аноны, хочу написать UI для своих пет проектов, чисто для личного использования. Мне без разницы, десктоп или в браузере, главное на питоне. Что бы вы посоветовали? Из компонентов хотелось бы table view, tree view и list view
>>3128093 > как отличия матрицы Якоби от Гессе и зачем они хоть примерно нужны вообще Про отличия я прочитал, а зачем они хоть примерно нужны вообще, расскажи плз?
>>3129164 Оптимизация бизнес процессов, логистика - operations research короче, МЛ, финансовые и макроэкономические модели, расчет физических симуляций для R&D в промышленности. Это только то, с чем я или соседние отделы работали за последние годы
>>3129413 Чел, там материала на несколько лекций. Jacobian в тех же моделях логистики и производства грубо говоря для стабильности и точки эквилибриума переменных функции, которой моделируем. Например, как изменения в одном узле цепочки повлияют на другие и как оптимизировать для этого инвентарь на складах, объем производства деталей и т.д. Hessian поможет тебе оптимизировать МЛ модели, например через BFGS с ограничением по памяти аппроксимировать нужные функции эффективно. Можно например оптимизировать инвестиции компании в ценные бумаги, используя информацию о кривой в разных комбинациях бумаг. Или в производстве эффективно использовать бюджет, опять через кривую функций, используя эластичность спроса, цены на материалы/труд и т.д.
Есть желание сколотить небольшую банду для современной работы над каким нибудь проектом, в свободное время. Ну типо в процессе делиться опытом, учиться на практике.
>>3130349 Цель не быть кому то обузой или учить, а собрать команду единомышленников и вместе что то пилить.
Вот первое что в голову пришло, нравится тебе картинками заниматься. Те кто открывают магазы на озоне им карточки товара нужны, ты делаешь нейронку которая хавает изображение и выдает карточку в нужном стиле, я занимаюсь автоматизацие всего процесса.
Насколько дорогая в питоне плавающая запятая? Смогу ли я заметно улучшить быстродействие, если буду использовать только инты? Вообще по логике язык не должен на это влиять, но мне говорили что в джаве флоат почти не отличается от инта, потому решил спросить на всякий случай, мало ли у вас тоже какие-то хитрости есть
>>3130515 Хочешь оптимизаций - это не к питону. Упрешься в ограничения языка просто, все-таки кто бы что ни говорил, а он медленный.
Плавающая запятая будет стоить ± столько же, сколько и инт в общем случае. На самом же деле надо бенчмаркать. Связанно это с тем, что int в питоне это нифига не сишный инт и у него там есть обертки для поддержания длинной арифметики (условно, питонячий инт прямо из коробки у тебя может быть больше чем long long int, сишный и работу с ним как раз будет менеджить обертка). Float же тоже имеет обертку, но более простую(так как сслыается на уже нормальный сишный double), и разрастись так как int не может. Короче, депендс
>>3129942 Пишу код каждый день, который бежит на серверах в докер контейнерах. Есть юнит и интеграционные тесты. Код работает с другими сервисами по API, ходит в базы. Пайплайн CI/CD такой же, как и в типичном бэкэнд проекте. Щепотка математики не делает это чем-то космическим
Сап. Есть один датафрейм, нужно удалить из него одинаковые строки, при этом совершить конкатенации имён одинаковых строк. НО значение NaN считаться равным любому другому значению. Например, на входе у нас две строки: 'А' : 0, 1, 2, NaN 'B' : 0, NaN, 2, NaN На выходе мы должны получить: 'А, В' : 0, 1, 2, NaN Как это сделать, двач, помоги.
Нужно хранить кучу однотипных датаклассов/словарей с множеством жирных ключей максимально компактно, самое первое что пришло в голову это сделать как в протобафе и создать. Лист + заранее заданный внутренний словарь ключ - позиция. Второй вариант попробовать интернировать ключи. А может есть еще что-то более удобное?
Сап, питонач. Вопрос по ML. Чет по-моему маюсь какой-то херней. Пытаюсь попасть на стажировку в вк. Изучаю машоб уже довольно долго. Вроде как. Моих знаний хватило, чтобы, например, написать классификатор, который отличает мужской голос от женского - я использовал подготовленные аудиофайлы, подготовил датасет, почистил его, нашел лучший алгоритм (рандомизированный случайный лес), подобрал гиперпараметры и получил приемлемый ответ (98 % или типа того). Спустя полгода после дедлайна. А сейчас я прохожу тест и нихуя не знаю ни о чем.
И вот задача. Есть датасет формата rank,query_id,feature_0,feature_1..... Мне нужно по параметрам feature предсказать rank в отдельно взятой группе, то есть query_id. Когда я решал задачу с классификацией голосов, я просто использовал train_test_split, там не было никаких групп. Итак, похоже, мне нужно подготовить какие-то группы, а не все в повалку. Как это делается? Что вообще гуглить?
>>3132940 Нужно сделать стратифицированную выборку train/val/test. Чтобы распределение ранков и групп в них были похожи. Особенно вжно так делать, когда несбаласированный датасет и есть явные перекосы
>>3133039 Нет, не совсем. Query_id это идентификатор группы. Члены одной группы на другую вообще не влияют, стало быть, их надо изолировать >>3133049 А как подготовить датасет? Если работаем с голосом, то там все понятно - скажем, загрязненный фрагмент аудиозаписи - нахуй. А тут как его можно почистить?
>>3133427 Да. query_id это просто номер группы, в которой мы определяем rank. Скажем, у нас есть пять строк, все принадлежат к группе 10, и значения rank у них получаются 0, 0, 1, 2, 2
>>3133462 Ну так это просто фича. Если ты точно знаешь, в какой именно группе тебе надо делать предсказания, то экземпляры из неё и убирай а тестовый и валидационный датасеты. А если не знаешь, то делай стратифицированные выборки.
Я же не знаю, что там у тебя и что чистить хочешь. Типичные манипуляции с pandas, я думаю. Как минимум четверть работы дата саентиста на это и уходит
>>3133480 Ему возможно еще по рангам внутри каждой группы надо стратифицировать в довесок. А то может оказаться что в трейне для группы Х пропорции сэмплов с рангом 1 в разы больше, чем в тесте. Тогда ручками писать код придётся для стратификации всё-таки
>>3133521 Ну, у меня есть готовый датасет. То есть 25к строчек формата: rank, query_id, f1, f2, f3. ... f120.
Пока мой лучший результат это 55% с помощью рандомизированного случайного леса. Вот условие. Я просто не пойму, может такая ошибка это нормально для подобных задач? Или есть какой-то автоматический способ убрать аномалии из датасета?
>>3133528 Так тебе тогда нужно поделить так, чтобы все документы с одним query_id находились в этом сете. Иначе это не имеет смысла. Как делить? Как минимум чтобы распределение кол-ва документов для query_id было схоже. Хотя наверное от интерна такого не ждут. Вот список популярных подходов для твоей задачи. Выбирай любой на свой вкус и уровень навыков https://towardsdatascience.com/introduction-to-ranking-algorithms-4e4639d65b8
>>3133528 55% чего? Если ты пытаешься решить задачу классификации, и считаешь accuracy, то ты немного не в ту сторону смотришь. Ранжирование - это другой класс задач
>>3133619 Я только сегодня начал читать про метрики. Начал все не с того конца. Сначала прочитал про устройство перцептрона, обратное распространение ошибки, потом наполовину наугад решил пару задач. Короче, в условии (картинка парой постов выше) ясно сказано, что ранжировать объекты надо в группах. Однако когда я работаю с группами абсолютно все метрики провисают до 0.5. А вот если просто выкинуть параметр query_id на мороз, они все растут до 0.9. Не пойму, что делать. Однако, еще один вопрос, ndcg_5 это что? Я вижу объект ndcg_score, но что это за ndcg_5? И почему когда я пытаюсь его использовать, мне говорят про то, что мультикласс нае катит, а нужно Only ('multilabel-indicator', 'continuous-multioutput', 'multiclass-multioutput') formats.
>>3133779 >Сначала прочитал про устройство перцептрона, обратное распространение ошибки, потом наполовину наугад решил пару задач.
Ох, тебе похоже пока очень рано туда подаваться.
> ndcg_5 это что? Это ndcg для первых 5 рангов
Мой совет - пройди какой-то курс по МЛ. Где с основ объясняют. От log reg до деревьев. Даже если бы ты каким-то чудом решил тестовое своё с помощью анонов, ты посыпешься в первые же минуты интервью на теории МЛ
Самый хуевый на потоке оскуфевший студент в треде. Начал вкатываться в питон, таргет выдал интенсив питон+гпт4, потыкался - прикол. Пару ботов в ТГ сделали с разными функциями, качалка вебмок с сосача и совсем по мелочи, БЕЗ ВСЯКИХ ПРАВОК КОДА РУКАМИ. Есть с десяток идей, которые хочу реализовать через ТГ-ботов для коммерческого использования, но всё проебано со студенческих годов и тупо нервирует капашиться в коде, нет любви к этому делу. Норм мысля вкатиться через полугодовой курс в эту тему (100к с оплатой 0-0-24), обещают что через месяц начнём уже лутать бабосик с простых ботов на фрилансах или копить бабло и сувать фрилансерам чтобы они за меня это делали? Дай совета, анон.
>>3134172 Щас наберем их руководствам, спросим. И в роскомнадзор наберем, тоже спросим. Сразу тебе доложим, как нам отчитаются все ответственные люди. Жди
>>3134300 >обещают что через месяц начнём уже лутать бабосик с простых ботов на фрилансах Почитай "Буратино".
> двач, меня нервирует X > как думаешь, нормальная идея задротить Х полгода, чтобы начать в нем хоть чутарик че-то соображать, а потом еще задротить и еще задротить и еще задротить и работать с Х и задротить Х > как думаешь, норм идея? Ну я даже и не знаю...
>>3134300 Хуевая идея: платить бабки за курс = просто отдавать бабки за собранную инфу с бесплатных источников. Тем более, если тебе не нравится программировать. Зароботок с ботов через пару месяцев - наеб, нихуя не научат за это время ничему. Ботов получиться писать простеньких, но за такие платят мало и деятелей берущихся за такое - много. В общем на бутылку колы хватать будет, но не больше. Тему с дропшипом заказов можешь попробовать, но обычно там пиздец нервяк. Если готов быть посредником и две стороны успокаивать каждый день, что вот-вот все будет, при этом на руках нихуя не имея - то вполне заработаешь даже, только надо еще заказы найти эти, ведь как выше сказал, деятелей достаточно, и без хорошего акка на фриланс-платформах заказы будут поступать очень неохотно
>>3134313 Почитаю. Хуй бы я загорелся что-то делать в пограммировании если бы не зерокод/ноукод, пока за это почти нихуя не знаю, но то что увидел - сильно впечатлило. >>3134319 Действительно, наверное сам подпиську на гпт4 куплю и буду ковыряться черпая инфу из открытых источников. Они обещают что начнем лутать на фрилансах или устроют через 3-6 месяцев жуном, но я свои проекты хочу пилить и сам монетизировать, работаю с трафиком, для этого решил в тысячный раз вкатываться.
>>3132848 Бро, спасибо тебе за помощь, но, мне кажется, это не сработает. Допустим у нас на входе: A:1, 2, nan, 4 B:1, nan, nan, 5 C:1, 3, nan, 5 Здесь, как будто бы, будет В:1, 2, nan, 5. И это помешает В присосаться к С. И казалось бы, можно отсортировать ДФ в обратном порядке, но там один хуй будут спорные ситуации. Поправьте меня, если я не прав. У меня есть одна идея, как это сделать, но я сейчас в очко и могут возникнуть вопросы.
>>3130515 Питон внутри использует для флоата использует тип float64 (он же double в си), поэтому работать будет скорее даже быстрее, чем инты.
Но оба типа на самом деле работают жутко медленно из-за дичайшего оверхеда на динамическую типизацию. Ты когда делаешь c = a + b, интерпретатор должен сначала продраться через все эти обёртки над типами, прежде чем выдать результат.
Реально потеря производительности раз в 100 относительно си-кода в таких задачах.