Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы: https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации https://dumpz.org/ - можно постить листинги, не требует регистрации https://pastebin.com/ - для листингов, регистрация не обязательна https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться
Вопросы-ответы: — А стоит ли читать Лутца, том номер N? Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.
— Стоит ли читать %книга_нейм%, если там питон версии 2.х? Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х
— А что ещё можно читать? Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html
— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом? Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4
— А как учить джангу? Нахожу только книги по джанге 1.х У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.
— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
— Как можно без лишней возни ускорить программу на питоне 1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь. 2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.
— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником. Исходник: https://dumpz.org/bASGKD8cCFDf
>>2363033 3.11 обещают ускорить: > Python 3.11 is up to 10-60% faster than Python 3.10. On average, we measured a 1.25x speedup on the standard benchmark suite. See Faster CPython for details.
инструкции Обнаружение палиндромных продуктов в заданном диапазоне.
Палиндромное число — это число, которое остается неизменным при перестановке цифр. Например, 121 является палиндромным числом, но 112 не является им.
Учитывая диапазон чисел, найдите наибольший и наименьший палиндромы, которые являются произведениями двух чисел в этом диапазоне.
Ваше решение должно возвращать наибольший и наименьший палиндромы вместе с коэффициентами каждого из них в пределах диапазона. Если самый большой или самый маленький палиндром имеет более одной пары множителей в пределах диапазона, верните все пары.
Пример 1 Учитывая диапазон [1, 9] (оба включительно)...
И учитывая список всех возможных продуктов в этом диапазоне: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 16, 18, 15, 21, 24, 27, 20, 28, 32, 36, 25, 30, 35, 40, 45, 42, 48, 54, 49, 56, 63, 64, 72, 81]
Произведения палиндрома представляют собой однозначные числа (в данном случае): [1, 2, 3, 4, 5, 6, 7, 8, 9]
Наименьшее произведение палиндрома равно 1. Его факторы таковы (1, 1). Наибольшее произведение палиндрома 9. Его факторы (1, 9) и (3, 3).
Пример 2 Учитывая диапазон [10, 99] (оба включительно)...
Наименьшее произведение палиндрома равно 121. Его факторы таковы (11, 11). Наибольшее произведение палиндрома 9009. Его факторы таковы (91, 99).
Примечания относительно реализации smallestи largest: Обе функции должны принимать два аргумента ключевого слова:
max_factor: интервал min_factor: целое, по умолчанию 0
Их возвращаемое значение должно быть a tuple -- (value, factors)где valueсам палиндром и factorsсодержит iterableоба множителя палиндрома в произвольном порядке.
Сообщения об исключениях
Иногда необходимо вызвать исключение . Когда вы делаете это, вы всегда должны включать осмысленное сообщение об ошибке, чтобы указать источник ошибки. Это делает ваш код более читабельным и значительно помогает при отладке. В ситуациях, когда вы знаете, что источником ошибки будет определенный тип, вы можете вызвать один из встроенных типов ошибок , но при этом следует включать осмысленное сообщение.
Это конкретное упражнение требует, чтобы вы использовали оператор повышения, чтобы «выбросить» a, ValueErrorкогда функция largest()или smallest()получает пару факторов, которые не находятся в правильном диапазоне. Тесты будут пройдены только в том случае, если вы включите raiseи exceptionсообщение вместе с ним.
Чтобы вызвать a ValueErrorс сообщением, напишите сообщение в качестве аргумента exceptionтипа:
# if the max_factor is less than the min_factor raise ValueError("min must be <= max")
В ideone и replit.com все работает как надо. Но сайт с заданием с автопроверкой почему-то говорит о бесконечном цикле. Это мой код говно или сайт хотел чтобы я сделал все именно в пределах 2 функций (я 3-ю сделал для формирования словаря).
Призываю, прежде всего, наверное бизнес-аналитиков, иных прочих аналитиков и дата сатанистов ответить на мой вопрос. Хотя, думаю, помогут мне могут не только они, так что милости прошу всех.
Я сам работаю бизнес-аналитиком (НЕ в it), хочется чего-то с бОльшим уклоном как раз в it или вовсе в data science.
Вот я изучил более-менее основы основ питона, общую базу, так сказать (для уровня аналитика, на уровень разраба я не претендую, хотя курил и курю курс для разрабов тип). Теперь в контексте питона я думаю изучать уже что-то с уклоном с работой с данными, аналитикой. По описаниям интересующих меня вакансий я часто вижу про библиотеки pandas и numpy, именно их я хочу и покурить. Что такое библиотеки, как их юзать - я общее представление имею, просто в ходе учебы это были другие библиотеки (например, re для regular expressions или beautifulsoup для scraping).
Вот, как бы мне лучше этому по-вашему сделать? Как это делали вы в свое время? Хватит ли просто самых популярных там видосиков на ютьюбе или мб лучше какой-то ресурс специфичный использовать? Мб у вас есть мнение что pandas и numpy это залупа и прошлый век, и крутые спецы в области работы с данными юзают X или Y.
Мб есть просто советы общие мне, кроме сосания хуев и делания бочки
>>2363419 Вам похоже лишь бы пукнуть невпопад, да пытаться самоутвердиться писакая такое. С паттернами не знакомы, про шаблоны проектирования и интерфейсы уже не говорю.
>>2363426 С чего вы взяли тетя Ванга? Какие у вас постгресе есть паттерны которые превращают схему в код на питоне? Любая библиотека будет делать что я написал. Подставлять переменные в шаблоны и срать в файлы.
Ну я не оч помню описание вакансии, это год назад было, помню про SQL и тип продвинутое знание excel. SQL я знал, хотя сейчас понимаю, что знал хуевастенько, эксель тоже не ебать мастер, но на собесе хватило.
Просто если это не айти, то там требования технического характера могут быть скромненькие.
Образование у меня экономическое если что, курсов никаких не заканчивал с дипломами, просто указал в резюме что знаю sql, умею там дрочить сводные таблицы и графики в эксель с формулами дроченными, ну меня и позвали.
>>2363435 Понятно, вакансия уровня сел-поехал если не совсем глупый.
Судя по вашему первому сообщению вы сами особо не знаете что хотите, датасаенс, а может бЭкЭнд разработка? Сейчас компании не особо заинтересованы в тех кто окончил какой-то модный курс, конкуренция сейчас гораздо больше чем пол года назад, например. Отбор идет в основном из тех у кого уверенные хардовые скиллы, нет времени на раскачку каких-то условных джунов. Конечно не везде так, но настроения примерно такие.
Аноны, помогите плиз со скриптом. Суть такая: есть список со строками, в строках есть арабские цифры. Далее есть словарь, в котором ключ - арабская цифра, а значение - числительное. Мне нужно заменить все цифры в строках на эти числительные. Типа такого: list_of_str = ['тест 1', '2 тест', '3 тест', '1 тест', 'тест 2']
>>2363524 list_of_str_transformed = [] for text in list_of_str: ____for k, v in dictionary.items(): ________text = text.replace(k, v) ____list_of_str_transformed.append(text)
>>2363517 Дружок, мне твои инсайты по поводу перспектив вкатунов в айти или по уровню вакансии вот до пизды совершенно. Я сюда не за этим пришел. Мой первый пост не о том совершенно был, а инфу по своему бэкграунду я дал, чтобы отвечающий отвечал как нубу, не более.
Мне нужно, чтобы пояснили, как люди - неопытные люди - обычно начинают работу с новыми для себя библиотеками, в данном случае - numpy и pandas. Просто гуглить названия объектов из этих библиотек и не париться? Мб есть пиздатый ресурс по основным библиотекам питона, который часто юзают. Может что-то конкретно по специфике этих библиотек.
Просто мне нужен ответ от опытного задрота опытному задроту, мне нужен совет нубу.
>>2363689 Ну вот лично ты, когда ты знаешь, что для твоего проекта, или что ты там кодишь, нужно много юзать новую незнакомую для тебя библиотеку, по сути твой проект будет базироваться на этой библиотеке, вот что ты делаешь, какие твои первые действия?
Неужто просто ее импортируешь и на месте разбираешься методом тыка?
>>2363564 Хзхз, в вакансиях иногда указывают чтобы было вышшее образование, техническое, но это постольку поскольку, потому что больше интересует работодателя какие хард скиллы и релевантный опыт имеются.
чтобы научится надо ставить задачу, брать и делать
а не искать шорткаты с бестпрактисами..
если тебе ничего не интересно, ничего не нужно и ты не способен самостоятельно организоваться и поставить себе задачу - то ты биомусор и у тебя нет будущего в этой профессии.
>>2361735 → Сокращение имен либ это в принципе признак омежки. Альфач не стесняется писать размашисто и широко, захватывая максимальную ширину экрана, ведет себя как Хищник, омежкин постоянно суетится, чувствует себя неуютно и в целом ведет себя как типичное Травоядное.
>>2363721 Сорян, вопрос не по теме треда. Сейчас тоже хочу пердолить ставить арч, помимо kde нравятся еще какие-нибудь DEшки? Можно потом если че сменить без переустановки всей системы?
>>2363779 > нравятся еще нет, плазма вышка. кути топ, а гтк говно с пиздецом в головах кор дев
если бы был додиком с крошечной ЗАПИСНОЙ КНИЖКОЙ с убогим тн ипс экранчиком и ублюдской клавиатурой с малым ходом и скотоублюдской раскладкой с охуевше-широким юзлес спейсбаром - вместо рабочей станции с ультравайдом и кастом клавой -- то поставил бы питоняшный кутайл
> Можно тут ты не индусский хуеглот, который делает так как решил его индусский барин
на Линуксе ты Пользователь Операционной Системы, здесь все сделано для твоей продуктивности и комфорта
ты можешь установить абсолютно все де и вм, и переключаться между ними в няшном логин скрине
>>2363833 Смотрю по ситуации. Если у либы есть хороший док, то его, как правило, оказывается достаточно. Остальные вопросы гуглю, как с помощью либы делать такую-то хуйню. Если дело касается каких-то новых техник, например, параллелизма, то смотрю статьи на тему, что мне язык может предоставить в этом плане. Дальше лезу в гитхаб и смотрю на говно то как его используют разные люди. Но и этого бывает недостаточно. Если нужно больше, то просто гуглю.
>>2363698 Чел, нахуй ты срешь в тред своими лаба1_введение_в_матплотлиб.pyc?
Ты понимаешь, что это просто детсадовская хуета, которой никто в здравом уме не будет гордиться? Пиздец блять, мы на лабах лабиринты генерили и реализовали алгоритмы поиска пути с визуализацией и это не считалось чем-то крутым. А ты какую-то младенческую говнину сюда тащишь и пиздишь с видом знатока.
Есть один цикл: while True: и в нём происходит замена ключей представленных туплями (i[0],i[1],i[2],i[3]): new_dict = {} for i in dict.keys(): x = i[0] x += 1 new_dict[(x, i[1], i[2], i[3])] = dict dict = new_dict
Вопрос: насколько это быстро работает если ключей в словаре >12k и как блять это посмотреть в cProfile?
>>2363936 >генераторов Накинул проверку по нахождению на экране = +10 fps GTX 710 если что, возникла проблема с выводом из словаря значения, ща буду фикусить.
>>2363881 > лезу в гитхаб и смотрю а если бы ты не жрал окаменелое пчирмовое говнище, то ты бы не жрал окаменелое пчирмовое говнище.
>>2363882 додик тебе логер показывает и модуль и функцию, если ты внутри этого крошечного скопа не можешь сообразить что куда - то ты проф непригодный даун, с функциями толще 100 лок.
>>2363914 тупопиздорылое ничтожество без мозга, от своей всеобъемлющей зависти так перекосоебило, что отключилась последняя извилина, которая не позволила ему прочитать тайтлы в файлах...
первый пик - это дефолт код из экзамплов либы второй пик - мой кастом идея бехайнд - показать зеленой питоняшке как правильно изучать код потому как тупая ебля ссаных доков не даст тебе ровно нихуя, до тех пор пока это все не осязаемая для тебя абстракция... 4 пик - охуевшая бизнес логика расчета выплат, на которую ушел почти месяц ( дальше этот ничтожный хейтер наверняка проибется в очи и не заметит истинный возраст файла ))
> мы на лабах лабиринты генерили и реализовали алгоритмы поиска пути с визуализацией чего ты, чмо никчомное, конечно же никому не покажешь
> и это не считалось чем-то крутым потому что так и есть, как и 95% всех задач в программировании. вот только ты ничтожество жалкое дальше либ обоссаных никуда не ушел, а я дошел до москва-сити и датасаентиста / руководителя проекта.
>>2363969 >а я Ну посмотрите посмотрите чего Я добился! Где вы, а где Я?! Жизнь всех расставила на свои места, 10 лет назад вы ссали мне на голову в школьном туалете, а теперь я РУКОВОДИТЕЛЬ. Пресмыкайтесь двачерские смерды!
чел, к психологу сходи, у тебя беды с башкой очевидные, без негатива
Меня тут вопросом озадачили. Если размер списка заранее известен, есть ли какой-то профит в том, что бы сразу создать его как [None] * N и выставлять элементы по индексу? Или append лучше? Я как-то не задумывался раньше и всегда юзал аппенд. При первом варианте у нас будут шаги создания ссылки + обращение к элементу по индексу + замена ссылки с None на нужный объект, это же лишние шаги, никакого профита?
>>2363983 > ворованные картинки > image.png животное гадкое ты совсем там обезумело?
все мои скриншоты всегда с датой в тайтле, у тебя реально айкью как у собаки...
раз ты такой безмозглый поясню - я прикрепил картинки чтобы показать насколько просто решить любую задачу, ибо любая задача уже кем то решена до тебя, просто гуглишь и делаешь
то что тебе вложили в рот в шкалке и провели за ручку, показали как сделать йобу - ниочем вообще
потому что самое сложное это захотеть, придумать и продумать идею, а конкретная реализация это лишь вопрос времени и усидчивости
ну и ключевое - посмотри на свое ничтожное поведение говно ты ебаное - ты сагрился на мою помощь зеленой питоняшке уебок жалкий)) потом ты что то пукнул про свой никчемный маняопыт, а теперь после того как я мокнул твое пиздорылое ебалище в говнище ( попутно попросив пруфов ) ты оканчательно потерял остатки разума и метнул стрелу в меня, охуенно чо ( нет )
и да, никто в гитхаб свои рабочие проекты не заливает, потому что они под нда, удвительно да чмоньдель?)))
>>2363992 >В чем профит? Я вас и спрашиваю! У меня есть флешбеки, что Хирьянов так в лекциях делал, но точно не помню. Мб ему просто по алгоритму это удобнее было.
>>2363990 Мда. Каких только шизов не увидишь на дваче. >первый пик - это дефолт код из экзамплов либы >второй пик - мой кастом Твой второй пик - это пизженный с реддита скрин.
Ты забыл, что писал пару постов назад, шизосрунька?
>>2364003 Ебучий шизофреник, как же ты заебал. Я не верю, что это троллинг. Это и правда какой-то шиз под солями сидит и срет в тред своими хеллоуворлдами.
>>2364036 перемещение персонажа на 2д карте осуществляется по абсолютным координатам
апскейл карты без сглаживания это настройки мипсов (самой карты)
советую не ебать голову, а инсталлить уеч или годот ( помни что упити для даунов )
сейчас тебя уносит от конечной цели в какой то левый дрочь
ну и гд помойка похлеще пр, советую найти уютную комнату с индусами в дискорде
да, а поинты легко собираются, ебашь в байнари, потом хуячь контур, ну и тащи туплы, можно и в нумпае и в опенсв сделать, но в последней тебе попроще будет. если не заебыватся с сортировкой лайнов, то задачка на вечерок ( если совсем нулевый )
>>2364054 >перемещение персонажа на 2д карте осуществляется по абсолютным координатам У меня речь о самостоятельном перемещении с просчётом пути >от конечной цели Конечная цель - сдохнуть нахуй разобраться в алгоритмах, писать с закрытыми глазами, любая другая. Я полтора месяца в жизни программирую. >гд помойка + >поинты Я всё никак не пойму это каждая точка ректа(скорее это) или центр или грани, а потом уже понимаю, что надо их кучковать, превращать в месиво поинтов и называть это месиво по имени, ака {месиво : имя}.
>>2364070 > У меня речь о самостоятельном перемещении с просчётом пути как ты собрался её считать если нету обстиклсов с коллизиями?
а вообще это типовая задача, которую нахуй не всралось делать самому
не лезь в это низушное говно блядь, это хуета для даунов дрочеров с двача, которые днем разбирают унылое говно по тикетам на галере, а вечером они хуярят водку, всецело осознают свою ничтожность и рыдают как побитые шлюхи пытаются изобразить какой то претенциозный, нахуй никому не нужный велосипед, ведь не зря их мерзотные диды трахали 4-7 лет без продыху неупавшим говном которое они уже наполовину забыли
> разобраться в алгоритмах зачем?
> писать с закрытыми глазами ну ок, метод слепой печати вещь важная
> любая другая значит никакая, ты дрочешь няш.. ставь конечную цель - сделать такую то игру с такими то фичами, либо вкатиться туда то (гуглишь вакансии и их требования и дрочишь их, а не хуйню левую) время то тикает, мамин борщик вещь конечная....
> надо их кучковать по типу, который ты изначально как то задал, ага. потому что иначе это ебля с муторным перебором и предикатами ( в питоняшке уже есть топовые готовые штуки под любую хуйню, но я все же советую попуститься лел )
дикты еще медленней листов, опирайся на имя переменной и тупл
>>2363031 (OP) Будучи джавистом, пробую питон. С непривычки, трудно слёту воспринимать к какому блоку относится код. Есть ли для pycharm плагин, добавляющий фоном вертикальные линии?
Вопрос тем, кто пользуется библиотекой Pillow, как мне из изображения (с прозрачностью) создать его маску (причем нужно чтобы можно было любого цвета, не только черного). Прикрепил как пример — из елки создается ее черная как бы "тень".
>>2364104 >как ты собрался её считать если нету обстиклсов с коллизиями? В гд писал как, A*ASTAR так и называется по матрице мира, там 10 строчек кода. То что на видосе это объекты класса натянутые на свой >полигон как ты говоришь, они и есть препятствия, это не вид сверху, это вид сбоку, а их >полигоны раскиданы через матрицу мира, но находясь рядом с препятствием персонаж не может перейти на клетку матрицы в которую нет доступа, он даже путь через них никогда не просчитает. >мамин борщик вещь конечная Есть наебизнис, уровня "самозанятый". Ну, и движки накладывают некоторые комиссии если уж о деньгах. >по типу, который ты изначально как то задал Вот это в процессе построения карты мира через Диаграмму Вороного, который жил - не падай в обморок - в 19 веке. >дикты ваивали Соснули, правда. >зачем? Затем. Зачем мальчики разбирают машинки?
>>2364171 > это не вид сверху, это вид сбоку охуеть.
> движки накладывают некоторые комиссии эпики имеют бесконечные деньги, это не додики с упити парашей на решотке, которые крысили темную тему до последнего сука пока этот сжв скам с зелеными волосами уже на каждом углу обоссывать не начали за эту хуйню блядь..
до ляма баксов (или типа того) ты не платишь никакой комиссии, годот вообще бесплатный, чисто лого размещаешь его и все
> не падай в обморок ахаха, няш мне по ху йю =)
плюс это слишком дорого и в рантайме никто не будет грузить честный шум
> Зачем мальчики разбирают машинки? чтобы посмотреть что внутри, довольно быстро ты понимаешь что там нихуя интересного, и больше перестаешь ломать то что работает.
>>2364186 >в рантайме >процессе построения карты мира Г - Генерация, Р - Рандомная, С - Сохранения, З - Загрузки Сначала Р Г, захотел кушоть С, покушол З >довольно быстро Значит скоро. Я же не кинулся писать код для отрисовки окна в ОС.
>>2364193 > процессе построения карты мира имеет совершенно конкретные ограничения
а дальше начинается левел стриминг и если ты не очень умный, то после стыка будет дико пролагивать как ссаная арма или другая даунская параша типа старкова
ну и минус генерации в том что ты каждую загрузку будешь заново генерироваться по сиду, и прогресс будет заебно сохранять (но это не точно)
> Я же не кинулся писать код для отрисовки окна в ОС. ну такое себе утешение няш ( да и тем более в настоящей ОС (типа Линукс), окно отрисовать не так уж и сложно, это индусские хуеглоты могут гордиться, после того как индийский барин им на полшишечки разрешил погулять за забором))
>>2364222 >заново Не по сиду, а по отгенерированной + измененной игроком + сохранённой матрице, за наносекунду, если бы не спрайты. >стыки Нехуй выходить из начальной локи. >утешение На Вас не угодишь.
>>2364119 > В логах пишется модуль, а речь шла про длинные названия модулей. Блять, ты не в курсе, что формат логов настраивается и там можно все что угодно писать? Пиздец просто > В таких случаях лучше логи через json делать. Ты ебанулся? Зачем тебе логи в виде жсона? Нахуя ты вообще сырые логи читаешь? Подними себе сентри и не позорься нахуй
нихуя в вашем погромировании не понимаю, хочу просто посмотреть что оно и как, понравится ли. Майкл Доусон «Программируем на Python» - хорошая книга для чтения?
>>2364298 Во первых. Ты сын мертвой спидозной шалавы. Во вторых. Я умею настраивать логи больше чем ты. В третьих. Логи не лежат у меня в папочке с парой строчек, а сидят в графане через локи. В четвертых. Информативность и удобочитаемость логов помогает максимально быстро локализовать источник проблем. Хотя откуда тебе это знать, ты ж просто трейсы выводишь и по полчаса гуглишь ексепшоны.
>>2364381 > Во первых. Ты сын мертвой спидозной шалавы Ну, зачем ты так про свою бабку? > Во вторых. Я умею настраивать логи больше чем ты Оооо, я заметил > В третьих. Логи не лежат у меня в папочке с парой строчек, а сидят в графане через локи. Ты ебанутый? Что несёт, просто охуеть. Логи он через графану читает. Нахватался умных слов если, то хоть загуглил бы что они значат. В графане не логи, а метрики собирают. Хуй знает что ты там собрался через графану в логах изучать, болезный > В четвертых. Информативность и удобочитаемость логов помогает максимально быстро локализовать источник проблем. Хотя откуда тебе это знать, ты ж просто трейсы выводишь и по полчаса гуглишь ексепшоны. Блять, ты реально ебанутое шизло, которое вручную дрочит логи. Представляю ебало твоих коллег, когда ты устроишься на первую работу и пизданешь чета такое при людях
>>2363031 (OP) > Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий. > языка ангелов Проиграл. Высунь свой язык из амерской жопы, придурок.
>>2364875 >>2363988 В теории вариант с предварительной аллокацией работает быстрее, потому что когда ты делаешь append(), то размер списка нарастает постепенно, питон выделяет память с запасом под список, но как только эта память кончается, приходится делать релокацию, а это дополнительные ресурсы.
Я ради интереса потестировал, на некоторых размерах разница есть, например если 1 миллион ячеек, что самое интересное, на 10 миллионах и на 100 тысячах разницы уже нет.
На миллионе разница в простейшем случае около 20%, что вроде как заметно. Но это простейший случай, когда ты только список заполняешь и ничего полезного больше не делаешь.
Ну и ещё иногда алгоритмическая логика может быть, что если ты предварительно выделяешь память, то ты можешь обращаться сразу произвольно, плюс логика в принципе кода другая. В каких-то случаях читаемость выше, если ты сразу показываешь, какого размера будет массив в итоге.
>>2364921 Да тут всё тоже самое, что и в питоне. Как где-нибудь в Си у тебя будет ошибка int m[100]; m[100] = 5; будет Segmentation fault, хотя это зависит от ОС и кода в целом, потому что ты выходишь за рамки массива И в питоне если m = [0] * 100 m[100] = 5 будет исключение
С точки зрения логики кода выделение памяти заранее это очень спорное решение. Потому что ты тогда вроде как предусматриваешь возможность, что у тебя в итоге будут дырки, массив будет заполнен значениями по-умолчанию.
При этом None очень спорно, потому что если ты делаешь аннотацию типов, тебе их надо объявлять как Optional и уже дальше делать соответствующие проверки. Поэтому придётся заполнять какими-то приемлемыми значениями.
Короче спорно. Но правда в том, что если ты выделаешь память заранее, то ты потом можешь заполнять список хаотично, с конца, например, что вполне часто может быть нужным в каких-то алгоритмах.
Моё мнение, что этим надо заниматься, только если логика кода такая. Но не из соображений оптимизации, которая в основном никакая.
Хочу добавить в свое приложение переодические задачи Вот например, мне надо исполнять функцию с пика раз в день Попытался её закинуть в апскедулер, но add_job(..., args=(session, parser,)) чет обосрался; не смог прокинуть в екзекутор уже настроенные инстансы из приложения
Че можно сделать? Чет не очень хочется создавать отдельные экземпляры алхимии и парсера ради пары тасочек
>>2363033 Мы сейчас выбираем, на расте или на го часть сервисов переписать потому что в датацентрах дополнительные стойки практически невозможно взять.
>>2365085 Не неси хуйни, если у тебя таска раз в минуту печатать слово говно, то такой вариант пойдет. Если раз в сутки нужно цены обновить, то при перезапуске сервиса цены обновляются позже. А в теории с регулярным перезапуском сервиса вообще не обновятся. >>2365044 > должно быть на фастапи, там есть беграунд таски Ты ебанутый? Нахуя тут фастапи? Бэкграунд таски есть по умолчанию в асинкио > если что то сложнее то подымай рядом докер с простым самописным шедулером Нахуя тут докер? >>2365033 appsheduler бери, он лучший в этом деле
>>2363638 шиз, тебя во фронтенд-треде обоссали, сюда пришёл шизу затирать? не умеешь в питон - не сри своим охуенно важным мнением и не вводи людей в заблуждение.
>>2365381 воркач чуть более чем полностью гречневый, здесь же даже жабисты - душные дауны, но ни разу не гречневые скотоублюдки, лишь один раз видел мрот мразь, которая была готова залететь на 60к лол, но это нюфаг тред был, так что нещитово :р
я еще правда не захожу на парашу к низушникам и прочими 1с'никам.. но как говорят - среда красит анона - а значит у них не все так плохо
а что до поиска работы - так её надо искать всегда, это как с домашними животными (тян) - расслабился и пакя
так и работодателя надо держать в тонусе, иначе будешь вечным джуном или нищим лидом, рыночек он такой, ага
>>2365273 Пиздец, долбаеб запускает треды через asyncio. Ну и вообще, итт одни дегенераты сидят, запускают воркеров в тредах. Просто охуеть, какие же наглые вкатуны, какоторые пытаются спорить и кому-то что-то советовать >>2365261 Долбаеб, зачем ты что-то пишешь, если даже не знаешь про таски в асинкио? > долбоеб нахуй тащить мокропиську когда свой код на 25 строчек с пробелами, ты реально настолько тупой даун? Ого, ты уже нафантазировал 25 строк кода? Охуенно. Ну и да, ты же в курсе, что без записей в бд у тебя после перезапуска/падения сервиса все таймауты для джоб начнут заново отсчитываться? Зачем ты после курсов скиллбокса пытаешься что-то пукать итт с видом, будто уже хоть раз писал код в продакшн?
>>2365608 > динамической хуйне, которая если бы ты не был дауном, то знал как питоняшка легко превращается в охуевший статик питоний
а если еще добавить буквально один кейворд, то питоний буститься в 70 раз
но никому это нахуй не всралось
потому что на скорость и надежность, А! и вес еще (это блядь просто клиника нахуй) - дрочат только ансикьюрные никчемные низушные дауны.
в случае любого шухера докер поднимется сам, мне похуй вообще.
>>2365607 ебанашка а у тебя какое обострение что тебе кажется что меня откуда то выгнали?))) ты ебанутый?) посты потерли через неделю после того как их все прочитали - мне похуй)
>>2365602 > даун не знает что там под капотом. Какая разница что там под капотом, долбаеб? Ты используешь инструмент не по назначению > > после перезапуска/падения сервиса все таймауты для джоб начнут заново отсчитываться? > даун просто даун. Эти пуки в лужу от вкатыша, который понял, что обосрался, но до конца не хочет это признавать лол
>>2365657 стча он судорожно побежит гуглить и прикладывать скриншоты, но так как сам не знает, что именно надо гуглить, то будет скринить не то)))) точно так же, когда он обосрался с максимумом в 32 треда на процессор
>>2365680 Ты приложил только подорожник к своей попке после того, как тебе туда пол треда насовали. Покажи где написано в документации, что после перезапуска сервиса твои таски будут выполнятся точно вовремя, а не собьются и не начнут считаться заново, долбаеб
>>2365663 Собственно, именно так и произошло. Чел думает, что заскринив эвент луп в документации, он докажет, что таски в асинкио магическим образом узнают когда им выполнятся нужно после перезапуска сервиса
>>2365789 > свою историю охуительного успеха наебал эйчара "я супер спец, всё умею, всё могу! и питон знаю, и яваскрипт, и на дуде игрец!" > и творческого перерыва через месяц наёб раскрылся и тебя попросили на выход.
>>2366359 Используйте по своему усмотрению. VSCode бесплатный.
Вообще можно использовать даже любой редактор с плагинами, например Atom. Плагины там необходимы для подсветки синтаксиса и подсказок + настраиваемый запускатор .py файлов, этого вполне достаточно.
>>2366887 Завезли уже поддержку запросов и ответов по ssl? Пару лет назад на плюсах на 5 версии писал приложение. Дошел до oauth авторизации и ахуел, что он только http поддерживает. Который везде уже поотключали
>>2366918 в душе не ибу мне похуй на это низушное говно убогое с ублюдским кумылем
потыкал палкой чтобы убедиться что говно это говно, нужно для двух целей - ОС и игоря ( ну и может еще СТАВОК НА СПОРТ ) а все остальное это дрочь для додиков-даунов.
бекнулся на питоняшку с вуем - ничего лучше для интерфейсов нет. ( после того как на стилусе создал свой мета язык заместо цыс параши )
Есть задача - несколько раз в день тянуть случайные данные из инторнета. Как считаете, для проверки того, что полученные данные уже были вытянуты ранее, стоит поднять редис? Или хранить локально в sqlite будет достаточно?
>>2367114 Зависит от данных, думаю. Но я бы не заморачивался с редисом, если скачивается не много. Сравнивал бы по хэшу как-нибудь, если в обоих случаях гарантируется одинаковость данных
>>2367118 В смысле? В базе sqlite. Да хоть в текстовом файле, если у тебя не особо сложная структура. Кстати, а зачем вообще проверять данные после их скачивания? Не проще по урлу их чекать?
>>2367118 Абсолютный идиотизм сравнивать файлы по хэшу для проверки на изменение. Ты же понимаешь, что хэш чисто математически не может принимать столько значений, сколько есть возможных значений у файла? У тебя коллизии будут с вероятность процентов в 10-20 возникать, проще уж реально урлы хранить и данные по ним раз в месяц обновлять и все
>>2367121 >>2367126 А я не на изменение проверяю, а на уникальность. С апишечки тянуу JSON-чики раз в несколько часов, нужно проверять, уникальный ли жсон пришел или нет. А URL у меня динамически формируется, вернее динамически в него подставляются query параметры.
>>2367129 > А я не на изменение проверяю, а на уникальность Ты же понимаешь, что это одно и тоже? > С апишечки тянуу JSON-чики раз в несколько часов, нужно проверять, уникальный ли жсон пришел или нет Если жсоны достаточно большие, то у тебя коллизия на коллизии будет >>2367137 Мсье недиванный криптоэксперт разрешил проблему коллизий и смог в 32 байта запихнуть все возможные значения для файлов в 10мб?
>>2363031 (OP) Эксперты, вам попадался такой код когда вы не могли найти модуль который импортировали? пип инсталл использовался в гугле не гуглится import division
>>2367151 Пчел, ты очень тупенький и вообще не понимаешь о чем идет речь. Ты примитивных вещей не понимпаешь вроде того, что нельзя 10 людям выдать 5 имен так, чтобы у каждого было уникальное имя. Если у тебя прообраз хэшфункции больше, чем количество значений хэш функции, то коллизии неизбежны. А на данных большой длины, разница будет измеряться триллионами
>>2367126 пчел, ты хэш с чексуммой не перепутал случайно? коллизии могут у какого-нибудь сраного четырёхбайтового CRC возникнуть, и то в одном случае на миллион, а у 32байтовых хэшей типа md5 коллизии хуй найдёшь. если файлов миллиарды, то можно юзать 64байтный sha256.
Мокаю одну функцию одного класса через mocker.object.patch, а этот хуев мок и в других тестах срабатывает. Ну что за хуйня. Неужели нельзя что-то замокать только в рамках одного теста, не ломая при этом все остальные?
>>2363524 > Аноны, помогите плиз со скриптом. Суть такая: есть список со строками, в строках есть арабские цифры. Далее есть словарь, в котором ключ - арабская цифра, а значение - числительное. Мне нужно заменить все цифры в строках на эти числительные. Типа такого: > list_of_str = ['тест 1', '2 тест', '3 тест', '1 тест', 'тест 2']
>>2367653 Наоборот, джуны детектятся на однострочках, которые используют их всегда и везде. Мало того, длинные генераторы читать неприятно, так ещё их используют из-за побочных эффектов.
За строки кода платят. За читаемость платят. За грамотность платят. За укорачивание функции не платят, это не микроконтроллер.
если писать "for x in list_of_str: ..." то действительно ничего не выйдет
а если писать как в дореволюционном бейсике "for i in range(len(list_of_str)):" то потом берешь list_of_str заменяешь че те надо было и присваиваеш обратно list_of_str = <новая фигня>
>>2363031 (OP) Анчоусы, поясните за веб на Python 2022 Последний раз писал в 2018м, там был синхронный старый Django и скрипты автоматизации. Потом писал на дрисне. Что изменилось за 4 года?
>>2367758 >aiohttp Понял, а что ещё очень выгодно сейчас повторить/изучить? Я как раз не крудошлёп. Стандартный набор docker/k8s/git/linux/oop/bd/patterns имею
> если какому то дауну трудно понимать код без комментариев -- то это профнепригодный биомусор, ноудискас. ))))
алсо шнобель отчасти прав: кабанчику нужно не сделать всё по красоте с самого начала, а быстро слепить MVP из говна и палок и продать его другому кабанчику за миллион долларов, а второму кабанчику развести лохов инвесторов на десять миллионов долларов и нанять вас, зануд, чтобы вы переделывали получившееся говно по красоте.
прочее безмозглое дерьмо собираемое за неделю из готовых модулей, написанных умными людьми (у которых по традиции не хватит интеллекта на качественную доку), а не дауном велосипедником с юзлес дипломчиком из стобальной помойки
или что блядь ты сделал такого значимого и реально комплексного?
>>2367962 > не поддерживает работает не лезь. если функционал по какой то причине перестает удовлетворять деманду бизнеса - то это совершенно точно придется переписывать from the ground up. ты не ванга, а потому твоя архитектура соснет, каким бы ты душным додиком не был и сколько бы не завейстил тайма и денек на эту хуйню, которая потом один хуй не заюзается ( очередное подтверждение твоей проф не пригодности, ты убыточен для компании. )
Посоветуйте хорошую книжку по питону, где есть закрепление материала с помощью задачек. Желательно, чтобы там было как можно больше информации по языку и что с ним можно делать. Можно сложную. Можно на английском.
Вопрос по Джанго Я очень нубоват, не стукайте сильно, если что Вот так нормально делать? Я имею в виду то, что там несколько ретурнов на каждое условие Если формат не тот, форма не сохраняется и рендерится шаблон с ошибкой (через messages) Если другое условие, то с другой ошибкой И если всё нормально, то форма сохраняется. Изображение там необязательно должно быть, если что Или как-то лучше и более эффективно можно сделать? У меня просто опыта нет и нагуглить такое никак Ну оно работает, так что уже неплохо
>>2368016 ничего из этого не понял, я же написал, что нуб
>>2368017 >А почему проверку пикчи не сделать в валидации формы А где это делать? У меня вот сюда во view форма приходит. Ну и джанго делает свою базовую проверку через is_valid(), а кроме is_valid мне нужна своя проверка
>>2368028 >А где это делать? У меня вот сюда во view форма приходит. Тебе нужно отнаследовать класс от PostForm, в котором будет переопределён метод is_valid
Анансы, помогите пожалуйста. Пишу недо-клиент телеги с pyrogram, клиент запущен в отдельном треде со своим event_loop. В другом потоке приходит сообщение, что надо послать сообщение через телегу, но из того потока недоступна ни одна функция клиента. Как из того потока получить доступ к event_loop потока клиента? Только посылая сообщения через Queue? Или можно как-то напрямую?
где bpython а где brython блядь, это две разные руки, стало быть у тебя нарушены межполушарные связи и ты реально овощ с грядки.. хочешь я тебя полью :?
Посоны, запилил свой пет на джангосайт со статьями по игорам и технике.
Функционально круд, но не совсем примитивный:
1. Запилил свою модель пользователей на основе AbstractUser. 2. Реализовал авторизацию (только зареганные юзеры могут ходить в определенные части сайта и оставлять комменты или ставить рейтинг). 3. Реализовал аутентификацию. Тут все стандартно. Регистрация, вход и сброс пароля по ссылке на почту. 4. Пользователи после регистрации могут создавать, редактировать и удалять статьи, оставлять комменты, ставить рейтинги, добавлять статьи в избранное к себе в профиль. Для каждой статьи можно загрузить обложку. Обложки ресайзятся с помощью pillow в нормальное разрешение, чтобы юзеры не загружали картинки в 4к, растягивая страницу со статьей на весь экран. 5. Неавторизированные пользователи могут только читать статьи. Другие действия им недоступны, даже если они введут правильный url. 6. Реализовал поисковую строку с помощью Q-объектов. Ничего интересного, просто стандартный поиск по названию статьи или автору.
Я не стал уже заполнять БД кучей данных и оптимизировать запросы или раздачу статики, потому что это просто пет и окружение на уровне прода я максимум оптимизирую.
Что знаю/умею: 1. Создавать простейшие сайтики на джанго, начиная с моделек и заканчивая темплейтами, плюс простейший фронт с css и js. Понимаю общий цикл разработки сайта(urls/templates/views/config). Могу взять схему БД и с помощью ОРМ реализовать модели для айта. 2. Знаю синтаксис питона и про его продвинутые фичи вроде лямд и генераторов, но на серьезном уровне код на питоне не писал. Только всякие мелочи щупал на нескольких библиотеках. 3. Умею в гит. Создать ветку, запушить, замерджить, проверить на конфликты, вытянуть себе локально репу и т.д. Без изысков. 4. Пощупал докер, т.к. пет пилил в докер-контейнере. Представляю зачем он вообще нужен и в чем преимущества перед обычным pipenv.
Можно уже на стажера/джуна- резюме подавать или мне еще учиться и учиться?
>>2368552 > самый минимум это и есть > на стажера/джуна
и чем раньше ты начнёшь искать работу, тем больше шансов будет её получить, ибо растёт как количество вкатунов с курсов гикбрейнсКАТА, так и количество потерявших работу джунов-мидлов, ибо денацифицированные гейропейские компании релоцируют не всех.
>>2368580 Ну может ты и прав. Стоит все-таки уже резюме рассылать и обивать пороги галер. В любом случае я ничего не потеряю. Правда что говорить на собесах? >здрасьте, сразу скажу, что коммерческого опыта у меня нет, но я сам пилил пет, в ходе работы над которым изучил то, то и это. Знаю английский на достаточном уровне, чтобы гуглить и читать доку/книжки на англе/курсы, могу перекинуться парой слов с инглишменами. Времени у меня полно, т.к. я сыч, готов обучаться в выходные, лишь бы освоить ремесло веб-разработчика. бросается на колени ну возьмите меня к себе я даже готов за 40к веслать
>>2368552 Петпроекты мало кому интересны. Обычно присылают тестовое. Я так и делал. Мне кидали кучу тестовых и за месяц протянул скил и в итоге взяли. При том что я в вебе не знал нихуя. До сих пор кринжую со своих первых тестовых в гите. Знать всё не надо. Уметь выполнять задачи - надо, это самое главное. Если говорить что ты не умеешь, то значит тебя придётся подтягивать, объяснять и так далее. А когда говоришь что не работал с этим, но если надо будешь - вот что вызывает уверенность. Простые, короткие и однозначные решения.
>>2368590 Говори что имел дело с языком, есть опыт работы. Про отсутсвие коммерческого опыта говори неявно. Чем длиннее резюме - тем лучше. В целом, говори как есть. Всё что умеешь, но не преуменьшай свои навыки. Делал формы пару раз? Говори что можешь фронт делать. Поднимал докер один раз? Пиши что умеешь работать с ним. Что-то из личных качеств, английский, быстрая обучаемость и так далее. Никогда не преуменьшай свои навыки и не просись на работу за еду. Не давай обещаний и не делай одолжений. Ты приносишь пользу и прибыль конторе, а не тянешься за ними балластом. Показывай что ты решишь любую задачу. Не говори что тебе надо что-то подучить, это уже вопрос сроков.
Если не возьмут с этим - значит в любом случае с конторой будут проблемы, с тебя будут требовать неоправдано больше задач потом, будут конфликты. Если возьмут - значит контора адекватная и стоит у них работать.
Резюме рассылай много. В день штук 10-15 минимум. Отвечать будут на них неохотно, а присылать тестовые - ещё меньше. Отправляй всем где ты хотел бы работать, а не где бы тебя взяли.
У меня оч глупый вопрос, но тем не менее. Правда ли, что если пойти на работу питон-программистом, то тебя скорее всего посадят на линукс или убунту или что то подобное? А если я вот хочу работать на винде?
>>2368592 Да, в целом ты прав. Слова "я это не знаю, но если надо разберусь" действительно помогают при трудоустройстве. Я так на свою первую работку вкатился, правда не в ИТ. Но там была обычная работа, требующая наличия рук и IQ на уровне хлебушка, а тут веб-разработка. Все-таки какие-то минимальные мозги надо иметь. >>2368610 >В целом, говори как есть. Всё что умеешь, но не преуменьшай свои навыки. Делал формы пару раз? Говори что можешь фронт делать. Поднимал докер один раз? Пиши что умеешь работать с ним. Такой подход не приведет к ситуациям вроде "Сыч, ты же сказал, что умеешь работать с HyinyaScript, что ты тупишь? У нас заказчики уже недовольно стучат хуем по столу, Сычев, ты подводишь команду"?Впрочем, похуй, можно отпиздеться, что неверно оценил задачу или что со здоровьем плохо, но с HyinyaScript ты разберешься, если не сегодня, так завтра. Главное вкатиться.
Ну, спасибо за ответы, аноны. Я хотел еще DRF поизучать и нам нем петы поделать. Начну лучше вместо этого долбиться хрюшкам в домики.
>>2368590 То, что ты сделал вполне норм, вперед на собесы, там и узнаешь нужно тебе еще что-то подтянуть или нет. И не расстраивайся после отказов, они бывают у всех. И да, не надо пиздеть про коммерческий опыт, все всё понимают и тебя ссаными тряпками погонят за такое >>2368610 > Говори что имел дело с языком, есть опыт работы. Про отсутсвие коммерческого опыта говори неявно > А что делали? А как вот такой функционал реализовали? > пук-хрюк не помню > молодой человек, зачем вы нам врете? досвидания Охуенные советы, долбаебина > Резюме рассылай много. В день штук 10-15 минимум. Отвечать будут на них неохотно, а присылать тестовые - ещё меньше. Отправляй всем где ты хотел бы работать, а не где бы тебя взяли. Если чел не в Мск живет, то у него в первый же день все варианты кончаться лол
>>2368630 >чел не в Мск Екатеринбург. Не стольный град, но и не пердяевка. Впрочем, удаленку никто не отменял. Хотя джунов, как я слышал, не берут на удаленку.
>>2368624 Все равно придется линух освоить. Да и чего вы его так боитесь? Ты же не ядро будешь собирать, как красноглазики из /s/. Просто настроишь себе окружение, чтобы конфликтов не было и будешь прогать. Убунтой вообще можно мышкой пользоваться.
>>2368627 Не. В резюме и на собесах не надо пиздеть. Надо не преуменьшать имеющиеся навыки, но и не преувеличивать из сильно. Рассказывай всё что делал и можешь делать. Главное чтоб таких навыков было много. Когда их много сразу видно что ты не хер с горы и кое-что да умеешь.
>>2368630 Я не живу в мск. Работу нашёл на удалёнке. Другой чувак по таким же советам укатил в эмираты, нашёл работу через неделю, при том что опыт у него чуть больше года.
> пук-хрюк не помню Не проецируй. Я всегда мог рассказать о том чем я занимался. Если у тебя с этим проблемы не значит что у остальных так же.
>>2368646 Отправлял резюме всем подряд, не страдал неуверенностью и боязнью что его могут посадить в лужу как пишут здесь на подтираче. Он ещё договорился месяц на удаленке посидеть, чтоб по приезду сразу зп получить и не ходить с голой жопой. В нормальные конторы берут адекватных людей, а не с кучей тараканов и комплексов в голове.
>>2368653 Забей хуй да и все. Ну не получится у тебя что-то, да и черт с ним. Сделай выводы и двигайся дальше. Это не только с кодингом работает, но и вообще в целом. Не трать силы и нервы за излишнее планирование и самокопания. Так можно годами сидеть и что-то учить/изучать и не научиться ничего не делать.
В случае с кодингом, стоит просто подтянуть минимум, изучить основы, которые везде спрашивают, а остальное уже подтягивать после собесов. Тебя развернули, т.к. ты не знаешь докер? Ну ок, ща загуглим и посмотрим что это такое.
Правда злоупотреблять не таким не стоит. Хоть какая-то база должна быть.
>>2368635 > Екатеринбург. Не стольный град, но и не пердяевка. Впрочем, удаленку никто не отменял. Ну окей, тебя хватит на 2 дня, а не на 1. Охуеть вот это да. > Хотя джунов, как я слышал, не берут на удаленку. Я бы не сказал, что вообще не берут, просто берут неохотно очень >>2368643 > Я не живу в мск. Работу нашёл на удалёнке. Рад за тебя, а к чему ты это высрал? > Другой чувак по таким же советам укатил в эмираты, нашёл работу через неделю, при том что опыт у него чуть больше года То есть, ты сравниваешь полумидла с год-полтора опыта работы и вкатуна, который сделал 1 петпреокт? Охуенно > Не проецируй. Я всегда мог рассказать о том чем я занимался Ты без опыта работы с 1 петпроектом за плечами охуительно пиздел про свои гига коммерческие проекты и тебя никто не спаслил? Пиздец в какой же голос. У нас в компанию регулярно такие дебсы приходят, они реально думают, что не палятся. По настроению им отвечают "Мы вам перезвоним" или иногда по рофлу начинают спрашивать наводящими вопросами, пока они не начнут заикаться лол
>>2368673 После wsl на любом языке можно на винде писать, другое дело, что на винде ты будешь только формально, большинство команд линуксовых будешь в терминал писать. Но зато без ебли с драйверами и приседаний с пшпшаудио
>>2368367 блядь даун если тебе пишут КЛИЕНТ сука значит я пишу про КЛИЕНТ
с логином и масс рассылкой, все охуенно работает, без бана
>>2368580 > растёт как количество вкатунов с курсов > так и количество потерявших работу джунов-мидлов факт.
>>2368624 > если я вот хочу работать на винде? то ты индусский хуеглот и даун.
>>2368637 > Да и чего вы его так боитесь? этих животных с малых лет ебал мелкософт, который захватил рашку в 90ых и на пару с айбиэм придумал самую скотопидарскую раскладку, такую чтобы все скотоублюдки страдали, прожимая шифт РАДИ ЗАПЯТОЙ ебанные отбросы.. ну и докучи Ь Ъ уебки ебанные..
в итоге этот биомусор наглухо прикепает к своему болоту, ибо интеллекта свичнуть нет
у нас в инсте тоже самое было только с автостолом, они затарили нам целый клас топ пекарень, но при этом строго настрого заставили жрать их шмаксовое говнище, ну я инст и дропнул поэтому, пусть нахуй сходят дегроды блядские...
>>2368655 > Так на дваче получается неправду пишут? с разморозкой додик.
>>2368701 > ебли с драйверами и приседаний с пшпшаудио убунту-даун плз.
Ребят, мб посоветуете хороший источник, где можно разобраться с многопточкой/асинк/конкурентность/многопроцесорностью/парраллельным программированием
У меня просто голова летит когда я начинаю читать про какие-то семафоры/мьютексы и т.д, кажется сложной темой и я вот перечитаю по кд не могу понять, давайте я попробую вам обьяснить, а вы мне скажите прав я или нет, или что опускаю, ок?
У компа есть процессы, у каждого процессы есть свой мейн поток, потоки легковеснее процессов и легче в создание, это абстракции ОС, у каждой сделано по своему, но +- везде одинаково как я понял. Так вот многопоточность это просто использования определенного кол-во потоков(больше 1), но это не считается параллельным программированием, потому что в питоне из-за GIL не может выполнятся больше 1 потока, это считается конкурентым программированием, верно? Когда задачи выполняются как бы одновременно, но не совсем, поток может уснуть и заснуть в любой момент, здесь нам на помощь приходит синхронизация потоков, с помощью которой мы можем управлять нашими потоками, там их есть куча, но в целом они нужны что бы не произошел race-condition, когда один поток сделал что-то, заснул и второй взял закончил операцию, 1 поток проснулся и сделал то что не нужно было.
Многопроцессорность используется больше в CPU задачах, многопоточность в IO
Асинхронность это возможность делать другую операцию пока идет ожидание выполнения текущей(ответа от чего либо)
Если я выше был прав, то хорошо, если нет, то скажите где не прав, и посоветуйте как разобраться с тем что такое семафоры-мьютексы и т.д, слишком тяжелые термины используются
>>2368816 Есть правильные мысли, но в общем и целом хуйня. Ощущение, что ты эту хуйню пытаешься выучить, а не понять. А так там все очень просто. Процесс это просто некоторые абстракции ОС, чтобы разграничить выполнение программ -- выделить каждой программе отдельные мощности и память, чтобы они не мешали друг другу. У потоков память и мощности внутри процессов общие, но разный контекст. Поэтому они могут выполнять разные действия. Выполнение потоков и процессов может быть переключено с одного на другой с помощью операции прерывания. Не важно как оно реализовано, важно что оно очень дешевое и делается часто. Это конкурентная многозадачность.
>>2368816 Мутекс - блокировка. Например, несколько потоков обращаются к одной и той же области памяти. Из-за специфики работы железа, данные в нём будут прочитаны/записаны не так как ожидается. Блокировка мутексом это способ синхронизации потоков, когда они не должны обращаться к данным одновременно. В питоне это выглядит как with threading.lock или как-то так. Семафоры могут контролировать, например, число потоков. Грубо говоря, счётчик с условием. В питоне есть несколько видов параллелизма. Процессы, потоки и корутины. Корутины это псевдопотоки. Asyncio работает с корутинами, их предпочтительно использовать в основном с aiohttp. Корутины работают в одном потоке. Чтоб понимать их логику, надо знать что такое блокирующие вызовы. Например, запрос блокирует весь поток пока он не пройдёт. Aiohttp превращает блокирующие запросы в неблокирующие, которые помечаются словом await и эта функция является корутиной. Они работают не совсем параллельно, пока корутина ждёт чего-то, поток может делать другую корутину. Они все работают в эвент лупе и он выполняет переключение между корутинами. Но в питоне они реализованы уебищно. Если хотя бы где-то в одной корутине появится одна блокирующая операция, то весь эвент луп встанет и будет её ждать. За этим надо внимательно следить. В го есть горутины, они не блокируют друг друга, но там свои проблемы. Процессы и потоки, думаю, можно прочесть из статей, там всё проще.
>>2368961 Корутины сделали чтобы сократить время простоя цпу и выжать из него максимум. Если у тебя в логике кроме запросов нет больших вычислений, то лучше использовать их. Для расчетов - процессы.
>>2368816 Я конкретных материалов не посоветую, надо или университетские курсы смотреть, или книжки. Для меня это слишком давно было.
Это всё слишком большая тема, не на один день, и порядочно мозги надо перестроить. И слишком много разных технологий. И много связанных проблем, которые надо понимать.
Тебе могут что-то ответить и ты можешь нахвататься по вехрам, но лучше более основательно за всё это засесть.
>>2368816 >но это не считается параллельным программированием, потому что в питоне из-за GIL не может выполнятся больше 1 потока, это считается конкурентым программированием, верно Отъебитесь вы уже от этого GIL Главное отличие в другом. И многопоток придумывали не для того, чтобы параллельно выполнять и перформанс поднимать.
Многопоток придумали и начали активно использовать ещё тогда, когда не было массовых многоядерных процессоров.
Просто подумай над задачей, как ты её будешь решать, когда тебе надо держать одновременно три сетевых соеденения и реагировать на данные из них. Например сделать что-то вроде чата.
Это невозможно сделать либо без практик многопоточного программирования, либо без корутин и всех этих event loop и асинхронности.
Первоочерёдный вопрос даже не оптимальности, а принципиальной возможности, как реализовать.
>>2368806 пчел, судя по твоим высерам по всему /pr/ уровня вкатуна с курсов гикбрейнс, это как раз > ты просто чмо и пидарас, который пиздит о том о чем нихуя не знает
>>2369230 Лол, браток, ну ты гений, я вот ток ща сам нашел, вспомнил, что на Реддите вроде натыкался на него. Я думал тут долбаебы будут мне литкод предлагать и не поймут вопрос.
>>2369266 > в шапке говна навалом но душный додик оп будет каждый раз пихать свое протухшее дерьмо в каждый тред, не в силах осознать насколько всем похуй и что никто не читает эти партянки ебаные
В обучающих мануалах всё кажется очень просто, например: - создаем простые листы my_list = [0, 1, 1] - создаем простые функции с банальным ретёрном. - создаем простые классы cat = Cat() и так далее.
И вроде проблем нет, всё понятно, ты окрыленный что выучил Питон идешь посмотреть какой-то реальный код.
"Простейшая" нейроночка в 9 строк. Экспоненты? dot? array? .T? Перемножение матриц? Кто все эти люди блять???
Ок, ладно, пусть это нейронка, типа сложна - не будем туда суваться.
Далее открываем простейший парсер сервиса картинок Unsplash. Там тоже пизда - куча классов в которых черт ногу сломит, мултитрединг, Queue, next, @classmethodы в каждом гребаном классе.
>>2369399 Там либо старый питон использовался, либо просто копируют тупой код друг у друга. Классы, в принципе, разобраться ничего сложного. Классметод декоратор отвязывает метод от класса. Обычный метод ты вызываешь так - Class().method(), а классметоды можно ещё вызывать и так Class.method(), т.е без привязки к обьекту. Например, чтобы сделать что-то такое Class.create(). У них вместо self аргумента используется cls, т.е метод может принимать обьект класса, если он есть и работать с ним. exp, dot просто математика. Нейронка это математика, без неё никуда. Т - транспонирование матрицы, тоже математический термин. Мультитрединг, почитай про параллелизм в питоне и их виды. Queue - обычная очередь. Принимает элементы и отдает, известный механизм работы с данными, что-то вроде буфера данных. Что до дизайна классов. Вообще, классы на самом деле в питоне мало где нужны. Если их слишком много, то, скорее всего, код писал джавист.
>>2369399 > В обучающих мануалах всё кажется очень просто Так в самом языке нет ничего сложного, да > И вроде проблем нет, всё понятно, ты окрыленный что выучил Питон идешь посмотреть какой-то реальный код. Надеюсь, что ты пошел смотреть реальный код по теме, которую смотрел в мануалах, а не просто рандомную хуйню? > "Простейшая" нейроночка в 9 строк. Пиздец, без комментариев > Ок, ладно, пусть это нейронка, типа сложна - не будем туда суваться. Нейронки это сложно, не нужно всякие "типа" добавлять > Далее открываем простейший парсер сервиса картинок Unsplash Хуй знает что это, но допустим > Там тоже пизда - куча классов в которых черт ногу сломит А что конкретно там сложно было? Мне кажется, что ты просто чужой код еще не научился читать, вот и все. Это отдельный и очень важный навык > мултитрединг А что с ним не так? Ты его в мануалах пропустил что ли? > Queue Блять ну это вообще элементарная хуйня, буквально реализация простой очереди в пятерочки > next А что с этим-то не так? У тебя какие-то хуевые мануалы, раз ты не в курсе про генераторы > @classmethodы в каждом гребаном классе Бля, ну ты язык-то доучи блять. Пиздец, ты какие-то максимально элементарные вещи здесь перечислил, которые чтобы осознать нужно 2-3 вечера и полное понимание основ питона. Вообще, сначала изучи нормально мануалы, изучи базис языка, а потом уже лезь в реальный код. Не надо перепрыгивать ступеньки изучения
>>2369417 > Что до дизайна классов. Вообще, классы на самом деле в питоне мало где нужны. Если их слишком много, то, скорее всего, код писал джавист. Это шутка? В питоне все кроме условий и циклов это объекты. Не пользоваться классами в пистоне это выбрасывать 2/3 удобства языка и костылить всякую хуйню
>>2369267 >вставь ссылку сука на мой сайт и все блядь! >книги > Al Sweigart — Автоматизация рутинных задач с помощью Python > Mark Lutz — Изучаем Python > Mark Lutz — Программирование на Python 1+2 ну чел, ну чел...
>>2369267 > душный додик оп будет каждый раз пихать свое протухшее дерьмо > вставь ссылку сука на мой сайт и все блядь > книги по 2 пистону > видео по 3.4 питону > часть видосов уже удалена Охуенно братан, вот это свежак пошел
>>2363031 (OP) Но ОБЪЕКТИВНО шапка конкретно зачерствела последнюю запятую судя по шаблону правили в треде #90, 50 тредов назад! И завтра ровно два года, там 3 июня 2020 года датировано.
> — А как учить джангу? Нахожу только книги по джанге 1.х > Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит Это тоже лол, с учётом, что сейчас джанга четвёртая уже есть! Там не то, чтобы прямо критичные отличия от второй, и по-моему совсем никакой от третьей, но внешне вызывающая разница.
>>2369542 > Код лучше делать по возможности stateless Не лучше, функциональное программирование настолько менее популярно именно потому, что stateless нахуй не нужно > Я не предлагаю выкинуть классы совсем, а просто не использовать их там где можно и без них Хуйня, достаточно избегать мутаций переменных напрямую без интерфейсов
Upwork забанил россяин. Даже тупо VPS не купишь заграничный для своих проектов. Всякие общемировые 3D, гейдевы тоже не работают с Россией. Остаются только местные компании, но большая часть из них так же работала на запад, а значит рано или поздно и они загнутся, так как мерикосы будут выдавать заказы не им, а в Индию. Местный рынок по сути ограничен Яндексом, ВК, да Мэйлом - то есть легко закрывается сравнительно небольшим числом людей. Мечтать переехать заграницу и работать там - вообще как анекдот сейчас.
Короче, вкатываться в айти - смысла больше нет. И англицкий можно больше не учить.
>>2369643 1. Пока старые пидарандели у власти не изобрели бессмертие ( они не будут жить вечно + народ просыпается). 2. Пока ты рассчитываешь завести трактор. 3. Пока английский в качестве модерн лингва латина не потеснил другой язык 4. Пока не появилась другая область, кроме айти, которая позволяет без связей и без диплома получать деньги позволяющие тебе быть от мидл от аппер мидл классом в странах 1-2 мира после 0,5-2 лет плотного обучения дома
>>2369643 а цифровой гулаг для барина кто пилить будет? айти никакое не всё, сейчас дохрена ваканский появится на импортозамещение заграничного пендосского гейского опенсорс софта.
>>2369584 Чел все по теме расписал, не надо пиздеть про свои знания. Просто если ты потрогал алхимию в пет проекте, то не нужно говорить что пук-хрюк немного ее знаешь. Нужно расстегивать ширинку и вываливать "Изучал алхимию и использовал ее в петпроекте". Но пиздеть это табу, тебя мгновенно раскроют. >>2369657 > без связей и без диплома > после 0,5-2 лет плотного обучения дома Без диплома и связей 2 года это прям минимум, если с нуля вкатываться. Зачем эти фантазии про полгода?
>>2369399 > А там: разрыв манямирка додика считавшего датасоенс - хуйней на вечерок под пивчанский)))
> Кто все эти люди блять??? профнепригодные дрочеры дауны.
я постоянно натыкаюсь либо на старые, либо на пиздорылые туториалы, где блядь one hot encoding ДЕЛАЮТ РУЧКАМИ сука ну конченные пидорасы просто безмозглые животные, при том так делают и индусы и блохеры со спонсорской тачкой с кластером зеленой хуйни. им потом пишешь мол - ребят у вас полный рот говна -- а они такие О ЕБАТЬ ДУД НИХУЯ ЯК МЫ ЖИЛИ БИФОР ЫЫЫ
голову не иби, бери готовое дерьмо, твоя главная задача это газеринг датасета и ETL. помни, что по закону природы - душное пиздорылое дерьмо, без адаптивных способностей - будет уничтожено.
> куча классов репка дауна очевидно, скипай это говно
>>2369461 > Нейронки это сложно, не нужно всякие "типа" добавлять А что конкретно там сложно было? Бля, ну ты язык-то доучи блять. Пиздец Блять ну это вообще элементарная хуйня
>>2369483 >>2369486 душные додики доебались, я книги вообще удалить хочу, об этом и написал, но вы пиздоглазые же. а в видосах самое главное плейлисты, это для зеленых питоняшек, им важно создать связную картину мира и сделать так чтобы их мозг начал работать самостоятельно, а не так как вы каждому дебилу жопу тут подтираете...
>>2369662 > а цифровой гулаг для барина кто пилить будет? в ростехе анончики этим уже давно занимаются, без тебя, у них все хорошо
>>2369671 Потому что нейронки, если не качать готовые модели и делать вид, что ты дохуя млщик, требуют нехилого знания математики. Ну и вообще мл это немного другая сфера, не совсем погромирование в привычном смысле и нужно отдельно изучать мл для этого > пук-среньк вы все не так поняли пук-хрюк древняя поебота мамонта так и была запланирована ну не надо ну не стукай >>2369672 Ты же понимаешь, что даже реализация того, что ты описал, требует десятков лет разработки?
>>2369674 >Ты же понимаешь, что даже реализация того, что ты описал, требует десятков лет разработки? андроиду внезапно больше 10 лет, это всё уже давно разработано и работает))))
>>2369674 > мл это мачин лёрнинг - давай я тебе напомню, такому умтсвенно отсталому
а то что ты мне тут пытаешься прогнать свою даунскую телегу называется - COMPUTER SCIENCE тупое ты говно блядь
вот они как раз и занимаются всей этой низушной дрянью
и разрабатывают модели, большинство из уже готовых низушных блоков тф
и лишь эктримально малый субсет отборных инцелов-ноулайферов из топовых эм айти и харвордов - состоят в кор тимах торча и тф или рнд фейспука - и занимаются там той самой МАТЁШКОЙ все остальные с этим дерьмом не соприкасаются от слова - на 95% совсем.
> десятков лет ты омерзительная ограниченная душнила, триангуляция работает с каменного века и успешно позволяет набутыливать или наводить крылатые ракеты
>>2369679 >>2369678 Давно в гейфоне электронный паспорт гражданина появился, а все паспортные данные стали оцифрованными настолько, что можно их настолько быстро искать? Пиздец, долбаебы вкатуны вообще не понимают как айти работает, просто охуеть
>>2369682 > мачин лёрнинг - давай я тебе напомню, такому умтсвенно отсталому > а то что ты мне тут пытаешься прогнать свою даунскую телегу называется - COMPUTER SCIENCE тупое ты говно блядь Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, and information theory) to practical disciplines (including the design and implementation of hardware and software). Computer science is generally considered an area of academic research and distinct from computer programming. > триангуляция работает с каменного века и успешно позволяет набутыливать или наводить крылатые ракеты Говно, ты вообще отбитый что ли? Какая триангуляция блять, что ты несешь нахуй. Там речь шла о введении электронного паспорта и оцифровывание всех личных данных. Это уже сколько лет с помощью госуслуг пытаются сделать, а все не сделали.
>>2369668 Даже самый тупенький после учебы по 8-10 часов в день может вкатиться во фронт или тестирование через полгода. Или в тоже самое Юнити для говно мобилок.
>>2369683 в гейфонах и некоторых топовых андроидах уже e-sim есть, в бомжоми есть обычные симки, симки привязаны к паспорту, по паспорту вся инфа находится в госуслугах и прочих слитых базах гибдд. пиздец, долбоёбы вкатуны вообще не понимают как айти работает и учат профессионалов жизни.
>>2369740 если бы только итт, он круглосуточно засирает весь /pr/ и немножко /wrk/. и якобы когда-то ещё успевает работать)))) детектится по сообщениям со словами "пиздорылый", "додик", "профнепригодный", и по скринам с разрешением 3440x1440 или с отсутствием комментариев (кроме скопипасченного со стэковерфлоу кода с комментариями его автора)
>>2369756 уже сдеанонили пару тредов назад, оттуда и погоняло "шнобель". то ли у него евреи в роду были, то ли кто-то подправил за длинный язык. и уже ни с кем не работает. оттого и бесится))))
Ребята, реально ли пристроиться в Питон индустрию, хотя бы как-то, при условии что нахожусь в маленьком городе, без возможности переезда?
Может как-то удаленно? Но есть сомнения что возьмут чувака без реального собеседования. Или может только на какие-то разовые задачки, и потом со временем как прокачаешься, то кто и возьмет на подольше?
Или вообще что-то свое пилить, но тут вообще сомнительно - вряд ли будет успех.
у нас в коллективе был плоскоземельщик и вообще все остальные тоже были со своими странностями, но все превосходные высокооплачиваемые специалисты, умные и интересные люди ( не чита местному сброду, который даже погуглить не может )
а ПМ меня вообще считал за настоящего аутиста)) ( хотя мы все прекрасно знаем что это не правда )
и кстати там все знали что я двачер и относились ко мне с пониманием))) это айти маня..
>>2369781 додик-даун думает что на двач можно выкладывать только свежие фотографии?
или додик-даун считает что у меня не может быть свободного графика ?
когда работал на дядю я мог начинать в абсолютно любое время, а иногда меня особо впирало и я ебашил сутки нанстап, потом писал об этом пму и отсыпался)
>>2369796 таких пассивных чмонь очень любят держать в офисе чтобы доминировать над ними, на удаленке нужны нормальные работяги, а не твари дрожащие
>>2369817 пишешь, что шнобеля выперли с работы в москва-сити — шнобель на жопной тяге бежит выкладывать фотографии типа он прямо сейчас едет в лифте "башня Федерация"... а на следующий день сам же пишет, что это была старая фотография. указываешь, что у шнобеля "утро" в 4 часа дня — шнобель рякает "у меня свободный график". при этом "додик-даун" абсолютно кто угодно, но только не сам шнобель.
>>2369829 алсо вангую ряк-пук в стиле > я нигде не писал, что это я прямо сейчас еду! я просто так выложил фотографию из лифта, чтобы все сами себе додумали, что это я прямо сейчас еду!
>>2369643 >Мечтать переехать заграницу и работать там - вообще как анекдот сейчас. Сирьйозна? Мне вчера предложение с линкеда пришло с релокейтом на кипр. 4 дня назад пришло предложение с релокейтом в финку. О чем ты там говоришь, вкатун?
>>2369927 Хочу релокейт, но немного ссусь. На кипр завтра собеседоваться будем. 2 часа по скайпу. Час на теорию, час на код, в целом быстрее может выйти. Стек не такой трудный + го + луа по возможности В финку не хочется.
>>2369946 Был я и на кипре и в финке. На кипре понравилось, что можешь хоть на ангельском говорить, хоть на греческом, хоть на русском, в некоторых районах. Да и жилые кварталы там вполне нормальные. В финке тоже красиво. По крайней мере в Хельсинки. Но не знаю, там как-то одиноко ощущаешь себя. Хотя что-то там есть
>>2369951 Собес на английском. Диплома только по физике, было несколько семестров по бд, плюсам, архитектуре пк и подобному, но сказали, что это их устраивает за счет опыта. Алгоритмы не сказать что прям любой напишу, некоторые помню еще.
Правда ли, что в айти практические не бывает "независимого заработка"? Обычно какой-то проект, сайт, приложение - подкреплены реальным бизнесом, да и вообще создаются только благодаря наличию реального бизнеса.
Допустим, есть фитнес зал/ресторан/завод, ему нужно делать сайт, приложуху, базу данных и т.д. То есть сам по себе сфирический айти проект для зарабатывания денег - практически невозможен?
Это и понятно, деньги-то откуда-то должны браться. Может быть конечно пользователь и будет платить за какой-то софт или какую-то услугу в сети (не осязаемую), но это такая редкость, особенно сейчас. Обычно будут использовать либо бесплатный аналог, либо если ну очень уж круто всё, то будет спирачено, взломано и расходиться так же бесплатно.
>>2369958 > что это их устраивает за счет опыта кек чтд епт
> Алгоритмы не сказать что прям любой напишу ну пузырек на листочке бумаги карандашиком - это классика, такое знать надо! ( нет )
давай удачи няша, отпишись потом как все прошло
>>2369978 > сам по себе сфирический айти проект для зарабатывания денег есть в мурике внутри пузырей из-за их маняэкономики и принтера, во всем остальном реальном мире ситуация более прагматичная
Сначала ебался с подключением селери, а потом подумал, что моим таскам нахуй не нужон этот сельдерей В итоге накостылял свой микро планировщик. Даже удивился, что оно работает...
>>2370048 > Сначала ебался с подключением селери, а потом подумал, что моим таскам нахуй не нужон этот сельдерей Конечно не нужен, селери это не аналог крона. Использовать его таким образом тоже самое, что использовать базу данных вместо енама в скрипте на 100 строк > В итоге накостылял свой микро планировщик. Даже удивился, что оно работает... Смотря что подразумевать под "работает" > Мимо вкатыш Ну в любом случае норм практика
>>2370105 >>2370048 Кстати как лучше заимпиментатить таску, которая будет гарантировано каждую секунду отрабатывать? Сейчас просто тред сделал, который чекает есть ли для нужной секунду значение в бд и если нет, то пытается записать и ждёт 250 милисекунд после каждой проверки. И запустил в две реплики. Так даже если один сервис уадёт, то данные в всё равно будут каждую секунду записываться. Но бесконечный цикл в треде как-то неочень выглядит. Есть способ сделать лучше? Стоит селари юзать?
>>2369603 Верун дохуя? >>2369668 >Нужно расстегивать ширинку и вываливать "Изучал алхимию и использовал ее в петпроекте". Но пиздеть это табу, тебя мгновенно раскроют. Что и требовалось доказать.
>>2370201 Как по твоему все приложения работают, если не через бесконечный цикл? Какая-то магия деплоймента что-ли? Всё через while true реализовано, это нормально. Сделай отдельным процессом и ставь сон на секунду, try except чтоб не падал на ошибках. Всё. Можешь через декоратор в asyncio сделать или как там, хотя так более запутанней выходит.
>>2370204 > Что и требовалось доказать. Что доказать долбаеб? Нужно смело говорить о своих знаниях, а пиздеть не нужно >>2370201 Сделай очередь(Queue, прям в стандартной либе) и раз в секунду добавляй туда таску в бесконечном цикле, а воркеры пусть из очереди берут таски в тот момент, когда они там появятся. Так ты можешь любое количество воркеров запустить, если что. А вообще когда я слышу "делать бэкграунд таску раз в секунду", то это говорит о том, что ты не с того конца воюешь. Мб проще создавать таску в тот момент, когда что-то в бд записывается, а не раз в секунду эту бд чекать?
>>2370048 А да, кстати, я только сейчас прочитал твой изначальный код. Зачем ты передаешь callable с аргументами вместо корутины сразу? Ты можешь сделать вот так async foo(arg_one, arg_two): ----print(arg_one, arg_two)
>>2363031 (OP) Надо написать генератор чисел Фибоначи. Да не простой а с мемоизацией. То есть мы принимаем в функцию число num которое показывает порядковый номер числа фибоначи, которое мы хотим получить. Очевидно, если такое значение уже было посчитано то мы не производим никаких вычислений и просто отдаем его. Но что если нет? Начинать счет с самого начала (с 0 и 1)? Ведь может предыдущие 2 числа уже посчитаны и стало быть можно за 1 действие найти нужное нам? Как замутить такую мемоизацию?
>>2370702 Вот примитивный варик. Если посчитаны 2 предыдущих, то возвращаем результат, иначе начинаем счет с самого начала, но может нам известны не предыдущие 2 и пред-предыдущее и пред-пред-предыдущее тогда получится все посчитать за 2 действия. Как найти эту минимальную пару?
>>2370766 Складываются предыдущие значения, если у тебя уже есть данные о результате двух чисел, то при вычислении следующего они автоматически берутся из кеша
>>2370773 >то при вычислении следующего они автоматически берутся из кеша А если известны не строго 2 предыдущих а вот так (? - число которое нужно посчитать): 2584 4181 Х ? Шо делать будешь?
И че значит "автоматически берутся"? Кто их блять берет? Декоратор cache? Почему он их берет? Он по-твоему знает чт омы считаем фибоначи и что надо брать строго 2 предыдущих?
>>2370782 Что значит > объект или словарь ? Ты же в курсе, что словарь тоже объект? И для разных типов данныхдля разных интерфейсов, точнен нужно разные функции делать
Мимокрок Какая у вас тут озлобленно-токсичная желчная атмосфера итт... Брррр. Прямо почитал и не по себе стало. А в обычной рабочей атмосфере программисты так же токсично-озлобленно себя ведут? Или это тут школо-гения постят эти злобно-кислотные посты только а остальные адекватнее пишут?
>>2370835 Может я по приколу решил поковыряться любительски на досуге и начал с пайтона. И что, надо сразу человека обоссать если он с вопросом пришел? итт просто отпугивающие флюиды злобы.
>>2370847 Учи инглиш и сиди где-нибудь в Слаке или на Стаковерфлоу плотно или в Дискорде. Только там обратное будет - каждого идиота с самым тупым вопросом будут облизывать со всех сторон и успокаивать, хвалить на пустом месте.
Но за слово "пидор" или "негр" тебя отправят в бан. Или если местоимения перепутаешь. Или что-то скажешь хорошее про Трампа.
>>2370832 > А в обычной рабочей атмосфере программисты так же токсично-озлобленно себя ведут? Нет. В обычной жизни ты приходишь в офис, заходишь в комнату, по кругу здороваешься со всеми, садишься на своё место и начинаешь что-то делать за компом. Во время перерыва на обед что-нибудь стороннее может с кем-нибудь обсудишь. Вечером прощаешься со всеми и уходишь домой. На этом твоё общение заканчивается.
>>2370832 Токсичные и озлобленные тут только пожизненные вкатуны и фрилансеры без нормальной работы. Люди умеющие работать в коллективе вполне адекватные, никто ни с кем не соревнуется по скилу, что-то непонятно - даём наводки на статьи, доки, либо сами объясняем если недолго. Мы, например, сидим в войсе почти весь день, так проще коммуницировать да и нескучно, плюс атмосфера рабочая в удаленке.
>>2370832 > Какая у вас тут озлобленно-токсичная желчная атмосфера > А в обычной рабочей атмосфере программисты так же токсично-озлобленно себя ведут Да почти везде в коллективе специалистов если ты общаешься с людьми адекватно, ценишь чужое время и уважаешь чужие интересы, то тебя будут считать охуенным челом и звать пиво в баре попить. В питонотредах примерно тоже самое, за исключением шнобеля, но он просто дико комплексует от того, что он вечный вкатун и пытается всем доказать, что у него твердо и четко есть работа. Просто игнорь его хуйню и норм будет
>>2370903 какой же ты зашоренный душный додик.. впрочем ничего удивительного
у нас ворк хард обычно был до обеда и то если кто то не пришел с горящей сракой по какой то причине (тогда он оттягивал все внимание на какое то время)) все подтягиваются в разное время, поэтому движ
ближе к обеду начинается обсуждение выбора ресторана, а кто то забурился и не может выйти и спрашивает кто хочет с ним в закуп доставки
после обеда еще час релакс тайм, и добрый траллинг плоскоземельщика. тот парень что ни с кем никогда не здоровается за руку - довольно специфично шутит. если повезет пересечься то получится потискать миниатюрную тяноццку с фронта :3
> Вечером ты уебанный в щщи не можешь выседеть ебучие 8 часов и аскаешь кто с тобой хочет пойти послакать на турнички или до кондитерской за макаронцами
после работы если какой то праздник и завтра выходной - валишь в досуговое заведение с частью коллектива, которая не евляется подкаблучниками
Как использовать пайпы в python?
Аноним03/06/22 Птн 22:13:43№2371048444
В баше я мог выполнить что-то вроде: xtrabackup --backup --stream=xbstream --databases=testdb | xz -9 -e -T0 | gpg -e -r "Dude" > backup.xbstream.xz.gpg
В python есть popen и пайпы. Но т.к. код выполняется построчно, как сделать правильно? И где будет храниться инфа? Не загружать же мне в оперативку 120 гигабайт бекапа.
Анон, подскажи: делаю веб на джанге, при открытии формы помимо полей мне нужна ещё и карта, чтобы можно было на ней место указать. Что лучше использовать для этого? GeoDjango? Или какой-нибудь django-location-field подойдёт при использовании SQLite?
>>2371164 не хочу тебя расстраивать, но красоты не существует, зато есть самолюбие
а потому если ты чмо унылое, пиздорылое ( помнишь да? ) и сам себя не любишь, то тебя и окружающие любить не будут ( ну может разик под мефом ) если с дс, у меня есть товарищ он как раз скучает с весом, но только если ты конечно имеешь хотя бы минимальный человеческий обликна всякий случай отмечу - я если что зожник
так что подлечи бошку, скинь жир и у тебя все получится ( но это не точно )
Анонче, начинаю пользоваться вимом и хочу убрать эти ебаные предупреждалки, перделки и прочую фигню, где это в вим конфиге находится или как принудительно отчистить их или закрыть? Потому что не могу просто напросто файл закрыть из-за этих ебаных линтеров засунутых в каждый конфиг , не понятно зачем
>>2371369 это виндовский линукс терминал WSL 2 вбей на ютубе, это такая штука, которая позволит тебе работать в привычном режиме с этой хуйни под названием Винда, но при этом не надо постоянно перезагружаться чтобы войти в твою ламповую бубунту или арч
Или ты про неовим? Если про него, это такой консольный редактор, типа nano , он более простой и менее функциональный
Во вторник первый раб день на новой работе. Мне очень страшно, потому что столкнусь с совершенно новыми для себя задачами и технологиями. Микросервисы на кафке, кубы, сложный парсинг, етл. Даже на собесе всем было понятно, что я очень плаваю во всем этом, но все равно дали оффер с неплохими условиямивидимо в рашке совсем никого не осталось с хоть каким-то опытом До этого я год гонял жисончики на дрф...
Можете плз подсказать. Я могу как-нибудь сделать в сериализаторе ДРФ так чтобы одно поле по-разному вело себя на чтение и на запись как бы? Ну вот у меня например есть там какая-нибудь статья, у которой есть автор. Когда я делаю гет запрос, то я бы хотел чтоб был взят юзернейм автора из релейтед таблицы, а когда делаю пост запрос, то хочу посылать айди автора. Прост мне все время кажется, что я дохера лишних сериализаторов из-за этого делаю, но не могу понять как не делать.
>>2371846 Дефицит синьоров всяких и мидлов может быть. Сейчас зашкварно будет с русскими работать, а дохера кто наверняка для пендосов всяких софт делал, поэтому наоборот все компании будут в жопе.
>>2371751 Там есть два метода to_representation validation Валиэйшн вызывается первым по сути при получении, а ту репрезентейшн последний вызывается при отдаче. Посмотри в их реализацию и когда они дергаются. Найди места где тебе нужно переделать значения и перегрузи их
>>2372053 Это секта свидетелей однострочников, они на том же уровне, что секта свидетелей асинка. Пихают свою хуйню в любое место, где это нужно и не нужно
>>2372081 Генераторы в некоторых случаях дают большую производительность. Но если производительность не в приоритете, то читаемость выходит на первый план.
>>2363031 (OP) Сап, питач. Какие обучающие видео на русском языке помогут анону разобраться в Пайтоне до хорошего уровня? Чтобы потом можно было пойти помощником на стажировку, да и в целом для построения карьеры. Какие темы для изучения можешь посоветовать? Уже знаю некоторую основу в виде работы со строками, файлами, циклами, словарями.
Антоши, помогите разобраться с переменными в f-строках.
Допустим, есть повторяющиеся строки, которые хочу обернуть в функцию:
conn.execute("DROP TABLE IF EXISTS tablename") df.to_sql("tablename", conn)
Если сделать вот так или вот так, то выдаются ошибки:
conn.execute("DROP TABLE IF EXISTS f'{tablename}'") conn.execute(f'"DROP TABLE IF EXISTS {tablename}"')
А если вот так, то ошибки не возникает, но переменная не обрабатывается и таблица не дропается (команда пытается дропнуть таблицу с названием tablename, а не таблицу с названием из переменной {tablename}:
f'conn.execute("DROP TABLE IF EXISTS {tablename}")'
Сап, есть вот такой код на Python, показывает нотификацию при появлении на экране пикселя определенного цвета.
Подскажите, как сделать что бы окно сворачивалось в трей на Windows 11? Пробовал pystray, работает на windows 10, но на 11 в трей не сворачивается. Может, есть какие-нибудь решения?
import time from cv2 import imread import pyautogui import os import sys from win10toast import ToastNotifier
def resource_path(relative_path): """ Get absolute path to resource, works for dev and for PyInstaller """ try: # PyInstaller creates a temp folder and stores path in _MEIPASS base_path = sys._MEIPASS except Exception: base_path = os.path.abspath(".") return os.path.join(base_path, relative_path)
def hex_to_rgb(value): value = value.lstrip('#') lv = len(value) return tuple(int(value[i:i + lv // 3], 16) for i in range(0, lv, lv // 3)) color = "#2ECD6F" rgb_color = hex_to_rgb(color) toast = ToastNotifier()
while True: time.sleep(3) screenshot = pyautogui.screenshot('scr.png') frame = imread("scr.png") found = False for y in range(round(frame.shape[0] 0.2)): if found: break for x in range(round(frame.shape[1] 0.2)): b, g, r = frame[round(y + (frame.shape[0] 0.8)), round(x + (frame.shape[1] 0.8))] if r == rgb_color[0] and g == rgb_color[1] and b == rgb_color[2]: toast.show_toast( "Notificator 3000", "Screenshot Taken", duration=3, icon_path=resource_path("icon.ico"), threaded=True, )
Анончики, учусь на безопасника. Программирование тут есть - js, html, c++, python, но его еще не начали, а все остальное достаточно сумбурно преподают, особенно с++.
В общем, я в программировании особо не разбираюсь, только частично в тех областях и случаях, которые требует учеба. Понятно, что нужно получать какие-то более углубленные познания, вот я и решил начать с питона.
Вопросы, собственно, касательно обучения возникнут по мере обучения. А пока вопрос один. Как потом этот навык монетизировать? Типо через сколько месяцев после вката я смогу ощутить, что я в какой-то области питона что-то могу, чтобы получать копейки за фриланс в интернетах? В каких направлениях языка в принципе развиваться?
>>2372668 Хочу дополнить, что мне была интересна тема с созданием ботов в телеге и прочих мессенджерах, не знаю правда насколько это удачная идея.
А вообще ожидаю, что меня захуесосят, как очередного вкатуна, но только мне программирование нужно по-любому и с питоном я столкнусь по-любому. Просто хотелось бы, чтобы навыки программирования развивались больше и мои познания не граничили только на вузовской части, но и смогли помочь насобирать на доширак
>>2372682 >Монетизация зависит не от навыков, а от идей. Не понял. Вот у меня есть идея, сделать гта 6 нахой. Как ты без навыков её будешь делать, Омар Хаям мамкин?
>>2372814 Если ты сможешь проработать идею - то ты половину успеха имеешь. Но ты же нихуя, кроме ХАЧУ ГТА 6 не можешь расписать. Прототипы моделей хотя бы на бумаге. Описать сюжет, описать механики, а не хотелки. Фреймворки, почему они, предвидеть пожелания/этапы расширения
>>2363031 (OP) Питоновский сервак на WSGI на каждый новый запрос создает новый тред? Если так, то почему идут холивары на тему асинхронки, якобы она не блокируется на IO-операциях? Ведь если у нас по треду на каждый запрос к серваку, то мы в принципе не можем нигде заблокироваться, контекст постоянно переключается между тредами
>>2372873 >Питоновский сервак на WSGI на каждый новый запрос создает новый тред? Нет, запросы последовательно выполняются, в один поток, пока один не завершится, следующий не начнёт обрабатывать.
>>2372873 > Питоновский сервак на WSGI на каждый новый запрос создает новый тред Да, именно так > Ведь если у нас по треду на каждый запрос к серваку, то мы в принципе не можем нигде заблокироваться, контекст постоянно переключается между тредами Так смысл асинхронщины не в этом лол. Смысл в отсутствии создания локов на каждый пук и в целом более выгодного переключения контекста при определенных обстоятельствах. Представляй это так -- треды постоянно переключаются друг между другом. Это очень дешево, но если 95% времени там просто ожидание ответа, то даже такие дешевые переключения становятся дорогими, так как 95% из них уходят в молоко. А у асинхронки переключения только по делу, но дорогие. Так что если 95% времени там ожидание ответа, то асинхронка будет переключаться дорого, но метко. Вот и все
>>2373155 У асинка переключения между корутинами почти бесплатные. В этом как бы и вся его суть работать в пределах одного потока и не давать простаивать цпу, с возможностью делать на порядок, а то и два порядка больше параллелизма чем треды.
>>2373400 > У асинка переключения между корутинами почти бесплатные Ага, переключение контекста буквально ничего не стоит ведь > В этом как бы и вся его суть работать в пределах одного потока Эта "бесплатность" только в игрушечных примерах существует, в рамках того же фастапи или аиохттп переключения нихуя не бесплатные между клиентами > не давать простаивать цпу Если у тебя есть цпу нагрузка, то самое тупое, что можно сделать это взять асинк > с возможностью делать на порядок, а то и два порядка больше параллелизма чем треды. Нет, это просто не так. Если у тебя все задачи это сделать запрос к бд и выдать ответ, то безусловно, асинк справится намного лучше тредов, так как цпу нагрузки практически нету и куча времени в простое находится сервер. Если ты начнешь что-то с жсонами делать, например, агрегировать какие-то данные, или запросы очень короткие к бд(20-30мс) то асинк будет отвратительным решением
Блять да как же горит с дегенартов итт, нахуя вы пукаете что-то, если вообще не понимаете о чем идет речь? Ну нахуя? Зачем? Чтобы что? >>2373396 Воркеры это процессы, долбаеб. Делается так для того, чтобы у тебя все ядра забивались. Каждый из воркеров плодит треды и может даже в случае деревянной штанги держать по 200-300рпс >>2373398 Во-первых, 1к рпс это уже пиздец хайлоад, во-вторых, спокойно обрабатывается средним сервачком 32гига оперативы и 8 ядер с 8 воркерами в гуникорне. > Все запросы висят в очереди и обрабатываются в порядке свободности воркеров Что ты несешь нахуй? Один воркер это просто 1 инстанс приложения, 4 воркера это 4 инстанса приложения. Это не значит, что только 4 клиента пользоваться могут приложением одновременно
Есть ли какой-нибудь аналог функции cycle из itertools, который бы не обходил последовательность каждый раз с начала, а доходил до конца, а потом начинал обход в обратную сторону?
Подскажите, есть одностраничник на джанге. Суть задачи - подгрузить некоторые данные и вывести их наподобие постов в харкаче Насколько хуевая идея возвращать на запрос готовые html элементы вместо того, чтобы отправлять json данные и рисовать уже на стороне клиента?
Привет, Аноны! Подскажите лит-ру или сайты, где можно почитать о связке Питон+wx +postgres, хочу почитать об именно _проектировании_ десктоп-гуи приложений на питончике. Будет standalone-приложуха, типа центра ЦТО-шника. 1) Как именно БД, wx связать вместе? 2) Как множество формочек (Frame) связать вместе? 3) И вообще примеры гуи-десктоп +БД имеются где-то пысы. Везде видел только отдельные разработки на tkinter, это не то.