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

Питон тред №165 /python/

 Аноним 24/09/23 Вск 17:57:18 #1 №2853616 
image.png
Тред, посвящённый языку программирования Питон, #165

Предыдущий: >>2800678 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://goonlinetools.com/snapshot/share/ - для листингов, без регистрации, но с капчей

#######################################
Вопросы-ответы:
— С чего начать изучать питон?
У питона намного лучше официальная документация, чем у большинства других языков. Есть там и учебное пособие для начинающих: https://docs.python.org/3/tutorial/introduction.html , неофициальный перевод на русский язык: https://digitology.tech/docs/python_3/tutorial/introduction.html (для питона версии 3.8, но разницы почти нет)

— Какие книги считаются лучшими?
На слуху чаще всего Лутц, но там очень много воды. Ещё на слуху Марк Саммерфильд, Эл Свейгарт "Автоматизация рутинных задач с помощью python". Эти книги рекомендуют чаще всего, но книги довольно старые, а питон развивается.

— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать даже для версий 1.x, т.к. принципы остаются теми же. Но лучше хотя бы с версии 2.0, слишком много мелких изменений в базе.

— Какие веб-фреймворки стоит учить в начале двадцатых?
Что бы не говорили, Джанго живее всех живых и умирать не собирается (и Django REST Framework), очень перспективный асинхронный FastAPI, асинхронный AioHTTP. Flask ещё где-то используется, но уже legacy. Прочие фреймворки или у нас экзотика, или это вымирающее легаси как Торнадо.

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но частично переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Ролик на американском языке про многопоточность и асинхронность, построение своего event loop с нуля, помогает понять, как устроена асинхронность внутри: https://www.youtube.com/watch?v=MCs5OvhV9S4

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется

— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.

— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.

старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
текущий исходник: https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
Аноним 24/09/23 Вск 19:00:00 #2 №2853722 
image.png
Вам не кажется что ООП в питоне какое-то детское что ли? Вот в джавашарпах и дарте например куча специальных ключевых слов-модификаторов для объявления классов, всё паттернами обмазано, всё через интерфейсы где надо и где не надо. А я вот при погрузке жисонов никакими фичами ООП кроме наследования и не пользуюсь по сути. Хотелось бы послушать что аноны с опытом в джавашарпах думают про питонячее ООП? Что такого есть в настоящих ООП-языках чего нет или есть но плохо сделано в питухончике?
Аноним 24/09/23 Вск 20:16:50 #3 №2853866 
>>2853722
>Вам не кажется что ООП в питоне какое-то детское что ли?
Оно просто другое потому, что платформа другая с другими возможностями

>всё паттернами обмазано, всё через интерфейсы где надо и где не надо.
Это их дикие костыли из-за ограничений платформ. Иначе очень сложно реализовать в компилируемых языках. Просто подумай, как это всё выглядит на машинном уровне и станет понятно

>А я вот при погрузке жисонов никакими фичами ООП кроме наследования и не пользуюсь по сути.
классическое ООП = инкапсуляция, наследование, полиморфизм

В целом пользуюсь всеми тремя особенностями. Полиморфизм, это когда у тебя функция принимает базовый класс, а дёргает методы этого класса, а в функцию ты передаёшь унаследованные классы, в которых эти методы реализованы по-своему, сильно по-разному. Не всегда это нужно, но вот в проекте на котором я сейчас работаю, это очень активно используется.
Аноним 24/09/23 Вск 21:23:08 #4 №2853960 
Анон, размявший старые кости >>2837981 →, выйди на связь, пожалуйста.
Аноним 24/09/23 Вск 22:06:07 #5 №2854006 
Кто-то может поделиться инфой о том, где найти опенсорс проекты для участия с джуновским уровнем питона? Хотелось бы принимать участие в какой-то движухе и смотреть за тем, как дела делают умные люди, по возможности внося свой вклад
Аноним 24/09/23 Вск 22:31:30 #6 №2854037 
как разрабатывать бекенд приложения на питончике?
modern way способом, то есть без лишней еботни и чтобы все работы и успешно развертывалось на других платформах.

Сама суть приложения очень простая упрощенный склад (табличка в sqlite куда можно добавить продукцию и ее количество, обновлять количество, планировать закупку)

Хочется удобства - один раз сформировать api и чтобы фреймворк сам все подтянул из него.

FastAPI выглядит очень вкусно и он у меня сразу сходу завелся, скорее всего возьму его, что еще порекмендуете? какой самый бест гайд по фасту (кроме документации) нуи по всей обвязке, как быстро разворачивать базу, не вводить постоянно CREATE TABLE и все такое..
Аноним 24/09/23 Вск 22:48:42 #7 №2854059 
питон или голанг для бэка?
Аноним 24/09/23 Вск 23:00:21 #8 №2854074 
>>2854059
Нужна скорость - говно, нужно быстро нашлёпать сервисов - петухон.
Аноним 24/09/23 Вск 23:14:00 #9 №2854108 
>>2854059
Да тут что нравится, наверное. Мне лично говноланг больше нравится из-за компилируемости и лучшей многопоточки.

Но сам сейчас работаю на легаси копролите на питоне. Всякого пиздеца достаточно у нас. Из-за того, что питон интерпретируемый, а не конпелируемый, бывает что стреляет что-то на проде, что влияет на пользователей. И это пиздец. Кто-то не тот параметр передал в функцию, забыл протестировать этот сценарий, и все, пизда. Либо сейчас, либо через 3 года. Старые баги тоже стреляют часто. Причем баги такие, которые можно было бы компилятором отловить.
Аноним 25/09/23 Пнд 00:52:15 #10 №2854217 
image.png
Есть ли библиотека с такой же пиздатой нейронкой, что у гугла в гугл ленс? Прям чтоб из коробки могла распозновать искаженные символы без тренировки на заранее подготовленном датасете? Пробовал easyocr - хуйня.
Аноним 25/09/23 Пнд 10:05:35 #11 №2854441 
Сап антуаны!

Три года не программировал, сел делать себе таск-менеджер на неделю, по привычке поставил flask и чот дальше затупил.

Я хочу, чтоб при обращении на /week происходил рендеринг шаблона /templates/week.html с данными data.

Для этого я, во-первых, делаю:

@app.route("/week")
def week(data=data):
return render_template("week.html")


Во-вторых, я делаю jinja2 шаблон week.html с переменной data в папке templates.

Сложности в следующем:
1. Откуда вообще взять простой и масштабируемый html для расписания на неделю? Достаточно совсем-совсем простого, типа как в дневнике школьном. Не самому же его писать

2. Хочу, чтоб помимо переменной data в шаблон подтягивались данные из допустим захардкоженной переменной stable_data, как это всё организовать?

3. Как тестировать потом это вот всё?
Аноним 25/09/23 Пнд 10:25:24 #12 №2854465 
>>2854441
Во-первых, в твоём текущем коде твой шаблон сейчас не получает никакие данные, если только они у тебя не статичные и не вшиты в сам шаблон.
Во-вторых, чтобы их туда передавать, тебе в самом шаблоне надо эти данные вставлять через экранирование и некоторые правила:
https://jinja.palletsprojects.com/en/3.1.x/templates/
https://pythonbasics.org/flask-template-data/
В-третьих, захардкоженные переменные ты можешь объявить внутри приложения глобальной переменной/тащить из файла/бд/сети/откуда угодно.
В-четвертых, всё что в твоём приложении можно протестировать в текущем варианте, это твой единственный эндпоинт, который отдаёт шаблон. Мы можешь создать тестовый клиент с этим эндпоинтом и проверять, что он возвращает нужный шаблон:
https://flask.palletsprojects.com/en/2.3.x/testing/
Аноним 25/09/23 Пнд 11:18:50 #13 №2854551 
>>2854465
спасибо. А шаблон на неделю где брать? flex template for week schedule пробовал гуглить, чот там много всего лишнего, не разобрался
Аноним 25/09/23 Пнд 11:40:02 #14 №2854563 
>>2854551
Да где угодно, верстанием и не занимался и ui-библы не знаю.
https://codepen.io/javiercf/pen/XWXWGZ
Аноним 25/09/23 Пнд 16:11:26 #15 №2854846 
>>2853960
Чел там просто в строке 57 ещё одна ошибка
>for w in words3:
надо заменить на
>for w in word_lst:

Очевидно же.
Аноним 25/09/23 Пнд 17:55:03 #16 №2854939 
>>2854006
Там где сидят умные люди джуны не нужны кроме как ридми править
Аноним 25/09/23 Пнд 17:56:47 #17 №2854945 
>>2854108
>Причем баги такие, которые можно было бы компилятором отловить.
Типизиция + mypy ловят 99% таких багов
Аноним 25/09/23 Пнд 18:28:41 #18 №2854987 
>>2854006
Посмотри какие из тулзов которыми ты пользуешься написаны на питоне и подумай какой функционал ты хотел бы добавить к ним мб
Аноним 26/09/23 Втр 02:09:54 #19 №2855438 
>>2854108
>Мне лично говноланг больше нравится из-за компилируемости и лучшей многопоточки.
Многопоточка в го реально крутая, лучше, чем где-либо ещё. Всё остальное на любителя.

Хотя возможность скомпилировать, да ещё в один файл без зависимостей, это тоже круто. И распространять легко, и код не раздавать.
Аноним 26/09/23 Втр 02:37:28 #20 №2855446 
Какой проект можно начать делать для портфолио? Что выбрать фласк или джанго?
Аноним 26/09/23 Втр 05:18:43 #21 №2855464 
image.png
kek, чел преподаватель выглядит так, как будто у него отрицательный ICQ
Аноним 26/09/23 Втр 07:42:52 #22 №2855485 
>>2855464
Охуенный преподаватель, но лучше книжки читать. По видосикам только дауны учатся.
Аноним 26/09/23 Втр 08:18:14 #23 №2855491 
16831790986650.jpg
Питонята выручайте. Начал собесить народ. Иногда собеседую дата инженеров у которых в стеке питон.


Какую задачу вы считаете идеальной? Небольшую, на 5-10 минут. Чтобы проверить прям на собесе кандидата на основы питона. Какую задачу лично бы вы дали чтобы проверить, что кандидат хотя бы понимает базовый синтаксис и может быстро что-нибудь накодить?
Аноним 26/09/23 Втр 09:41:57 #24 №2855541 
>>2855491
А репу его посмотреть не судьба? .
Аноним 26/09/23 Втр 09:48:55 #25 №2855547 
>>2855541
Какую нахуй репу? У сеньеров/мидлов с опытом нет обоссаных пет-прожектов. На работе хватает кода. В приличном обществу сейчас никто не спрашивает такого.

Тем более в свою репу никто тебе не мешает натаскать чужих проектов, ага.
Аноним 26/09/23 Втр 09:51:43 #26 №2855550 
>>2855491
>питон.
>Какую задачу вы считаете идеальной? Небольшую, на 5-10 минут.
Глубокий минет.
Аноним 26/09/23 Втр 09:52:49 #27 №2855551 
>>2855547
А, значит в ПРИЛИЧНО ОБЩЕСТВЕ хрюша тебя просят за 10 минут написать пузырьковую сортировку и таким образом определяет твой уровень. Ясно.
Аноним 26/09/23 Втр 09:55:34 #28 №2855556 
>>2855551
Может сортировку, может посложнее. И вопросами на теорию помучать, опыт посмотреть. Задача это только часть собеса. Никогда не видел чтобы требовали от тебя РЕПУ? Какую блять репу я обязан иметь? Что сука за бред тупорылого джуна.
Аноним 26/09/23 Втр 09:59:03 #29 №2855557 
>>2855556
Ты чего порвался то? На собесе по лбу хуем настучали?
Аноним 26/09/23 Втр 10:01:54 #30 №2855559 
>>2855557
Джун, спок
Аноним 26/09/23 Втр 10:04:30 #31 №2855561 
>>2855551
Хрюша на собесе? Ты был хоть раз на собесе?
Аноним 26/09/23 Втр 10:05:12 #32 №2855562 
>>2855556
>опыт посмотреть
Какой опыт ты смотреть собрался, если ты сам ни хуя не знаешь, иначе бы в треде не спрашивал. Лол.
Аноним 27/09/23 Срд 06:14:44 #33 №2856935 
>>2855547
Садитесь друг другу на коленки и начинаете решать leetcode.
Аноним 27/09/23 Срд 08:04:16 #34 №2856952 
16849425771200.gif
>>2856935
Да уже натаскал задач с литкода. Те которые 150 top interview. Выбрал дэтри и хуй вам скажу какие. А то натаскаетесь и придёте на собес.

Всем спасибо, кроме дауна с РИПАЗИТАРИЕМ. Ебучий джун-вкатун даёт свои обоссаные советы. Ещё раз напомню: никому твой сраный репозиторий с пижжеными проектами не всрался, это сродни школьные грамоты принести на поступление в универ.
Аноним 27/09/23 Срд 08:48:51 #35 №2856985 
>>2856952
>Всем спасибо, кроме дауна с РИПАЗИТАРИЕМ.
Рад, что помог тебе: >>2855550
Аноним 27/09/23 Срд 09:18:21 #36 №2857014 
>>2856952
Если у тебя нет хоть каких-нибудь пет проектов на гитхабе, то ты говно, а не программист. Такого нанимать только в обоссаный яндекс.
Аноним 27/09/23 Срд 09:20:22 #37 №2857017 
f2e516482a220d6a81f075b277b419ad.jpg
>>2857014
>Смотрите, мужики, сколько пет-прожектов спиздил, ну этого только в гугл
Аноним 27/09/23 Срд 19:06:57 #38 №2857891 
>>2856952
>Всем спасибо
Проигрунькал. Тебе же только этот джун-вкатун и отвечал итт хоть как-то.

Представляю ебало синьора-помидора, который послы блестящего выполнения задачи встретится с напыщенной хуйней которая его валит задачками с литкода. Вся суть собесов.
Аноним 27/09/23 Срд 19:23:01 #39 №2857907 
>>2857891
Ещё раз для тебя, недоразвитого. HR технические собесы - не проводят. Ты нахуй о чем вообще? Хоть понимаешь как строится собес?
Аноним 27/09/23 Срд 19:29:27 #40 №2857919 
>>2857907
Уймись уже клоун, иди литкод скачивай.
Аноним 27/09/23 Срд 22:57:15 #41 №2858144 
>>2857891
Ну вот я собесился 1.5 года назад, синьор-помидор(ше) было похуй на мою репу, меня больше по солиду, аркектуре и паттернам ебали, на алгосы было 2 задачи, 1 одна из которых (как потом узнал) была с литкода, ну решил её минут за 15-20, проблемесы?
Аноним 28/09/23 Чтв 00:01:43 #42 №2858203 
Имеет ли смысл вкатуну (джуну) проходить задачи в литкоде?
Если да то примерно сколько изи и сколько мид задач желательно пройти?
Аноним 28/09/23 Чтв 08:48:01 #43 №2858318 
>>2858203
Все желательно
Аноним 28/09/23 Чтв 12:08:25 #44 №2858494 
Не могу понять, почему постоянно меняется значение ключа в словаре:

i, norm = 1, 0
while i <= len(d)/3:
if float(dictObj.get('normal'+str(norm))[0]) <= 0:
dictObj['normal'+str(norm)][0] = int(-float(dictObj.get('normal'+str(norm))[0])*511)
norm += 1
i += 1

В каждом цикле меняется ключ normal0, хотя должен измениться только один раз.
Аноним 28/09/23 Чтв 18:02:39 #45 №2858887 
>>2858494
потому что у тебя вместо кода кусок говна.
Аноним 28/09/23 Чтв 23:02:47 #46 №2859236 
1695931365730.jpeg
>>2858494
Ебать ты пикрил
Аноним 29/09/23 Птн 14:02:08 #47 №2859768 
asqnHxpA8yY.jpg
Сап тред. Тут могут помочь или для этого стоит создать отдельный?
Аноним 30/09/23 Суб 00:09:48 #48 №2860408 
>>2859768
Тут постят раз в день, какую помощь ты рассчитываешь получить? Не думал, что нагуглить быстрее будет?
Аноним 30/09/23 Суб 00:12:28 #49 №2860409 
image.png
>>2853616 (OP)
Анон, я знаю кунг-фу Питон и немного джанги. Хочу пару пэт-проектов написать: Бот Парсящий, Бот с API Работающий и Джанга Базаюзающая. И для первых двух мне вдохновения не хватает. Подкинь плес идей, что реализовать.
Аноним 30/09/23 Суб 01:01:13 #50 №2860423 
>>2860409
>Подкинь плес идей

Иди на фриланс биржу, найди заказы на ботов. Частый кейс когда нужно взаимодействовать с апи какого-нибудь инстаграмма
Аноним 30/09/23 Суб 01:02:45 #51 №2860424 
>>2860423
Воистину мудрая мысль, спасибо!
Аноним 30/09/23 Суб 07:45:57 #52 №2860476 
IMG20230928034529641.jpg
>>2860409
сделай бота, который будет кидать хентай по жанру
Аноним 30/09/23 Суб 11:53:28 #53 №2860593 
>>2858494
Давно настолько нечитаемого говна не видел
Аноним 30/09/23 Суб 11:56:32 #54 №2860598 
>>2855491
Ё 2 спіса. Трэба аб'яднаць, выдаліць дублі, атсартаваць па альфабэце.
Аноним 30/09/23 Суб 12:02:09 #55 №2860609 
>>2853722
Сам Пітон - дзіцячая мова, бо стваралася на падставе мовы "АBC" для шкаляроў. Дочаш дарослае ААП - ужывай php.
Аноним 30/09/23 Суб 21:37:09 #56 №2861496 
>>2860598
https://gaudiatech.github.io/pyved-engine/
Чё как стоит ворваться?
Детям игрушки незатейливые писать.
Аноним 01/10/23 Вск 01:51:52 #57 №2861686 
Че вы думаете насчет чатжптшного встроенного интерпретера? Эта хуйня же может сама себя дебажить, я в ахуе просто. Хотя применение этому довольно ограничено, я вот больше не могу придумать ей таких задач которые возможно потестить в тексте.
Аноним 02/10/23 Пнд 12:54:58 #58 №2863247 
>>2861496
Смотря что ты хочешь.
Аноним 02/10/23 Пнд 16:55:42 #59 №2863576 
>>2857017
>>2856952
Ебать чмонька порвалась, по манере писать видно, что тебе лет 25 и ты охуеть какой ВЕЛИКИЙ.
Посмотри на гит тех, которые на си протоколы пишут. Ты их тоже вкатунами объявил?
Я хуею с этих рванек, проецирующих свой опыт воровства на остальных. Тебе нельзя собесить людей.
Аноним 02/10/23 Пнд 16:57:57 #60 №2863580 
>>2863247
>Детям игрушки незатейливые писать.
Примерно это. Рогалики для детей (своих и их друзей).
Аноним 02/10/23 Пнд 17:48:43 #61 №2863667 
>>2863580
Если прям рогалики рогалики, то https://github.com/libtcod/python-tcod
https://rogueliketutorials.com/tutorials/tcod/v2/

Для ретро-игр вообще есть https://github.com/kitao/pyxel по типу фэнтезийных консолей как PICO-8.
Можно ещё raylib с биндингами - https://www.raylib.com/
https://electronstudio.github.io/raylib-python-cffi/
Аноним 02/10/23 Пнд 19:51:45 #62 №2863795 
image
>>2863667
Ох нихуя! Рейлиб нарядная, а Пухель даже под веб можно.
Спасибо, анон. Пойду читать, ближайшие недели две не ждите моих искромётных шуток про жопу.
Аноним 02/10/23 Пнд 23:12:21 #63 №2864065 
1000015758.jpg
>>2863576
Хуя подрыв. Не трясись ты так.

>Не все в наше время могут понять суть своих репозиториев с нахуй никому ненужными "проектам"
Аноним 04/10/23 Срд 11:13:29 #64 №2865440 
Нужно отформатировать дробные числа по правилу "показывать в дробной части первое не-нулевое значение"
1.013 = 1.01
0.30001 = 0.3
Это можно сделать как-то в рамках модификаторов форматирования, а не писать свою функцию?
Аноним 05/10/23 Чтв 02:19:48 #65 №2866644 
>>2853616 (OP)
хочу сделать класс, наследующий от pandas.DataFrame, чтобы наследовал все методы pandas.DataFrame, а также имел свои. при этом у меня есть библиотечные функции, которые возвращают объект pandas.DataFrame, а мне бы хотелось превращать его в объект моего производного класса

В C++ это легко достигается нативными средставми через указатели и виртуальные функции. А что делать в Python? Чат жпт не нашёл адекватного решения. Оно существует?
Аноним 05/10/23 Чтв 05:19:08 #66 №2866656 
>>2866644
class NewClass(DataFrame)

...на этом всё.
Аноним 05/10/23 Чтв 11:28:59 #67 №2866836 
>>2866644
нашёл решение здесь: https://stackoverflow.com/questions/3464061/cast-base-class-to-derived-class-python-or-more-pythonic-way-of-extending-class
Аноним 05/10/23 Чтв 12:39:28 #68 №2866932 
>>2866836
Там верхние решения тринадцатилетней давности, чуть не для Питона 2.*
Аноним 05/10/23 Чтв 13:36:03 #69 №2867024 
>>2866932
ну и что - если оно простое и работает

также второе с __new__ хорошее
если я верно понял, то с ним те объекты DataFrame, которые у меня возвращают внешние функции, сразу будут объектами моего производного класса, т.е. конвертация даже не понадобится

я ещё не пробовал, но выглядит как то, что нужно
Аноним 05/10/23 Чтв 19:14:27 #70 №2867538 
Привет, душители удава.

Есть два класса, А и В.
Есть функция, принимающая один из классов и коллекцию инстсансов этого класса.
Как написать тайпхинты для функции, чтобы в коллекции могли лежать только инстансы именно переданного класса?
Чёт туплю.
Аноним 05/10/23 Чтв 21:17:36 #71 №2867683 
Screenshot5.png
че делать анон
Аноним 05/10/23 Чтв 21:23:48 #72 №2867693 
>>2867683
пользоваться анакондой а не пипом под вяндой
Аноним 05/10/23 Чтв 21:45:20 #73 №2867725 
1.png
2.png
>>2867693
1 скрин: чето не пошло
2 скрин: разверну вопрос конкретней - мне нужно из этой папки програму высрать на комп
Аноним 05/10/23 Чтв 21:58:07 #74 №2867737 
>>2867725
https://github.com/diontimmer/sample-diffusion-gui

вот тема этой проги
Аноним 05/10/23 Чтв 22:15:55 #75 №2867756 
>>2867538
TypeVar
Аноним 05/10/23 Чтв 22:28:27 #76 №2867766 
>>2867737
>>2867725
я тут залетный кста. хз че делать. буду рад если подскажете
Аноним 06/10/23 Птн 03:29:43 #77 №2867846 
>>2867766
другую версию пайтона попробуй

To use Stable Diffusion, you'll need to have Python 3.10. 6 installed on your device.
Аноним 06/10/23 Птн 05:38:18 #78 №2867867 
image.png
>>2865440
Аноним 06/10/23 Птн 07:07:57 #79 №2867879 
>>2867867
На 6 знаках начинает выдавать е-нотацию, не подходит
Аноним 06/10/23 Птн 07:19:06 #80 №2867882 
>>2867879
пруф? у меня также даже при 10 знаков
Аноним 06/10/23 Птн 07:38:30 #81 №2867892 
>>2867882
Попробуй с числом меньше нуля.
Аноним 06/10/23 Птн 08:16:40 #82 №2867912 
>>2867846
пробовал. но после старта оно лезет в папку 37 питона, и из-за его отсутствия выдает ошибку в самом начале. какбудто бат этот откалибровался на него. не знаю как перенастроить. я ставил 37 чтобы torch поддерживался.
Аноним 06/10/23 Птн 14:21:51 #83 №2868260 
>>2867912
>оно лезет в папку 37 пытона
Маеш змяніць шлях у пераменных асяроддзя PATH, PYTHONPATH у наладках windows.
Аноним 06/10/23 Птн 15:30:04 #84 №2868351 
>>2868260
спасибо! попробую.
Аноним 06/10/23 Птн 16:56:58 #85 №2868513 
3.png
4.png
>>2868351
>>2867683
@
из папки 310 взял python.exe и скопировал с заменой в папку с нейросетью.
@
также почистил попку 312 которой уже нет в путях
@
проблема теперь такая
Аноним 06/10/23 Птн 16:58:23 #86 №2868517 
Без названия.png
>>2868513
>также почистил попку
Аноним 06/10/23 Птн 17:04:06 #87 №2868531 
>>2868513
> также почистил попку
что же ты делаешь, пидорас
Аноним 06/10/23 Птн 17:34:36 #88 №2868589 
>>2867756
Надо что-то типа

T = TypeVar('T')
def f(obj_class: Type[T], collection: Collection[T])

но для нескольких классов, наследственностью не связанных.
Если я правильно понимаю,

T = TypeVar('T', A, B)
def f(obj_class: Type[T], collection: Collection[T])

позволит передать obj_class = A, collection = [B(), B()], а не должен.
Аноним 06/10/23 Птн 18:03:16 #89 №2868658 
>>2868513
Просто в голосину разорался
Аноним 06/10/23 Птн 18:22:10 #90 №2868703 
>>2868658
Сейчас не время начинать с азов программирования, принципов работы ос и прочего! ГПТ на пятки наступает!
Аноним 06/10/23 Птн 18:33:54 #91 №2868715 
>>2868589

>T = TypeVar('T', A, B)
Это как раз что надо

>позволит передать obj_class = A, collection = [B(), B()], а не должен.
Не позволит. Такое позволит вот это:
>T = TypeVar('T', bound=A|B)
Аноним 06/10/23 Птн 19:09:59 #92 №2868762 
>>2868513
все уже разобрался всем спасибо.
Аноним 06/10/23 Птн 19:15:01 #93 №2868775 
>>2868762
Что с попкой то было? Почему грязная была?
Аноним 06/10/23 Птн 19:23:47 #94 №2868791 
>>2868715
Спасибо, понял.
Аноним 06/10/23 Птн 19:46:08 #95 №2868837 
Как ни крути, питонист всё равно вокруг попки вертится...
Аноним 06/10/23 Птн 19:53:06 #96 №2868853 
Суп, антошки. Подсабите советом
Есть вот такая конструкция для получения заголовка активного окна:
win32gui.GetWindowText(win32gui.GetForegroundWindow())

Как мне сделать проверку на определенный заголовок на ПОСТОЯННОЙ основе?
Что-то вроде такого:
while win32gui.GetWindowText(win32gui.GetForegroundWindow()) == "Notepad":
print("активно")
else:
print("не активно")
Аноним 06/10/23 Птн 20:04:46 #97 №2868876 
>>2868853
Проверять в цикле раз в n милисекунд?
Аноним 07/10/23 Суб 15:23:50 #98 №2869493 
Сап, ананасы. Какую модель лучше использовать для данной задачи:
есть датасет, в котором последовательности запускаемых юзером приложения, необходимо предсказать следующие 10, метрика mAP@10.
Аноним 07/10/23 Суб 18:59:00 #99 №2869676 
DataAnalystClearBoardShutterstock180644618.jpg
>>2869493
ну так ты перебери все модели, которые знаешь и выбери лучшую по этой метрике!
Аноним 08/10/23 Вск 07:52:15 #100 №2870133 
>>2869676
дай свой компухтер, переберу
Аноним 08/10/23 Вск 09:28:50 #101 №2870167 
Сап пейтонисты. Пришел к вам с такой темой, я пишу на Java + Spring и решил попробовать как там на питоне пишутся веб сервисы, взялся изучать django rest framework и что-то нихуя не понял. Вот в у меня как, есть репозиторий для работы с базой, есть энтити для маппинга, есть сервис для бизнес логики, есть контроллер для обработки запросов и есть модели которыми обменивается с клиентами. А в django вообще все по другому оказывается, у него есть view для обработки запросов, есть serializer для маппинга данных, и есть модели которые как представляют сущности в базе, так и служат интерфейсом для неё.
И вот вопрос бля а где писать-то логику я не понял?
Можете пожалуйста рассказать как у вас архитектура проекта устроена? Пока я вижу её такой:
view -> serializer -> model

Всех заранее целую в пупочек
Аноним 08/10/23 Вск 10:55:26 #102 №2870218 
>>2870167
>Можете пожалуйста рассказать как у вас архитектура проекта устроена? Пока я вижу её такой:
>view -> serializer -> model
Ну да, так и есть

>И вот вопрос бля а где писать-то логику я не понял?
В моделях. В сериализаторах и вьюшках логики должно быть по минимуму
Аноним 08/10/23 Вск 12:31:57 #103 №2870281 
>>2870218
А это разве правильно что у тебя есть один класс в котором и сама модель которая описывает сущность в базе, и бизнес логика и скажем так репозиторий. Как-то гавной пованивает не? Если я бизнес логику вынесу в самописный service и буду его после serializer вызывать это нормальный вариант?

Ну типа вот так:
view -> serializer -> service -> model
Аноним 08/10/23 Вск 12:32:58 #104 №2870282 
>>2870167
>view -> serializer -> model
Лёгіку пісаць ва View, бо гэта ж і ёсьць твой кантролер?!
Аноним 08/10/23 Вск 12:38:50 #105 №2870290 
>>2870282
Во первых
Я на cock_хольском не розумию, так что переведи через гугл переводчик свою какулю
Во вторых
Иди в жопу тролль
Аноним 08/10/23 Вск 12:46:55 #106 №2870305 
>>2870290
>view -> serializer -> model

Varta razharnuć tvaju schemu da nastupnaha:

>frontview -> backview -> serializer+model

Backview vykonvaje rolu kantrolera, business-logika źmiaščajecca tut. Heta ŭmoŭna adpaviadaje architektury MVP:

>View -> Presenter -> Model
Аноним 08/10/23 Вск 13:40:15 #107 №2870358 
>>2870281
Неправильно, логика должна быть в своём слое, а не в моделях. А называй как хочешь (сервис / интерактор / юзкейс)/
Аноним 08/10/23 Вск 19:28:50 #108 №2870961 
>>2853616 (OP)
Почаны, нид хелп.
Хочу написать модуль расшифровки дампа траффика.
Есть negotiate от кербероса, модуль поднимает локальный сервер и отправлять гет-запрос (в хэдере authorization + билет крб) на этот сервер.
Продумал структуру, что это будет две три асинхронные функции.
Не могу понять две вещи:
1. мне в гет-запросе хостом чего указывать? Живой контроллер домена или можно рандомную парашу туда указывать?
2. в гет-запросе эндпойнтом будет служить эндпойнт авторизации на контроллере домена или нет?
Аноним 08/10/23 Вск 19:29:26 #109 №2870963 
>>2867683
Очевидно не использовать шиндос.
Аноним 09/10/23 Пнд 11:20:43 #110 №2871521 
>>2869493
Волчара, это ты реально решил брать заказы на фрилансе и скидывать вопросы на Двач?

https://freelance.habr.com/tasks/530917
Аноним 09/10/23 Пнд 11:31:07 #111 №2871529 
Сап, двач. Сижу на уроке информатики и программирую на питоне, пиздец тоска полная. Удручает это занятие донельзя..Какие-то задачки из ЕГЭ по нахождению Х. В общем программёры, как вы не скурвились от этого занятия?
Аноним 09/10/23 Пнд 11:31:42 #112 №2871530 
Сап, двач. Сижу на уроке информатики и программирую на питоне, пиздец тоска полная. Удручает это занятие донельзя..Какие-то задачки из ЕГЭ по нахождению Х. В общем программёры, как вы не скурвились от этого занятия?
Аноним 09/10/23 Пнд 11:44:42 #113 №2871537 
>>2871521
не, я для соревнование на кегле
Аноним 09/10/23 Пнд 11:49:58 #114 №2871546 
>>2871537
Ну и на что ты и этот типок рассчитывают тогда?
Предсказать можно что угодно. Качества лучше чем у других добиться сложно, а выигрывает только один.

Ссылку кинь лучше.
Аноним 09/10/23 Пнд 13:40:44 #115 №2871655 
>>2871546
Так я для себя решаю, а не для результата, да и выйгрыш там ничего не дает тебе
Аноним 09/10/23 Пнд 15:07:52 #116 №2871747 
Как научится лучшим практикам в программировании? Я самоучка, никогда на работал в серьезной ит компании. Могу написать скрейпер, могу сделать простенький ETL в пандах, могут подключить модели в torch для какой-то задачи. И я чувствую что мне на хватает знаний лучших практик. Например про pep8 я узнал только несколько месяцев назад, про линтинг буквально вчера (pylint не все что ли нарушения пеп8 подчериквает?). Про гит конечно я знаю, но не понимаю почему рекомендуют его использовать буквально в каждом проекте, для какого-то простого скрейпера мне ощущается это слишком громоздко. Что посоветуйте, где научится таким штукам?
Аноним 09/10/23 Пнд 16:29:52 #117 №2871878 
тест
Аноним 09/10/23 Пнд 16:39:14 #118 №2871884 
>>2871747
На работе.
Аноним 09/10/23 Пнд 17:21:19 #119 №2871945 
>>2871747
Я лично очень много опыта и знаний получил, когда работал над своим проектом в течение года или даже больше.
Тысячи строк кода написал самостоятельно.
Аноним 09/10/23 Пнд 17:57:09 #120 №2871999 
>>2871747
>Про гит конечно я знаю, но не понимаю почему рекомендуют его использовать буквально в каждом проекте,
Для тренировки. Тебе жалко что-ли?
Аноним 09/10/23 Пнд 17:58:45 #121 №2872001 
>>2871655
тогда нахуя спрашиваешь как заниматься СОРЕВНОВАТЕЛЬНЫМ ML, вместо того чтобы просто учебники читать?
Сука Пайтон Infinity 09/10/23 Пнд 22:57:32 #122 №2872453 
изображение2023-10-09225702114.png
Анонасы, кто шарит за PEP 8 подскажите, где тут сука ошибка в коде из разряда PEP 8.
Аноним 09/10/23 Пнд 23:16:52 #123 №2872471 
>>2872453
Что за сайт?
Аноним 09/10/23 Пнд 23:20:56 #124 №2872478 
>>2872471
Яндекс академия, там они норм упражнения сделали, но переборщили с pep 8.
Аноним 10/10/23 Втр 00:46:30 #125 №2872581 
>>2872478
Стоит покупать?
Аноним 10/10/23 Втр 00:48:42 #126 №2872584 
>>2872453
Зачем ты целочисленное и с плавающей точкой числа объявил строками, чтобы потом заменить их тип? Ты еблан или про нестрогую динамическую типизации не слышал?
Аноним 10/10/23 Втр 08:17:24 #127 №2872686 
В пистоне можно иметь одновременно две разные версии одного пакета? Используется либа А с зависимостью от либы Б, но в либе А старая версия либы Б, которая не имеет нужного функционала, но при этом обновиться тоже нельзя. Хотелось бы оставить либу А в рабочем состоянии и новые возможности либы Б.
Аноним 10/10/23 Втр 08:51:42 #128 №2872709 
>>2872686
Наверно именно поэтому юзатся venv в питоне, скорее всего нельзя
Аноним 10/10/23 Втр 13:36:03 #129 №2873016 
>>2870218
так разве вьюшки не для логики нужны?
можно пример логики в моделях?
Аноним 10/10/23 Втр 18:11:52 #130 №2873532 
>>2870218
>вьюшках логики должно быть по минимуму
Проиграл на весь тред ебать ты пидор хахахахаха
Аноним 10/10/23 Втр 20:43:00 #131 №2873755 
Есть рабочий комп, на котором хочу в свободное время вкатиться в изучение питона. Пока есть админские права, я могу на него что-то установить, но скоро их не станет, поэтому хочу сейчас поставить что нужно. Можете дать список того, что мне нужно скачать, всякие мастхэв проги и что там еще может понадобиться?
Аноним 11/10/23 Срд 11:18:25 #132 №2874317 
>>2873755
сам питон, какую-нибудь IDE и несколько нужных фреймворков. Библиотек разных можешь установить на будущее, типа тех что с таблицами excel работают и т.д.
Аноним 11/10/23 Срд 13:39:12 #133 №2874502 
>>2872478
Ты их Практикум имеешь ввиду?
Какой курс взял?
Аноним 11/10/23 Срд 18:19:37 #134 №2875055 
>>2873755
docker и qemu-kvm
их ты без админских прав не установишь, тогда как какой-нибудь питон можно локально

а имея докер или виртуальки, ты потом в них сможешь много чего ставить
Аноним 11/10/23 Срд 18:21:23 #135 №2875061 
>>2872686
нет, нельзя. Сам подумай, как ты импортировать их будешь после этого?
Аноним 11/10/23 Срд 18:56:43 #136 №2875144 
>>2875061
Установить их с разными алиасами хотя бы,my_package и my_package2, меня бы такой вариант устроил.
sage[mailto:sage] Аноним 11/10/23 Срд 19:56:00 #137 №2875252 
Аноны, помогите с функциями. Никак не могу въехать.
Вот есть такая функция:
def test(a, b):
return a+b;

При этом, я хочу вводить a и b с клавиатуры/
Как мне это делать?
sage[mailto:sage] Аноним 11/10/23 Срд 20:52:03 #138 №2875345 
>>2875252
def f():
a = int(input())
b = int(input())
return a + b
Аноним 11/10/23 Срд 22:27:54 #139 №2875444 
1111.png
Может кто объяснить чё это за хуйня?
Аноним 11/10/23 Срд 23:08:09 #140 №2875524 
>>2875444
А с чего ты так уверен что твой venv это то же самое окружение что тебе иде показывает собственно?
Аноним 11/10/23 Срд 23:14:39 #141 №2875529 
1111.png
>>2875524
Как-то не ожидал что в пайчарме может быть иначе, он же проект создал уже с окружением и по идее открывает его в нём. К тому же, всё остальное работает. Вообще всё, кроме этой библиотеки.

На всякий случай проверил из этого окружения, библиотека есть.
Аноним 12/10/23 Чтв 00:03:14 #142 №2875567 
>>2875444
что за тема?
Аноним 12/10/23 Чтв 03:00:04 #143 №2875637 
>>2875529
Сделай обычный импорт или переименуй функцию не по имени модуля.
Аноним 12/10/23 Чтв 03:04:35 #144 №2875639 
>>2875444
Ошибка в 5й и 22й строке, за такое ногами пиздить.
Аноним 12/10/23 Чтв 08:07:23 #145 №2875695 
>>2875639
22-я строка: Это буквально код из документации, да и я пробовал переименовывать, не помогало.

5-я строка: вот я и пытаюсь понять что тут неправильно. Попробую импортировать целиком по совету анона выше
Аноним 12/10/23 Чтв 20:59:17 #146 №2876799 
inp = 'ооо " возрож" ? ! ^ \' '

inp = inp.upper()
is_done = True
inp3 = "gavno"

while not is_done:
is_done = True
inp1 = inp.strip(" \'\",.;:%!?$#@[]{}\\'")
if inp1 != inp:
is_done = False
continue

inp2 = inp1.lstrip("ООО").strip(" \'\",.;:%!?
$#@[]{}\\'")
if inp2 != inp1:
is_done = False
continue

inp3 = inp2.lstrip("ИП").strip(" \'\",.;:%!?$#@[]{}\\'")
if inp3 != inp2:
is_done = False
continue


st = f"select
from fnsclients where sname like '%{inp3}%';"
print (st)
Аноним 12/10/23 Чтв 21:00:35 #147 №2876800 
Почему в st - "" вместо "ВОЗРОЖ" ???
Аноним 12/10/23 Чтв 22:02:18 #148 №2876834 
>>2876799
Твой цыкл не выконваецца ніводнага разу, бо is_done = True.
Аноним 12/10/23 Чтв 22:47:42 #149 №2876860 
>>2876834
если ставить False - то бесконечный цикл.
Аноним 13/10/23 Птн 01:01:39 #150 №2876899 
Скажите, реально ли петухон перегрет вкатунами? Хочу нахуй дропнуть веб, в который вкатился просто напиздев и учил его "по пути". Просто заебала эта маркетолухная хуйня "продажи, клиенты" и другие термины, которые меня окружали. Хочется писать что-то реально интересное, математическое, полезное. Плюсом, хотел бы на досуге пилить игрульки в godot. На вкат похуй, у меня в институте есть спец. курсы для бюджетников, бесплатные, где отправляют на практику в компании которые буквально от меня в соседнем доме. Впереди у меня будет целый год на "подготовиться". Стоит ли игра свеч, какие перспективы имеются, и что можно делать на питухоне в принципе, кроме тех самых зафоршенных "нейросети, бигдата". Смогу ли я делать оконные приложухи на пекарню и сложные логики? Поддерживает ли он взаимодействие с системой, на уровне, например, получения данных с датчиков ПК и т.д. заранее спасибо за ответы
Аноним 13/10/23 Птн 01:17:38 #151 №2876906 
>>2876899
Бтв на деньги поначалу похуй, батек даёт 20к в месяц, тян РАБотает учителем, я сейчас кроме как в ВОВ на пиратках пердеть нихуя не делаю. Забугор наверное нахуй нужен, у себя и так нормально, за роскошью не гонюсь. Скорее для меня айти это "думать", а не "зарабатывать". Хотя вот сегодня заработал целых 150 рублей, сделав ебланам одногруппникам лабу на бейсике
Аноним 13/10/23 Птн 03:52:01 #152 №2876990 
>>2876899
>Скажите, реально ли петухон перегрет вкатунами?
Да, он у всех на слуху.

>Хочется писать что-то реально интересное, математическое, полезное
Прости, а с какого хера ты обсираешь веб? Ты так рассуждаешь как будто ты уже 15 лет в вебе, сотню проектов уже запилил. Веб вполне себе интересен и полезен. У тебя пока ещё нет компетенции, чтобы так категорично рассуждать.

>Смогу ли я делать оконные приложухи на пекарню и сложные логики?
А какой в этом смысл... ну это тупо пиздец - писать десктоп приложения со сложной на питоне. Шоп они тормозили и лагали. Писать конечно можно НО ЗАЧЕМ!?
Аноним 13/10/23 Птн 07:53:42 #153 №2877031 
>>2876990
Не хочу я веб, это не мое, и точка. Насчёт десктопа я просто спросил. Я какой язык будет норм для вкатунишки, согласно моим запросам
Аноним 13/10/23 Птн 07:59:17 #154 №2877033 
>>2876990
А что если go, или какой-нибудь еще
Аноним 13/10/23 Птн 08:13:52 #155 №2877040 
Скажите, реально ли петухон перегрет вкатунами? Хочу нахуй дропнуть веб, в который вкатился просто напиздев и учил его "по пути". Просто заебала эта маркетолухная хуйня "продажи, клиенты" и другие термины, которые меня окружали. Хочется писать что-то реально интересное, математическое, полезное. Плюсом, хотел бы на досуге пилить игрульки в godot. На вкат похуй, у меня в институте есть спец. курсы для бюджетников, бесплатные, где отправляют на практику в компании которые буквально от меня в соседнем доме. Впереди у меня будет целый год на "подготовиться". Стоит ли игра свеч, какие перспективы имеются, и что можно делать на питухоне в принципе, кроме тех самых зафоршенных "нейросети, бигдата". Смогу ли я делать оконные приложухи на пекарню и сложные логики? Поддерживает ли он взаимодействие с системой, на уровне, например, получения данных с датчиков ПК и т.д. заранее спасибо за ответы
Бтв на деньги поначалу похуй, батек даёт 20к в месяц, тян РАБотает учителем, я сейчас кроме как в ВОВ на пиратках пердеть нихуя не делаю. Забугор наверное нахуй нужен, у себя и так нормально, за роскошью не гонюсь. Скорее для меня айти это "думать", а не "зарабатывать". Хотя вот сегодня заработал целых 150 рублей, сделав ебланам одногруппникам лабу на бейсике.
На слуху есть ещё C#, GO и Kotlin(но не уверен насчёт мобилок). Прошу помочь с выбором стула. Заранее благодарю
Аноним 13/10/23 Птн 08:15:19 #156 №2877042 
>>2877040
Сори, хотел в нюфаня-тред отправить
Аноним 13/10/23 Птн 10:58:45 #157 №2877168 
>>2877031
>Не хочу я веб, это не мое, и точка
Ну не твоё и не твоё. Только не говори, что веб не интересен или нет полезных проектов.

>какой язык будет норм для вкатунишки, согласно моим запросам
А причём здесь язык? Любой КОМПИЛИРУЕМЫЙ язык норм. Главное не язык, а мастерство владения им. Что толку тебе давать какой-нибудь С++, если ты будешь использовать его на 5% возможностей.

Язык - это индивидуальный инструмент, со своей собственной философией. Это как выбирать музыкальный инструмент, ты же не спросишь - посоветуйте на чём мне играть, на фортепиано, на скрипке или на барабанах? Кто-то любит ООП, он берёт java. Кто-то любит функциональщину, он берёт elixir. А кто-то любит более специализированный научный язык, он возьмёт r.

Выбирать надо по своему вкусу, может тебе сейчас посоветуют баян, а ты всегда мечтал быть джазовым саксофонистом.
Аноним 13/10/23 Птн 11:18:40 #158 №2877194 
>>2877040
да. вьёб парашка ещё та. говно реальное рвотное.
Аноним 13/10/23 Птн 11:30:41 #159 №2877215 
>>2877168
Ну так вопрос, что более актуальное под мои вопросы, вопрос даже, наверное, не про сложность вката, а про вакухи
Аноним 13/10/23 Птн 16:20:15 #160 №2877564 
>>2877215
>не про сложность вката, а про вакухи
Во всех популярных языках вакансий хватает. Если ты освоил язык и не можешь найти вакансию - проблема в тебе. Либо ты неправильно ищешь, либо не хватает скиллов. Вообще, выбирать язык исходя из рынка труда - тупая идея. Рынок консервативен по натуре. Рынок любит проверенные мейнстримные решения, если условный mysql использовали 20 лет назад, его так и будут использовать ещё 20 лет. Если php использовали 30 лет назад, его и будут использовать ещё 30 лет пока не здохнет. Рынку нет смысла рыпаться в новомодные rust, golang или kotlin. Количество вакансий - это признак мейнстримности, не более того.
Аноним 13/10/23 Птн 18:18:14 #161 №2877788 
>>2877564
> >не про сложность вката, а про вакухи

Ну так, что же будет более релевантным под мои мысли? С#?
Аноним 13/10/23 Птн 18:26:17 #162 №2877797 
>>2877788
Хотя впизду сишку, она только под Винду...
Аноним 13/10/23 Птн 22:56:10 #163 №2878159 
>>2877797
.core уже давно кроссплатформенный так-то.
Аноним 13/10/23 Птн 23:07:16 #164 №2878175 
киньте ссыль на курсы с ютуба
с самого начала
или ссыль на слитый видеокурс
sage[mailto:sage] Аноним 13/10/23 Птн 23:21:11 #165 №2878196 
>>2878175
Кинул тебе за щеку.
Аноним 13/10/23 Птн 23:26:51 #166 №2878201 
>>2878196
хуя озлобленный
Аноним 14/10/23 Суб 06:07:58 #167 №2878311 
>>2857014
Не позорь господ с репозиториями, долбоеб. Репозиторий может быть решающим фактором, а может человек всю жизнь коммерческий код писал.

// Мимо-8к-старов на своих проектах
Аноним 14/10/23 Суб 13:00:23 #168 №2878484 
>>2878311
На пыхе пишешь, уëбок? Это даже не ЯП.
Аноним 14/10/23 Суб 16:01:22 #169 №2878602 
>>2878484
На сях и питоне.
Аноним 14/10/23 Суб 21:56:20 #170 №2879140 
Мне надо написать скрипт, который будет пылесосить открытое апи с пагинацией. Вопрос: как лучше собирать данные в процессе? В результате мне надо выплюнуть датафрейм, и пока я хочу просто каждый ответ-страничку трансформировать в датафрейм и в конце схлопнуть все в один конкатенацией. Оптимально ли это, или принято подобные вещи иначе организовывать?
Аноним 15/10/23 Вск 14:48:31 #171 №2879755 
>>2879140
Датафрейм это что и откуда?
Аноним 15/10/23 Вск 17:29:02 #172 №2879954 
>>2879755
Таблица pandas.
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html
Аноним 15/10/23 Вск 19:00:48 #173 №2880136 
>>2879140
Ты можешь обойтись без ДФ или ты учоный (в питоне мочёный)? Штука отличная, но тормозная. Возьми какую-нибудь другую структуру данных. Даже просто в таблицу SQL их записывай — быстрее будет. Питон и так скоростью не отличается.

Прочитал — записал. Прочитал ещё — дописал дальше в базу... И никаких конкатенаций не нужно.
Аноним 15/10/23 Вск 20:44:21 #174 №2880276 
А где тред по нейроночкам и машобу? Раньше регулярно на нулевой он был.
Аноним 15/10/23 Вск 20:49:03 #175 №2880288 
>>2880276
В отдельную доску выделили уже полгода как.
Аноним 15/10/23 Вск 21:49:05 #176 №2880404 
>>2879140
так у тебя скрипт еще не раз упадет с ошибкой или тебя забанят.
лучше сразу каждую новую страницу на диск в CSV пиши.
Ну а ДАТАФРЕЙМ загрузить потом уже дело техническое
Аноним 16/10/23 Пнд 01:30:56 #177 №2880519 
Есть класс, который наследует много других классов.
У этого класса есть метод, объявленный в каком-то из родителей.

Можно ли узнать, какой именно родительский класс объявил этот метод? Без заглядывания в код.
Что-то вроде:

class Class2:
def method: ...

Class(Class2): ....

c = Class()
c.method.implemented_by ## Class2
Аноним 16/10/23 Пнд 11:27:13 #178 №2880795 
>>2880519
Через __mro__
c = Class()
for parent in c.__class__.__mro__:
--if hasattr(parent, 'methodname'):
----print(parent.__name__)
----break
Аноним 16/10/23 Пнд 14:04:58 #179 №2880997 
image.png
Тк я в любом случае пройдусь по всем элементам, то список мне не нужон.
А чо лучше map или () и в чем ваще разница в моем случае?
Аноним 16/10/23 Пнд 15:09:44 #180 №2881073 
>>2880997
Очевидно разница в том, что map - это ленивый итератор, а первая конструкция - генератор. И выбор между ними зависит от дальнейшего применения, если serialize это встроенный метод внутри каждого из элемента, то вызывать этот метод через лямбду и применять к каждому элементу - это как дотянуться до уха левой ногой через затылок. Можно, но зачем?
Аноним 16/10/23 Пнд 17:35:59 #181 №2881318 
Untitled1ghfgtd.png
А есть сайты с проектами pyqt? Нихера нагуглить не могу. Всё какие-то обучалки как добавить говнокрутилки. А нужно натянуть дизайн например вебстраницы, а был бы нормальный пример его бы и можно было ковырять.
Аноним 16/10/23 Пнд 17:47:53 #182 №2881325 
Чета в шапке слишком дохуя всего, глаза разбегаются. Можете посоветовать что-нибудь чуть более, чем ньюфажеское по питуну, особенно чтоб ООП было хорошо раскрыто? Базовые концепции знаю, пишу автотесты на питуне, поэтому совсем-совсем основы не надо.
Аноним 16/10/23 Пнд 18:06:25 #183 №2881346 
>>2881325
Чатжпт посоветовал fluent python. По оглавлению прям то, что я искал. Что можете насчет этой книги сказать?
Аноним 16/10/23 Пнд 18:07:47 #184 №2881353 
>>2881318
Няма, бо PyQT - гэта бібліятэка для стварэння графічнага інтерфейсу для desktop, а не web.
Аноним 16/10/23 Пнд 20:40:46 #185 №2881603 
>>2881346
В качестве первой книги сложновато может быть
Аноним 16/10/23 Пнд 21:11:39 #186 №2881660 
>>2881073
Cори, отписал и забыл.
Я вообще где-то слышал звон - не знаю, где он, что эти анонимные функции вообще лучше не использовать.

Но в целом, у меня обе операции возвращают примерно одно и то же.
И поулчается единственная разница именно в лямбде и ты только из-за нее написал про ухо и ногу? или есть еще в чем-то разница?
Аноним 16/10/23 Пнд 21:46:38 #187 №2881702 
>>2880136
>>2880404
Спасибо за ответы, аноны, по-быстрому получилось решение набросать с датафреймами, все работает, но там и объемы данных маленькие - 10к строк. ДФ мне нужен, чтобы данные причесать и потом крутить в анализе, но вообще подкупило то, что тогда не надо хотя бы париться с парсером для джейсонов, а сразу сахарочком чистишь разглаженную табличку. Для саморазвития попробую реализовать запись ответов сервера в csv по мере поступления, чтобы не держать их в оперативке, и просто к этому напишу трансформер, который csv загрузит в датафрейм и после будет обрабатывать.
Аноним 17/10/23 Втр 08:31:56 #188 №2881912 
Аноны, а можно ли в пистоне внутри sg.Frame (PySimpleGUI) вложить 2 колонки sg.Column ??
Хочу чтобы обрамление Frame было, а внутри информация в 2 колонки (поля и текст разный)
Аноним 17/10/23 Втр 09:25:59 #189 №2881956 
>>2881912
разобрался
Аноним 17/10/23 Втр 12:03:06 #190 №2882084 
Ребят, а идея освоить питон через платные курсы совсем плохая? Просто времени особо нету дома заниматься, а если заплачу то буду на работе в свободное время учить, особенно когда оплачено, или вся эта херня типо скиллбокса лажа?
Аноним 17/10/23 Втр 12:06:27 #191 №2882089 
>>2882084
На степике пройди курсы по питону от института биоинформатики, все остальное сможешь уже сам доучить
Аноним 17/10/23 Втр 13:32:39 #192 №2882214 
>>2882084
>идея освоить питон через платные курсы совсем плохая?
>эта херня типо скиллбокса лажа?
У меня две основных претензии к скиллбоксу. Первая это запредельная цена. Второе это то что они обещают золотые горы. Объясню подробнее. Вся задача курсов - это просто качественно учить, их не должно ебать твоё трудоустройство. Это всё равно что стенфорд или гарвард скажет - либо вы трудоустраиватесь, либо мы вам возвращаем деньги за пять лет учёбы. Время работы по распределению уже прошло. Сейчас уже не СССР. Они вообще не должны ссылаться на то, сколько получает программист. Правда в том, что на "джуниор" вакансию невозможно устроиться. Там конкуренция в районе 500-1000 человек на одно место. У тебя больше шансов попасть на пост директора газпрома чем пробиться на "джуниор питониста". Ну и цена курса в районе 150 тыщ? Или сколько там, не помню. Даже американские курсы в 3 раза дешевле, а по содержанию в 3 раза лучше. Ценность сертификата скиллбоксовского примерно нулевая.

TL;DR короче говоря, если бы скиллбокс стоил в районе 15к, не обещал трудоустройство, не обещал вернуть деньги, не ебал мозги акциями (рассрочки, скидки, прочая хуйня), и давал выборочно учиться - например мне хочется только RabbitMQ изучить. Пожалуйста. Тогда это были бы хорошие годные курсы.
Аноним 17/10/23 Втр 13:41:26 #193 №2882228 
>>2853616 (OP)
установил питон
пытюась в матплотлиб, посылает нахуй
перерыл весь интернет выдрал все волосы на жопе
спасити
-
>>> import matplotlib.pyplot as plt

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python\Lib\site-packages\matplotlib\__init__.py", line 272, in <module>
_check_versions()
File "C:\Python\Lib\site-packages\matplotlib\__init__.py", line 266, in _check_versions
module = importlib.import_module(modname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python\Lib\importlib\__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python\Lib\site-packages\kiwisolver\__init__.py", line 8, in <module>
from ._cext import (
ImportError: DLL load failed while importing _cext: Не найден указанный модуль.
Аноним 17/10/23 Втр 14:26:29 #194 №2882284 
>>2882228
Microsoft Visual C++ Redistributable есть?
Аноним 17/10/23 Втр 14:50:27 #195 №2882315 
>>2882228
надо было ставить конду. твой матплотлиб уже в комплекте.
вы хуево понимаете что пипка это петонячий пакетный менеджер он не может разруливать зависимости вне питухона, а конда могет
Аноним 17/10/23 Втр 15:00:29 #196 №2882327 
>>2882315
нах вообще ставить че-та? вкатунировать можно в гугл колабе
Аноним 17/10/23 Втр 15:04:43 #197 №2882334 
>>2882284
припадаю к твоим стопам и целую пыль с твоих ботинок!
Два дня ебался((
установил Microsoft Visual C++ Redistributable и заработало!
Аноним 18/10/23 Срд 01:01:16 #198 №2883119 
>>2882334
Чел... Пиздуй изучать 1с или пыху
Аноним 18/10/23 Срд 15:54:13 #199 №2883686 
Screenshot20231018144516.png
Screenshot20231018144556.png
>>2853616 (OP)
Почему не удается импортировать тензорфлоу? Я его же инсталлировал в конфиге никсов и pip list показывает, что нужные пакеты установлены.
Аноним 18/10/23 Срд 16:19:21 #200 №2883724 
>>2883686
Глюк vscode. Нейросетка заработала
Аноним 19/10/23 Чтв 06:58:55 #201 №2884310 
Как указать tkinter в зависимостях в setup.py?

Проблема в том, что tkinter может быть не установлен вместе с интерпретатором, при этом этого стандартного модуля нет в PyPI.

Как прописать tkinter в install_requires?
Аноним 19/10/23 Чтв 14:28:53 #202 №2884847 
>>2853616 (OP)
Почему pytest тесты вместо 20 секунд вдруг начали исполняться 6 минут? Шо за нах? Как проверить/задебажить что их вдруг так стало тормозить?
Аноним 19/10/23 Чтв 16:57:16 #203 №2885144 
image.png
Написал небольшой скрипт который конвертирует из папки все файлы фотошепа в png. Но по какой-то причине на некоторых файлах вылазит ошибка
PIL.UnidentifiedImageError: cannot identify image file '1.psd'
Это не связано с количеством слоев или незнакомыми шрифтами. точно. В инете создается впечатление что проблема распостраненая и решают ее методом тыка. Но может здесь кто шарит
Аноним 20/10/23 Птн 00:13:40 #204 №2886035 
>>2883724
Это не глюк вс код, это один дебил интерпретатор после установки вэнв не сменил.
Аноним 20/10/23 Птн 17:26:26 #205 №2886983 
Поправьте идею аплоада видео >1гб и отдачу их на клиент

Хранить кучу файлов на сервере и отдавать их постоянно хуевая идея в продакшене, пока решил использовать S3.

Админ через админку аплоадит большой файл, я овверайднул форму сохранения, и перенаправляю аплоад на Амазон через Celery задачу, чтоб не грузить основной поток. После аплоада сохраняю url в БД и отдаю его на клиент при GET запросе.

Я так понимаю пока файл все равно будет сначала грузиться на сервер/оперативку, а потом уже летать в облако? Есть ли какие-то другие варианты?
Аноним 20/10/23 Птн 17:40:49 #206 №2887014 
Тут в торче кто разбирается? Есть сетка и дискриминатор. Оба по отдельности тренируются генератор на l1 тренируется без проблем, дискриминатор на данных генератора тоже тренируется. Но вот когда данные из генератора пропускаю через дискриминатор, веса генератора напрочь отказываются обновляться после step оптимизатора. На backward торч ничего не пишет, типа всё норм. Проверял на разрывы графа, но нихуя не нашёл, detach и копирования нет нигде, requires_grad везде на параметрах стоит, grad_fn у всех есть. Что за блядство и как мне понять где проблема? Тут два варианта - либо граф разорван где-то, либо по какой-то неведомой причине градиенты слишком мелки, но я на высоком lr тоже проверял, он должен на первом же обновлении NaN словить. Но как понять что не так не понимаю.
Аноним 20/10/23 Птн 18:27:21 #207 №2887145 
Блядь после фастапи Джанго такой дрисней кажется, конечно. Скажите, это я отупел, пока работал с фастапи, или Джанго реально перегруженная?
Аноним 20/10/23 Птн 20:53:22 #208 №2887432 
>>2886983
Да никто так не делает. Тут ничё даже выдумывать не надо, есть готовые руководства по реализации https://aws.amazon.com/ru/solutions/implementations/video-on-demand-on-aws/ Видеофайлы надо перекодировать обязательно. Неперекодированные файлы - это гарантия переплаты за диск, тормоза на фронтэнде и т.д. Тем более никто ведерко напрямую не открывает. Надо ведерко подключать напрямую к cdn, чтобы кешировало. Тем более раздавать видеофайлы с s3-ведёрка как правило дороже. Celery - это уже велосипедостроение. Там уже есть готовые eventbridge/sqs/sns. Можно взять любой из них и запилить. По ценам - один доллар за миллион событий ёпт. Хватит с головой на всю жизнь.
Аноним 20/10/23 Птн 22:16:52 #209 №2887564 
>>2887432
О, благодарю. Даже не думал что все так продумано уже. Лет 7 назад помню на сервере через ffmpeg нарезали видео на разные качества, в итоге один аплоад пару часов занимал, а щас уже все намного проще.
Аноним 21/10/23 Суб 17:47:54 #210 №2888970 
>>2887014
Короче ссал на вас, веб-макаки, сам разобрался. Оказывается компания-пидор Hugging Face в очередной раз сделала кусок говнокода в accelerate - пока не передашь ей вообще все модели для подготовки эта пидорасина будет молча рвать граф, причина - потому что пошёл нахуй. Даже если вообще левую модель вызовешь между forward и backward - всему пизда.
Аноним 22/10/23 Вск 12:46:48 #211 №2889648 
>>2877040
>Скажите, реально ли петухон перегрет вкатунами
Не перегрет. Ты же ведь его учишь для для того чтобы вкатиться в датасатаниста/нейросеточника? У тебя есть высшее математическое, англ не ниже B2 и реальные шансы на оффер за кордон? В противном случае не понятно зачем тебе тогда вообще питон. Разве что для общего развития.
Аноним 22/10/23 Вск 16:06:25 #212 №2889932 
>>2889648
>У тебя есть высшее математическое, англ не ниже B2 и реальные шансы на оффер за кордон?
Без опыта он за кардоном нахуй не нужен а для кручения нейронками достаточно инженерного курса матстата
Аноним 23/10/23 Пнд 12:05:06 #213 №2890813 
посоны, объясните для дебилов, вот мне срали все в уши что venv зоебись, частота ебать поцоны все так делают, я думал что проще скопировать питон нужной версии в проект и установить только ему нужные зависимости, и вот я уже такой блять создают проект через venv, активирую его, ставлю нужные библиотеки, а чё теперьто блять? как его запустить дбез ебания в сосноль с активацией среды и только последующим запуском нужного файла?

я пытаюсь сделать батник в папке проекта и пишу в него
.\Scripts\activate
python run.py
pause

и что блять я получаю? запускается виртуальная среда и всё, консоль закрывается, до python run.py даже не доходит, а до pause тем более, что за говно, как блять запускать проекты созданные в виртуальной среде? постоянно как долбаёб открывать консоль, активировать среду и запсукать нужный файл? чё за говно ебаное?
Аноним 23/10/23 Пнд 13:36:13 #214 №2890940 
>>2890813
Программирование не для тебя, забей.

А по-серьезному, активируй 1 раз и запускай свои скрипты сколько хочешь. Или IDE юзай, они сами терминал открывают сразу в venv-e, если видят его в корне проекта.
Аноним 23/10/23 Пнд 13:43:35 #215 №2890959 
image.png
Сап, питоняч.
Учу Django, в частности Django REST Framework.
Кто-нибудь работал с авторизацией по токенам?
Создал эндпойнт для логина, используя dj-rest-auth, который при успешном входе сохраняет в БД токен для некоторого юзера (как на пике).
Вопрос: как реализовать аутентификацию по токенам? Нужно создавать свой энпойнт, например: api/auth-by-token/, посылать на этот эндпойнт сохраненный у клиента в local storage токен, создавать свой view, который будет связан с этим энпойнтом и уже во view проверять, есть ли такой токен и если есть, то аутентифицировать?
В доке джанги ничего не написано.
Аноним 23/10/23 Пнд 14:14:40 #216 №2890997 
>>2882084
>идея освоить питон через платные курсы совсем плохая?
По-моему отличная идея, но все зависит от твоей ситуации. Если есть деньги и мало времени - курсы твой выбор.
Сам я буквально на прошлой неделе закончил курс пайтон-разработчик (бэкенд) на Практикуме. По поводу качества знаний - я был приятно удивлен, дают много полезного. Но дальше все зависит только от тебя. Ты можешь ебашить каждый день, изучать предоставленный материал, посещать еженедельные трансляции наставников, задавать вопросы и т.д. и на выходе с курса получишь сильную базу. Либо ты ебланишь, делаешь по минимуму, а код для контрольных проектов пиздишь с гитхаба (тут может не повезти и тебя спалят на плагиат, тогда либо сам переписываешь, либо отчисление) - на выходе получишь примерно нихуя.
Ничего не имею против самообучения (самообучением придется заниматься даже на курсе), но надо понимать - самообучение требует умения в самоорганизацию, дисциплину. Гораздо выше шанс обосраться и не дойти до конца.
На курсе же - за тебя составили программу люди, знающие рынок, остается только прилагать усилия, для усвоения этих знаний (что тоже бывает непросто). Но за это надо зоплотить.
Аноним 23/10/23 Пнд 15:12:42 #217 №2891065 
>>2890940
>Программирование не для тебя, забей
ты прикалываешься? я должен потому что ты не знаешь как, бросить задумку и ничего не делать?

я не хочу каждый раз запускать кучу консолей и в каждой вручную активировать среду для запуска ебанного скрипта на питоне когда мне нужно запустить одновременно много разных проектов, я уже нашёл решение, нужно было прописать в начале активации call чтобы эта параша не перехватывала консоль, а ты просто сам этого не знал, так и скажи
Аноним 23/10/23 Пнд 21:29:50 #218 №2891505 
2023-10-2321-27-00.png
Есть задача надо наложить текст на видео. С помощью CV2 делается на изи, но там обычный текст можно только наложить, без спец.эффектов, а для спецэффектов по типу пикрила нужен moviepy, но не могу найти готовых примеров, чтобы прям вот так же со спецэффектами выводилось. Типа слова сначала появляются маленькие, потом большие и зеленые, потом становятся как все остальные.
Мож на гитхабе есть уже че готовое, не знаете?
Аноним 23/10/23 Пнд 23:09:33 #219 №2891595 
М-м. В классе есть функция, я хочу передавать её как аргумент по-умолчанию в другую функцию в этом же классе, а питон ругается на меня. Как сделать. Примерный код:
class Huy:
....def f1(self):
........print('f1')
....def f2(self, arg=self.f1):
........arg()
if __name__ == '__main__':
....huy = Huy()
....huy.f2()

> NameError: name 'self' is not defined
В других вариантах ловил другие ошибки. Как это сделать правильно?
Аноним 23/10/23 Пнд 23:13:10 #220 №2891598 
>>2891065
>когда мне нужно запустить одновременно много разных проектов
Когда тебе нужно много проектов, ты их запускаешь в кубере, а не ебёшься с этим всем.
Аноним 24/10/23 Втр 00:41:46 #221 №2891695 
>>2891595
пиздец. чо за хуйню ты делаешь.
Аноним 24/10/23 Втр 00:47:14 #222 №2891698 
>>2891595
Трымай https://www.online-python.com/iUcp4wRAlL
Аноним 24/10/23 Втр 01:21:11 #223 №2891726 
>>2891698
Неожиданно, спасибо. Пробовал похожее, но не понял, как побороть
> missing 1 required positional argument: 'self'
но когда увидел код - стало очевидно, почему именно так.
>>2891695
В данном случае - функцию для консолидации данных, ей, иногда (в зависимости от места вызова и аргументов), нужны разные чекеры, которые она применяет для анализа входных данных разными способами, при этом алгоритм получения данных одинаковый, так что я вместо того чтобы писать 100500 одинаковых функций с разными проверками написал одну, которая умеет в разные чекеры (включая дефолтный). Очень приятный для поддержки способ, но с классами я как-то споткнулся.
Аноним 24/10/23 Втр 11:10:34 #224 №2892007 
>>2890959
Ладно, сам разобрался. Вот я долбоеб, все очевидно же было.
Аноним 24/10/23 Втр 13:10:33 #225 №2892208 
>>2891598
>запускаешь в кубере, а не ебёшься с этим всем
ты чё там пукнул? я тебе щас ебучку-то начищу
Аноним 24/10/23 Втр 14:27:03 #226 №2892264 
сап, тыкаю палкой в fastapi и появилось желание сделать анонимного пользователя аля как на 2ch. Подскажите, как это провернуть
Аноним 24/10/23 Втр 14:43:32 #227 №2892283 
image.png
>>2892264
>сделать анонимного пользователя
Пик
>как на 2ch
Интернет полон примерами гостевых книг на любом фреймворке. Первая строка в Яндексе по запросу "python fastapi +guestbook example":
https://github.com/okteto/guestbook-api
Впрочем, конкретно у фастапи есть нюанс: он собственно хорош для апи, а фронт тебе придётся делать отдельно, например, на кьюте, ткинтере, фласке или джанге.
Аноним 24/10/23 Втр 14:45:56 #228 №2892290 
>>2892283
да я без фронта чисто апишку учусь делать.
Про гостевые книги спс, до этого даже не слышал об этом термине
Аноним 24/10/23 Втр 16:45:22 #229 №2892465 
>>2892290
> до этого даже не слышал об этом термине
Вау. Новое поколение в интернетах. Прикольно. А ведь раньше, когда эти ваши соцсети были в зачаточном состоянии на каждом сайте, чему бы он ни был посвящён, была гостевуха, где можно было высказаться о предмете, почитать чужое мнение и иногда (в зависимости от оживлённости) даже пообщаться, безо всякой регистрации. Золотое было времечко, я вам скажу. Людей в интернетах было меньше, поэтому общение было камернее и ламповее, а разделение на сайты гарантировало общность интересов в рамках конкретного интернет-ресурса.
Аноним 24/10/23 Втр 16:46:38 #230 №2892468 
>>2892465 >>2892290
И да, в плане реализации гостевухи от АИБ почти неотличимы.
Аноним 24/10/23 Втр 17:20:44 #231 №2892516 
>>2892468
а как хранится инфа о постах, если юзер "анонимный"?
Аноним 24/10/23 Втр 17:50:25 #232 №2892573 
>>2892516
Точно так же, как на форумах просто вместо ссылки на запись пользователя - хранится логин плейнтекстом.
Например, как тут:
class Entry(Model):
....name: str
....entry: str
....date: Optional[datetime.date] = datetime.date
Аноним 24/10/23 Втр 17:51:05 #233 №2892576 
>>2892573
Ссылку проебал:
https://github.com/okteto/guestbook-api/blob/main/app/model.py
Аноним 24/10/23 Втр 18:28:14 #234 №2892637 
image.png
Чому pylint думает, что succ это константа, когда это явная переменная?
Аноним 24/10/23 Втр 18:34:30 #235 №2892640 
>>2892637
Бо ты вызначаеш яе на ўзроўні модуля. Мусе быць у клясы.
Аноним 24/10/23 Втр 18:37:57 #236 №2892641 
>>2892640
А на человеческом языке?
Аноним 24/10/23 Втр 18:40:30 #237 №2892643 
>>2892641
А балалайкай па срацы?
Аноним 24/10/23 Втр 19:05:53 #238 №2892656 
>>2892573
премного благодарен, сэр
Аноним 24/10/23 Втр 19:18:10 #239 №2892671 
>>2892641
Это старый гонорейный пидор с пролапсом, охотящийся за грязными сраками молодых упругих питонистов ИТТ не первый год. Будь осторожен.
Аноним 24/10/23 Втр 23:50:38 #240 №2893183 
>>2892640
>Бо ты вызначаеш яе на ўзроўні модуля.
Дебс, как ты думаешь, откуда у него один уровень индентации на скрине взялся?

>Мусе быць у клясы.
шарпогоспода/джавагосподин, спок
Аноним 25/10/23 Срд 12:56:16 #241 №2893727 
>>2893183
>откуда у него один уровень индентации на скрине взялся?
Мб там на уровне модуля цикл или условие
Аноним 25/10/23 Срд 14:08:15 #242 №2893855 
>>2853616 (OP)
The conflict is caused by:
torchvision 0.15.1 depends on numpy
accelerate 0.20.3 depends on numpy>=1.17
transformers 4.28.1 depends on numpy>=1.17
diffusers 0.17.1 depends on numpy
silero-api-server 0.2.9 depends on numpy
chromadb 0.4.10 depends on numpy>=1.22.5; python_version >= "3.8"
sentence-transformers 2.2.2 depends on numpy
openai-whisper 20230314 depends on numpy
tts 0.15.6 depends on numpy==1.22.0; python_version <= "3.10"

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict
Что делать-то?
Аноним 25/10/23 Срд 14:33:38 #243 №2893895 
>>2893855
Я бачу несумяшчальнасць тут
>chromadb 0.4.10 depends on numpy>=1.22.5
>tts 0.15.6 depends on numpy==1.22.0

Паспрабуй новую версію tts
pip install TTS==0.16.6
калі не дапаможа, то старэйшыя версіі chromadb, каб працавала з numpy==1.22.0.
Аноним 25/10/23 Срд 14:54:21 #244 №2893955 
https://discuss.python.org/t/pep-703-making-the-global-interpreter-lock-optional-in-cpython-acceptance/37075

прогрев пошел
Аноним 25/10/23 Срд 15:10:11 #245 №2893991 
>>2893895
Спасбо. Я короче решил вообще TTS не ставить, мне только модуль chromadb нужен был.
Аноним 25/10/23 Срд 15:57:45 #246 №2894092 
image.png
>>2890813
>как его запустить дбез ебания в сосноль с активацией среды и только последующим запуском нужного файла?
просто указываешь полный путь к интерпретатору внутри venv
например
/opt/virtualenvs/black_jack_venv/bin/python entrypoint.py
Аноним 25/10/23 Срд 15:59:48 #247 №2894095 
>>2890813
второй вариант, это вручную присвоить несколько переменных окружения, на память не помню какие, для себя использую только первый >>2894092 , и по-моему все им пользуются, когда без активации среды
Аноним 25/10/23 Срд 18:33:13 #248 №2894344 
>>2893183
>Дебс, как ты думаешь, откуда у него один уровень индентации на скрине взялся?
>>2893727
>Мб там на уровне модуля цикл или условие
Йеп. Там штаное:
> if __name__ == "__main__":
Если ты об этом.
В общем, неинтересно разбираться, вставил на строку:
> # pylint: disable=invalid-name
Я знаю, что это переменная, а то, что линтер не понимает, что она изменяет значения не значит, что нужно править нейминг.
Аноним 26/10/23 Чтв 09:35:01 #249 №2895059 
Посоны, вы как пишете код, так:
list_of_anons = []
Или так:
ListOfAnons = []
?

Я смотрю, принято писать как в первом варианте, но мне кажется второй как-то более строгий чтоль и красивый. Да и раньше я писал на языке, где так принято, никак переучиться не могу, да и хуй знает стоит ли.
Аноним 26/10/23 Чтв 10:32:36 #250 №2895102 
>>2895059
>но мне кажется второй как-то более строгий чтоль и красивый
Деформация от первого языка, пройдет потом
Аноним 26/10/23 Чтв 15:04:51 #251 №2895425 
Можно ли использовать asyncio.gather внутри задач другого asyncio.gather? Точнее, не создаст ли это боттлнеков дополнительных? Нужно сделать ~15 тысяч запросов, и по каждому ответу сделать еще 0-2 запроса, соблюдая структуру данных — не получится это все выпрямить в ~30 тысяч запросов на одном уровне.
Аноним 26/10/23 Чтв 16:44:08 #252 №2895535 
>>2895059
>Посоны, вы как пишете код,
В кодописании есть такая вещи как code style guide. Он регулирует как выглядит код, это важно, чтобы код всего проекта был единообразен, вне зависимости от того, кто является автором каждого конкретного куска,это упрощает код-ревью и тому подобные вещи.
Обычно это внутренняя тема, но для Питона есть специальный общий документ, называется pep8. И он определяет, что:
> Имена функций должны состоять из маленьких букв, а слова разделяться символами подчеркивания — это необходимо, чтобы увеличить читабельность.
> Стиль mixedCase допускается в тех местах, где уже преобладает такой стиль, для сохранения обратной совместимости.
> Имена глобальных переменных
> Будем надеяться, что глобальные переменные используются только внутри одного модуля. Руководствуйтесь теми же соглашениями, что и для имен функций.
> Имена методов и переменных экземпляров классов
> Используйте тот же стиль, что и для имен функций: имена должны состоять из маленьких букв, а слова разделяться символами подчеркивания.

https://pythonworld.ru/osnovy/pep-8-rukovodstvo-po-napisaniyu-koda-na-python.html

Наличие такого документа и следование ему продиктовано дзеном, идеологией питона в целом. В частности этим заповедям:
> Readability counts.
> Special cases aren't special enough to break the rules.
> There should be one-- and preferably only one --obvious way to do it.

>>2895425
Это читал?
https://stackoverflow.com/questions/69736380/using-nested-asyncio-gather-inside-another-asyncio-gather
Аноним 26/10/23 Чтв 17:35:16 #253 №2895605 
Аноны, надо проверять, есть ли в конкретной директории Винды на ntfs диске некоторые файлы с определенными именами.
Как лучше всего это делать в питоне?
1) Индивидуально проверять каждый путь на существование в os по мере необходимости?
2) Один раз взять listdir и уже с ним дальше работать?
Кто в подкапоте os знает? Второй вариант это ОДИН запрос к файловой системе через апи или там под капотом к каждому файлу запросы выполняются?
Аноним 26/10/23 Чтв 20:06:54 #254 №2895770 
>>2895059
Стандартами питона принят стиль с подчёркиваниями. Спорное решение, мне в целом тоже кажется, что camelCase разумнее и стройнее, и современнее как-то.

Привыкнуть к любому можно. Иногда даже внутри питона используется camelCase, например в модуле logging и unittest. Но при этом в большинстве случаев всё-таки подчёркивания.

А дальше возникает ситуация смешения стилей. Скажем ты использует что-то из библиотеке, в том числе базовые классы, откоторых ты наследуешься, где методы используют подчёркивания. А сам ты делаешь camelCase. Как всё это совмещать?

Ну и ещё на проектах, где ты будешь работать, уже скорее всего какие-то практики сложены и скорее всего они по пеп-рекомендациям.
Аноним 26/10/23 Чтв 22:07:12 #255 №2895894 
>>2895770
>мне в целом тоже кажется, что camelCase разумнее и стройнее, и современнее как-то.
Можешь рассказать каким образом это разумнее и современнее чем подчеркивания?
Аноним 27/10/23 Птн 04:05:59 #256 №2896065 
>>2895605
Хутчэй за ўсіх працуе os.scandir().
Аноним 27/10/23 Птн 11:13:37 #257 №2896204 
Изучила С++ слишком примитивный, низкоуровневый, буду учить питон.
Аноним 27/10/23 Птн 12:27:56 #258 №2896255 
>>2895059
Мой стайл гайд это
some_variable
SOME_CONSTANT
someFunction
SomeClass
Делаю так везде, где это уместно, этого же принципа по возможности придерживаюсь в других языках.
Аноним 27/10/23 Птн 12:39:45 #259 №2896280 
>>2896204
>-чила
жирно, уходи отсюда
Аноним 27/10/23 Птн 12:49:44 #260 №2896294 
/ga
Аноним 27/10/23 Птн 13:18:55 #261 №2896354 
>>2853616 (OP)
Ох, парни, поел только что говна когда попытался добавить gunicorn к нашему проекту на uvicorn и fastapi

В общем, все знают что fastapi асинхронный и не поддерживает gunicorn по дефолту, вместо этого его запускают через асинхронный uvicorn. Но тем не менее во многих случаях на продакшене запускается gunicorn по своей привичной prefork-модели и ВНУТРИ него уже запускается uvicorn, в котором крутится fastapi-приложение - чтобы увеличить rps приложухи

Я все сконфигурировал, но начал хавать гавно как только увеличил число воркеров gunicorn больше 1. А все потому что на инициализации приложения fatstapi у нас выполняются некие скуль-команды - создание определенных триггеров и функций постгрес. Серит в логи: <class 'asyncpg.exceptions.InternalServerError'>: tuple concurrently updated

Ну бля, думается надо поставить какой-то лок на эту операцию, но ему пох, что asyncio.Lock что multiprocessing.Lock эффекта не дает. Может как-то подавить эту операцию в других инстансах гуникорна? Че делать-то? Как подобную проблему обычно решают?
Аноним 27/10/23 Птн 13:50:40 #262 №2896415 
Чего такого написать чтоб проект денежки делал?
Аноним 27/10/23 Птн 14:03:06 #263 №2896452 
>>2896415
Плагин для вордперсса, инди-игру, мобильную игру-дрочильню, какое-нибудь применение generative AI типа генератор фоток для СЗ...
Аноним 28/10/23 Суб 19:53:02 #264 №2898106 
Анонче, а какие живые и бесплатные ide остались где можно отладить старинный скрипт для python 2.7 ?

VSCode больше не хочет. Других я просто не знаю
Аноним 28/10/23 Суб 21:44:24 #265 №2898297 
>>2853616 (OP)
Привет питонистам! Как подучить Django за полдня? Для собеса. Есть может ссылочка у кого на свой любимый читшит-читбук какой-нибудь с основами и бестпрактисами?
Аноним 29/10/23 Вск 00:06:32 #266 №2898479 
Основательно взялся за изучение питона, прошёл курсы на степике (для начинающих и продвинутых от beegeeks, в процессе курс для профессионалов) и могу сказать что там задачки легко шли.... Но у меня уже руки чесались написать своё и я решил сейчас уже взяться.....
Кароче мне очень нужна прога которая парсит сайт rule34,xxx и скачивает с него медиафайлы. Сначала я написал рабочую прогу которая в текстовый файл закидывает ссылки на все нужные мне посты со всех страниц. Потом уже мне нужно было написать вторую прогу которая работает так: переходит по ссылке из текстового файла, и скачивает медиафайл со страницы (каждая ссылка ведёт на пост содержащий либо одну хентайную картинку либо одну анимацию аналогичного характера). И тут я застрял. По итогу программа тупо скачивает разные пнгшки боковых панелей сайта, эмблему-заголовок сайта, и ещё какую-то хуету вместо того чтобы скачать самое главное — картинку/видос, основной контент-то. Подскажите что можно написать чтобы нормально всё работало и скачивалось?
Я использовал bs4, requests, selenium. Может другие какие импорты нужны? Буду сильно благодарен за помощь, очень уж хочется выкачивать весь медок в автоматическом режиме
Аноним 29/10/23 Вск 00:14:37 #267 №2898489 
>>2898479
А, про обучение это я к тому что вроде бы полезные достаточно трудные задачки в курсах этих дают, и я справляюсь с ними, но для решения реальной проблемы, написание кода для собственных бытовых нужд умение решать околоматематические задачки на ЯП ну вообще никакого плюса не даёт
Аноним 29/10/23 Вск 02:11:24 #268 №2898597 
>>2896354
Очень просто - вынеси данную операцию за логику приложения.
Я перед стартом имеджа с приложением запускаю пре-старт-скрипт, который выполняет опеределенные действия и затем уже стартует приложение.
Аноним 29/10/23 Вск 02:41:34 #269 №2898616 
>>2855547
>У сеньеров/мидлов с опытом нет обоссаных пет-прожектов
Ты не прав. Как раз у ждунов зачастую нет пет-проектов.
Пет-проект != код списанный с примера или написанный по аналогии.
Пет-проект очень легко отличить от хуйни и тупого наполнения профиля "репозиториями", любой мидол\сеньер-помидор это легко сделает.
Я работаю бэкэндером, постоянно занимаюсь доп.проектами и поддерживаю 3 пет-проекта-либы(одна свежая, остальным лет 5). Перед собесом предлагаю выполнить небольшое тестовое, либо показать профиль с проектами.
Решать задачки с литкода, наверное, тоже прикольно и на дата-инженеров может и самое то. В моей области такое не прокатит.
Аноним 29/10/23 Вск 05:48:00 #270 №2898668 
А какая конкретно имплементация питона качается с python.org?
Если PyPy то почему в вики написано что самая распространённая это CPython?
Аноним 29/10/23 Вск 10:04:37 #271 №2898725 
>>2898668
>А какая конкретно имплементация питона качается с python.org?
CPython
>Если PyPy то почему в вики написано что самая распространённая это CPython?
Потому что так и есть
Аноним 29/10/23 Вск 10:07:41 #272 №2898727 
Бля, посоны, в шапке пиздят. Джанга вообще нахуй никому не нужна.
Аноним 29/10/23 Вск 10:12:36 #273 №2898729 
>>2898479
>Подскажите что можно написать чтобы нормально всё работало и скачивалось?
>Я использовал bs4, requests, selenium. Может другие какие импорты нужны?
Тут не в импортах дело, импорты сами по себе никак задачу не решают. У тебя в имплементации твоей хуитки ошибка какая-то. Судя по описанию ты неправильно задаёшь селектор для выбора интересующего тебя контента на странице

>>2898489
>для решения реальной проблемы, написание кода для собственных бытовых нужд
Просто делай больше петов
Аноним 29/10/23 Вск 10:22:24 #274 №2898734 
>>2898729
>петы
Хуйня. Кабаньи тестовые больше опыта приносят, т.к. тебе ставят рамки.
Аноним 29/10/23 Вск 10:27:46 #275 №2898739 
>>2898616
Алло, очнись уже нахуй. ChatGPT с минимальным рефакторингом сделает тебе репу за 2 часа. Грамотно только вопросы задавай. Ещё один блять. Твои карманные проекты никому не нужны. Похвастаться таким можешь только в среде задротиков. А белым людям кода хватает на работе.
Аноним 29/10/23 Вск 10:57:52 #276 №2898754 
>>2898734
>Кабаньи тестовые
само по себе спорное явление

вообще, знания-технологии отдельно, опыт работы и разработки отдельно. Одно другое не заменяет.

Какие-то технологии, сам язык программирования, отдельные библиотеки, базы данных, принципы работы сети-сайтов - надо осваивать отдельно, лучше по книгам, обстоятельно. Не на пет-проекте, а именно технологию. Только так что-то полноценно можно освоить.

А учиться писать рабочий код и реальные проекты нужно отдельно. Это просто разные скиллы, их отдельно покачивают.
Аноним 29/10/23 Вск 11:05:35 #277 №2898764 
image.png
>>2898739
Пет-проекты у многих есть, но при этом у меньшинства.

Пет-проект это не учебный проект, это что-то реально рабочее, что нужно или тебе самому, или другим. Чаще имеет форму участия в опенсорсе, где над одним проектом много людей работает.

У меня есть тоже свои пет-проекты, они реально работают, но не в открытом коде, показывать их я никому бы не стал.
Аноним 29/10/23 Вск 20:19:46 #278 №2899315 
>>2898739
Ты видел какое говно без логики GPT высирает, одного взгляда на это уродство хватит чтобы понять откуда оно взялось. GPT сейчас это эхокамера, которую можно расценивать только как помощь вкатуну в обучении, как продвинутую версию гугла для поиска по темам на стаковерфлоу и то, то что тебе там найдется надо очень внимательно проверять.
Аноним 29/10/23 Вск 20:41:45 #279 №2899341 
>>2899315
Про ЧатГПТ ты прав, но тот анон же другое имел в виду. Что твой пет-проект ничего не показывает, потому что он легко может быть не твоим.

Тут на доске одно время угорали с таких вкатутов, которые ссылки на свои репозитории оставляли, и у все одинаковый набор "петов", почти как клонированы. Потому что оканчивают курсы, на которых разбирают создание приложения, довольно ёмкого, вкатуны тупо по инструкции реализуют это.

Не то, чтобы они совсем не понимают, но не показатель совсем.

Собственно в древние времена появились рекомендации, что типа хрюши смотрят, если у тебя есть репа, то это очень круто. Наверное так оно и было. Но потом про это стали писать, до всех донесли, и все стали себе делать репы с каким-то мусором, созданным по инструкции. И после этого все эти репы потеряли смысл, лавочка закрылась.
Аноним 29/10/23 Вск 20:46:26 #280 №2899348 
>>2899341
Получается что "петы не нужны" это просто отмазка некомпетентных кадровиков, которые НЕ МОГУТ оценить уровень человека по примеру его работы, которую он выставил им проще по методичке типовые вопросы задать.
Аноним 29/10/23 Вск 21:20:06 #281 №2899384 
Анон, есть одна тян функция, принимающая необязательный callable=None.
Как лучше проверить что передали ей на вход именно some_func, а не вызов some_func() -> None ?
Аноним 29/10/23 Вск 21:24:43 #282 №2899385 
>>2899384
https://docs.python.org/3/library/functions.html#callable
Аноним 30/10/23 Пнд 05:01:28 #283 №2899647 
>>2898739
>ChatGPT с минимальным рефакторингом сделает тебе репу за 2 часа
Опять хуйню несешь.
Ты на столько джунский ждун, что не отличишь реальный проект с реальными комитами от говна созданного нейронкой?
Тогда, для тебя и правда лучше по бумажке проводить опрос кандидата. Главное ответы не забывай записывать, чтобы потом погуглить.
Аноним 30/10/23 Пнд 05:06:35 #284 №2899648 
>>2899647
+ еще не встречал хрюш, которые бы смотрели репы. За последние года 3 только на 2 собесах репы точно смотрели.
Аноним 30/10/23 Пнд 06:55:38 #285 №2899658 
>>2899348
Получается. Но у нас нет других кадровиков
Аноним 30/10/23 Пнд 11:25:23 #286 №2899803 
>>2899348
>которые НЕ МОГУТ оценить уровень человека по примеру его работы
В этом просто нет смысла, хотя бы потому, что реальные петы у меньшинства. В основном же или их нет в открытом виде, или там мусор.

Кроме того, оценить проект сложно, надо потратить много времени, сильно больше, чем полноценное собеседование.

Таким образом, оценка пет-проекта может быть разумной на поздней стадии, когда уже прошли первые этапы с вайтбордами и т.п., стадия "близко к офферу". Но не раньше.
Аноним 30/10/23 Пнд 16:22:39 #287 №2900260 
Подскажите, пожалуйста. Не знаю, правильный ли тред, но пусть будет здесь. Я запилил небольшой сайт на фласке, сделал докерфайл, где поднимается gunicorn (в будущем на докер-композ поменяю). Для правильного деплоя на VPS мне достаточно просто докер ран сделать или по-хорошему, надо еще что-то навернуть (nginx или еще что)? Сейчас я дебажусь на VPS и просто запускаю docker run и доступ к сайту есть. Но мне интересны best practices, в первую очередь
Аноним 30/10/23 Пнд 17:34:52 #288 №2900382 
Есть какой-то список программ или скриптов, которые должен уметь писать джун, мидл и т.д.? А есть тайминги за сколько должен уметь написать? Чтобы можно было оценить умение обучающегося по каким-то формальным признакам.
Аноним 30/10/23 Пнд 17:44:32 #289 №2900396 
>>2900382
Написать сортивровку долбоебом за 1488 секунд.
Аноним 30/10/23 Пнд 18:52:15 #290 №2900507 
>>2900382
Задачка на собес, литкодного типа
написать функцию, которая принимает на вход целое число N. Функция должна возвращать максимально возможную сумму чисел A и B таких, что A^4 + B^4 = N^4, или -1, если такой пары нет

В принципе несложная задача
Аноним 30/10/23 Пнд 18:53:16 #291 №2900509 
>>2900507
>Функция должна возвращать максимально возможную сумму чисел
в смысле целых положительных чисел, иначе не интересно
Аноним 30/10/23 Пнд 19:17:56 #292 №2900534 
>>2900507
Пчел, ты нас теоремой ферма не напугаешь. Мы жуки соевые-научпоперские все отсылочки знаем
Аноним 30/10/23 Пнд 21:23:14 #293 №2900733 
>>2900260
Для начала уже неплохо.
Как бы я предложил тебе улучшить:
1. Дебаж локально на ПК
2. Делай пуш в репозиторий
3. После пуша в репозиторий пускай запускается сборщик имеджа из того что ты отправил в репозиторий. У гитхаба\гитлаба\битбакета для это все есть.
4. После билда имеджа клади его или в докер registry или в локальный registry сервиса, если оно там есть(у гитхаба есть точно).
5. На сервере делай докер пулл -имя имеджа-.
6. Запускай его на сервере. Не забудь удалять старый, ибо место закончится быстро.
В принципе этого уже достаточно, можешь ходить по ИП на свое приложение и работать с ним.

Если хочется большего:
1. Купи доменное имя
2. Настрой на это доменное имя Cloudflare. Под настройкой имею ввиду как минимум смену nameserver, привязку ИП к домену(еще поддомен можешь настроить), генерацию сертификата там же.
3. Сделай отдельный имедж с Нжинск. Если нет доп. хотелок - бери уже готовый, иначе придется билдить со своими хотелками, но это не сложно. Добавь туда файл с настройками нжинкса, добавь туда отдельные настройки для домена и поддомена. Домен, к примеру, может вести на главную страницу сайта, а поддомен на АПИ или админку.
4. Оберни эти два имеджа в докеркомпоуз.
5. Разберись с .env файлом и переменными, их секьюрностью.
6. Разберись с тем, как будешь в нжинкс передавать сертификаты полученные в Cloudflare.
7. Настрой CI чуть жирнее - добавь проверку кода и тесты перед билдом имеджей.
8. Все так же складывай имедже в registry.
9. Для автоматизации процесса выкатки обновлений на сервер можешь попробовать - Watchtower, но это не обязательно, можно и руками.
10. Для понимания работы вольюмов в композе - сделай связь между нжинксом и гуникорном через сокет-файл.
11. Можешь сделать несколько веток в репозитории и в зависимости от ветки и действия с ней запускать разные CI скрипты - поможет разобраться в синтаксисе и логике работы этого всего.

Best practices зависят и от бюджета\времени\опыта. То что я описал выше вполне хватит для небольших проектов без бюджета на ДевОпса и десятка серверов. В проектах серьезнее уже требуются всякие сервисы от Амазона\Гугла и прочих, Kubernetes and etc.
Аноним 30/10/23 Пнд 21:46:23 #294 №2900774 
>>2899803
>реальные петы у меньшинства
Это ты ты как понял? Хуйня с курсов и спижженое с других гитов может быть только у вчерашнего баристы, который ещё не знает, что он обосрется после первого же вопроса. Я же не утверждаю что интерьвю и тестовые нужно отменить и только на основании петов на галеру брать.
Аноним 30/10/23 Пнд 22:10:09 #295 №2900819 
>>2900733
Спасибо, здорово! Я правильно понял, что на первое время просто gunicorn'а достаточно? Я какого-то хайлоада не ожидаю на сайт.

Можешь немного вообще прояснить, если знаком: я прочитал, что нджинкс имеет смысл подключать к gunicorn'у для
1) балансировки (перенаправлению запросов на разные инстансы приложения?)
2) когда хочется уметь отдавать еще и статические страницы (как я понимаю, во фласке даже main page на которой кроме нескольких ссылок может ничего и нет динамически рендерится каждый раз?

> 5. На сервере делай докер пулл -имя имеджа-.
Это я ручками должен делать каждый раз ведь? Это, наверное, как раз из того, когда на сайте появляется табличка "Сайт будет недоступен из-за профилактических работ с такого-то по такое-то"
Выглядит, что да. Иначе бы у пользователей просто сайт рандомно иногда отваливался из-за скрытого обновления. Щас подумал, что это можно делать и незаметно для пользователя, если есть несколько инстансов работающих, но это пока явно не мой случай.
Дочитал вторую часть сообщения, понял, что да

Меня еще интересовало, можно ли чего-то добавить на первом этапе, чтобы было посекьюрнее (какая-нибудь защита от ддоса и тд)

> 2. Настрой на это доменное имя Cloudflare
Можешь в двух словах объяснить, что он дает? Увидел, что как раз защита от ддоса а еще?

> 9. Для автоматизации процесса выкатки обновлений на сервер можешь попробовать - Watchtower, но это не обязательно, можно и руками.
Как раз показалось, что он ведет к проблемам, что я в начале поста описал, но, мб, там есть настройки на это

Сорри, если некоторые вопросы глупые, я никогда до этого с вебом дела не имел
Аноним 30/10/23 Пнд 23:58:14 #296 №2900963 
Сейчас решаю яндекс контест - задачи из свежих тренировок по алгоритмам.
Требуется посчитать длину дуги окружности, однако я почти уверен, что нельзя использовать никакие библиотеки, включая math.
Сейчас я считаю косинус угла между двумя векторами, но не могу найти алгоритм арккосинуса, чтобы подставить.
Есть ли другие варианты?
Аноним 31/10/23 Втр 00:11:52 #297 №2900991 
>>2900963
>Требуется посчитать длину дуги окружности, однако я почти уверен, что нельзя использовать никакие библиотеки, включая math.
Обычно math везде можно.
> Сейчас я считаю косинус угла между двумя векторами, но не могу найти алгоритм арккосинуса, чтобы подставить.
Какая задача? Косинус же можно просто через скалярное произведение найти
Аноним 31/10/23 Втр 01:22:31 #298 №2901040 
челы, чем нагрузочной тестирование своих апишек обычно делаете?
Аноним 31/10/23 Втр 06:03:47 #299 №2901094 
>>2901040
https://github.com/locustio/locust
Яндекс танк, если живой.
Аноним 31/10/23 Втр 06:16:13 #300 №2901097 
>>2900819
> что на первое время просто gunicorn'а достаточно
Его в принципе достаточно. Если есть хайлоад - скейлинг горизонтальный\вертикальный\диагональный.
> что нджинкс имеет смысл
То что ты перечислил - работа для обратного прокси, которым и является нжинкс. Гуникорн или всги тут роли не играет, ибо они прослойка между внешним миром и фласком. А нжинкс уже защищает приложение от агрессивного внешнего мира, выступая "внешним" миром для гуникорна.
> если есть несколько инстансов работающих
Да. но тогда у тебя будут свои проблемы. Если есть деньги то даунтайм сервера можно потушить при помощи платной функции Cloudflare.
> защита от ддоса
Cloudflare

> что он дает
Защита с правилами самописными, кеширование, CDN, стриминг видео, обработка фото, сертификаты, аналитика базовая, работа с геораспределенностью и еще что-нибудь что я забыл, но многое из этого за отдельные $$$.
> что он ведет к проблемам
Не бери на себя сразу слишком много. Вопрос по даунтайму при обновлении это непростая вещь, которая имеет несколько путей решений при твоей ситуации. Но тебе хватит и тех настроек что есть в Watchtower, т.к. там есть и роллинг апдейт и ожидание нормального завершения работы приложения перед обновлением. Если все у тебя норм, то старт контейнера с бэком занимает пару секунд - этого юзеры не заметят.

Вопросы у тебя нормальные, если сможешь все пункты осилить, то у тебя будет очень хороший опыт для работы или своих проектов.
Аноним 31/10/23 Втр 11:37:48 #301 №2901326 
>>2901097
Ок, спасибо большое за развернутые ответы!
Аноним 31/10/23 Втр 14:02:44 #302 №2901516 
>>2900991
Косинус я как раз нашел. Я имел в виду подставить в задачу самописную функцию арккосинуса, чтобы получить угол из косинуса, не используя math
Аноним 31/10/23 Втр 15:24:50 #303 №2901600 
>>2901516
А тупо через ряды Тейлора нельзя?
Аноним 01/11/23 Срд 15:13:41 #304 №2902755 
>>2900507
жесть ты кал высрал.
Аноним 01/11/23 Срд 15:15:08 #305 №2902757 
>>2900819
а чо фласк и gunicorn?
го uvicorn и асинхронщину.
Аноним 01/11/23 Срд 15:17:50 #306 №2902761 
>>2902757
>>2900819
даже можно забить на фласк и нахерачить свой интерфейс на типе фласка но на uvicorn"е
Аноним 01/11/23 Срд 17:54:21 #307 №2902950 
Аноны, как импортировать модули по точному абсолютному пути до файла?
Обычно чтобы импортировать свой файл в скрипт как модуль добавляем путь в sys.path и делаем импорт.
А если у меня файлы называются "\dir1\a.py, \dir2\a.py,, \dir1\b.py," или как-то иначе, и расположены в разных каталогах, такие имена могут вызвать коллизию с другими именами, но я не хочу их переименовывать. Как мне прописать путь точно до этого файла?

my_module = __import__(r"D:\dir\a.py")
Мне надо как то вот так, но так разумеется не работает.
Аноним 01/11/23 Срд 18:17:34 #308 №2902964 
post.jpg
Поясните ньюфане, чё не так?
Импортированный модуль же установлен, чё не так?
Аноним 01/11/23 Срд 18:29:58 #309 №2902971 
изображение.png
>>2902964
Проверь корректность переноса строки, там не должно быть лишних управляющих символов
Аноним 01/11/23 Срд 18:58:00 #310 №2903005 
>>2902971
Я без DE, это скрипт в контейнере
Аноним 02/11/23 Чтв 01:29:10 #311 №2903369 
>>2902950
Трэба ўжываць іншыя функцыі з бібліятэкі importlib.util

https://www.online-python.com/ZpIJc5dqug
Аноним 02/11/23 Чтв 01:45:58 #312 №2903374 
>>2902950
Дарэчы, яшчэ такое ё
foo = importlib.machinery.SourceFileLoader(modul,fajł).load_module()
Аноним 02/11/23 Чтв 04:16:49 #313 №2903393 
Ну вот и все, питон уперся в производительность не на матане, 400 жирных сообщений в секунду из реббита + сериализация/десериализация через orjson с последующией отправкой на локалхост занимает уже около 3-4 милисекунд. Нагрузка на проц 100%. И ведь это говно даже не распаралелить нормально, так как между ядрами оно гоняется примерно столько же сколько выполняется.
Аноним 02/11/23 Чтв 08:23:35 #314 №2903475 
>>2903393
Молодец, сделал хайлоад на коленке.
Аноним 02/11/23 Чтв 10:36:09 #315 №2903607 
Есть корутины, внутри которой есть эвейты других корутин. Как посчитать процессорное время каждой корутины, без учёта свича контекста и работы других задач в эвент лупе?
Аноним 02/11/23 Чтв 14:51:23 #316 №2903807 
Сколько просить с двумя годами опыта? Стек: FastAPI, Django, sqlalchemy, mongo, rabbitmq. Что изучить чтобы повысить рейт?
Аноним 02/11/23 Чтв 15:48:19 #317 №2903875 
>>2901097
У меня возник еще один вопрос по ходу разработки. Пока у меня был один сервис без бд, все было очень удобно. Сделал коммит в репу -> собрался имейдж -> на ремоут сервере сделал докер пулл + докер ран. Когда в этой схеме появляется докер композ, то я должен руками скопировать этот докер композ на ремоут сервер (возможно еще указать путь до имейджа, но допустим там просто :latest). Собственно, мне не очень нравится этап с копированием докер-композ файла на ремоут.
Понимаю, что скорее всего, это разумно не обойти, но мне эта необходимость тащить какой-то, по сути, конфиг на ремоут сервер не дает покоя.
Аноним 02/11/23 Чтв 16:49:30 #318 №2903981 
>>2903807
Проси две миски риса в день и один огурчик (свежий).
Аноним 02/11/23 Чтв 18:00:00 #319 №2904140 
>>2903875
Для базы дадзеных не патрэбны Compose. Наогул ня трэба замяняць базу дадзеных на сэрвэры, бо яна захоўвае працоўныя дадзеныя. Змяняць структуру БД, дадаваць палі, можна праз прыладу накшталт Alembic - гэта як git, але для БД.
Аноним 03/11/23 Птн 01:51:59 #320 №2904605 
>>2903393
msgspec попробуй
Аноним 03/11/23 Птн 05:22:31 #321 №2904624 
>>2903875
> о я должен руками скопировать этот докер композ на ремоут сервер
У тебя есть гит. На сервер клонируешь репу с гитом и оттуда берешь компоуз. И путь до имеджа ты не указываешь, ты указываешь УРЛ к имедже который сбилдился и лежит в хранилище. :лэйтест - тег имеджа, не имя.
Успокойся насчет компоуза, все ок. Не будешь тягать конфиги по серверам только в кубернетосах, на то они и следующая ступень развития.
>>2904140
>Для базы дадзеных не патрэбны Compose
А якім чынам працавать з БД тады? Купляць асобную БД - занадта дорага, канфігураваць па-за межамі кампоуза - навошта? Гэта не прод ды не хайлоад.
Аноним 03/11/23 Птн 07:12:49 #322 №2904638 
Пытаюсь решить следующую задачу:

>Необходимо написать программу, которая будет считывать последовательности измерений. В каждой последовательности нужно выбрать максимальное значение, а в итоге вывести отсортированный по убыванию список этих макс значений, разделенных символом “;”. Во входных данных в первой строке будет задано целое положительное число – сколько записей нужно обработать, причем самих записей может быть больше чем это число, это нужно учесть. Значения в рамках одной записи разделены пробелом, минимальное число значений в записи – 1. Записи разделены переводом строки.

>Пример 1
>Входные данные:
>3
>1 2 3
>2
>4 5 6 7

>Выходные данные:
>7;3;2

>Пример 2
>Входные данные:
>2
>1 2 3
>2
>4 5 6 7

>Выходные данные:
>3;2

Мой код: https://pastebin.com/nn7mzJXA

Однако получаю ошибку при проверке решения:
>Код ошибки: RE «Runtime Error» — программа завершилась с ошибкой исполнения
>"error": "Traceback (most recent call last):\n File \"/opt/client/solution/main.py\", line 5, in <module>\n while len(c := input().split()) >= 1:\nEOFError: EOF when reading a line\n",

Алсо, в PyCharm всё работает прекрасно, пробовал запустить цикл с for, но он не подходит под условие задачи (т.е. с клавиатуры можно будет ввести только n строк), там ошибка WA (wrong answer) из-за других output.

Как фиксить? Уже час сижу с этой хуйнёй.
Аноним 03/11/23 Птн 08:57:09 #323 №2904666 
>>2904605
Там паритет по производительности
Аноним 03/11/23 Птн 13:14:09 #324 №2904962 
>>2904624
> У тебя есть гит. На сервер клонируешь репу с гитом и оттуда берешь компоуз
ну это и есть "руками". Просто в таких сценариях чувствуется какая-то потенциальная "неконсистентность",
> Не будешь тягать конфиги по серверам только в кубернетосах
да, я нагуглил уже, что в кубах все можно сделать, но они оверкилл для моей задачи. Хотя ради интереса можно будет потом попробовать развернуть.

> И путь до имеджа ты не указываешь
я имел в виду путь = урл + тег. Правда почитал, что latest не рекомендуется указывать.
Аноним 03/11/23 Птн 17:46:16 #325 №2905294 
изображение.png
изображение.png
изображение.png
>>2853616 (OP)
Есть одна задача яндекса...
Я успешно ее решил и получил отклик - слишком медленно.
Проблема в том, что тут даже не дают проблемный пример - типа сам ищи и тестируй все.
Я порвал жопу и нашел решение со сложностью O(n), безо всяких циклов в цикле, однако времени все еще тратится сликшком много.
Не представляю, как вообще можно было бы еще сильнее все сократить.
Какой алгоритм тут ожидался от меня? Или на чем можно срезать время?
Алсо если кто тоже участвует в тренировках по алгоритмам, пишите.
input()
ratings = input().split()
def zadacha(ratings):
s = 0
aCount = {}
for r in ratings:
a = int(r)
s += a
if(a in aCount):
aCount[a] += 1
else:
aCount[a] = 1
l = len(ratings)

bPrev = s-int(ratings[0])l
akPrev = int(ratings[0])
finB = (' '+str(bPrev))
aCount[akPrev]
finB = finB[1:]
n = aCount[akPrev]
for k, cuantity in aCount.items():
if(k == akPrev):
continue
# print(k, cuantity)
bNext = bPrev + (k-akPrev)(2n - l)
finB += (' '+str(bNext))*cuantity
bPrev = bNext
akPrev = k
n += aCount[akPrev]
return finB

print(zadacha(ratings))
Аноним 03/11/23 Птн 18:36:26 #326 №2905404 
>>2904624
У мяне мая пралада і БД для яго двума асобнымі кантэйнерамі. Калі збіраецца вобраз кантэйнера з прыладай, выконваецца адзіе з наступных загадаў, у залежнасці ад абставін:

docker build --build-arg CONFIG_FILE=settings-developer.py
docker build --build-arg CONFIG_FILE=settings-staging.py
docker build --build-arg CONFIG_FILE=settings-production.py


Адпаведна, у файле з наладкамі settings-developer.py прапісаны
DB_URL = 'postgresql://localhost:5432'
такім чынам ужываецца БД што стаіць на маем кампутары. Для staging - адрас docker кантэйнера што стаіць на тэставым сэрвэры, а для production - адрас асобнага сэрвэра.

>канфігураваць па-за межамі кампоуза - навошта?
Вось і я магу спытацца навошта канфігураваць нешта па-за межамі Dockerfile. Кампоўз непатрэбны.
Аноним 03/11/23 Птн 18:40:56 #327 №2905415 
>>2905294
>Я успешно ее решил и получил отклик - слишком медленно.
Не делай так больше.
Аноним 03/11/23 Птн 18:43:08 #328 №2905422 
>>2905415
Что? Ты о чем?
Аноним 03/11/23 Птн 19:01:39 #329 №2905470 
>>2905294
> Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
> https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
> https://dumpz.org/ - можно постить листинги, не требует регистрации
> https://pastebin.com/ - для листингов, регистрация не обязательна
> https://goonlinetools.com/snapshot/share/ - для листингов, без регистрации, но с капчей
Аноним 03/11/23 Птн 19:10:11 #330 №2905485 
>>2899341
Спасибо, я этот анон >>2898739 Выразил более грамотно мои мысли.

Эта херабора была актуальна лет 7 назад. HR уж точно в репу не полезут. Я в месяц хожу на 2 собеса примерно. За 1.5 часа мне хватает 20 вопросов и 2 задачи чтобы оценить кандидата. Ну прикладывают они свои репы, дальше то что? И кстати, там в репах часто вообще никнеймы, может это вообще репозиторий левого чела. У меня кореш - ведроид разработчик кидал вечно мне свою репу. Сам же признавался что код понапиздил. Ради чего это все?

>>2899647
А мне это нахуй не нужно делать заниматься тем чтобы отличать код из какого то репозитория. Чтобы что?


И да, у меня есть репозиторий свой, ещё со времён студенчества туда выгружаю свои прожекты. Но показывать это работодателю - это ебаный бред.
Аноним 03/11/23 Птн 19:16:32 #331 №2905493 
>>2904638
Немагчыма паўтарыць тваю памылку. Удакладні абставіны запуска. Магчыма, несумяшчальнасць MacOS, бо тамака напрыканцы радка CR замест LF. Магчыма, карыстаеш python<3.8, дзе прысвайванне ва ўмовах не падтрымліваецца.
Аноним 03/11/23 Птн 20:58:01 #332 №2905594 
>>2905470
Чел, кроме пастебина две первые не открываются, а последняя тормозит дико.

http://linkode.org/
https://dpaste.org/

Вот, с подстветкой синтаксиса.
Аноним 03/11/23 Птн 20:59:55 #333 №2905599 
>>2905594
>>2905470
И ещё рекомендую для красоты оформить картинкой в Карбоне https://carbon.now.sh/ и вставить её в пост.

И в шапку бы это занести. Так чел, задающий вопросы, показывает, что он уважает тех, кому придётся ему отвечать.
Аноним 03/11/23 Птн 21:18:46 #334 №2905621 
image.png
image.png
>>2904962
>ну это и есть "руками"
Да, но ты это делаешь 1 раз при настройке сервера. Ну и каждый раз если поменяешь настройки компоуза, да.
Попробуй разные варианты и выбери наиболее комфортный для тебя на длинной дистанции. Я в списках выше описывал свой опыт развертывания систем и их опыт поддержки\обновления\автоматизации.
> но они оверкилл для моей задачи
Они оверкил для всего что имеет меньше, условно говоря, 10 серверов с сервисами.
Знания докера и компоуза тебе, как бэкэндеру, будут очень полезные. Куберы бэкэндеру нужны гораздо реже, для них нанимают ДевОпса, но и куберы лучше потрогать - опыт лишним не бывает.

>>2905404
Докер ды кампоуз выкарыстоўваюцца у розных мэтах. Гэта як розные узроўні развіцця праекта і яго зручнасці пры падтрымцы.
Безумоўна есць магчымась напісаць выдатную докер-каманду якая будзе на 100 адсоткаў такая як у кампоузе, але гэта будзе ебейшая страка у кансолі\баш-скрыпце з якой будзе не вельмі зручна працаваць у будучыні.
У табе у прыкладзе БД ужо працуе, добра, але калі ў табе не 2 кантейнера, а больш? Як прыклад - першы скрыншот. Мабыць не самы лепшы прыклад, але час ад часу патрэбна кантраляваць парадак старта кантейнераў, мець шмат кантейнераў якія стартуют разам і павінны разам і разгортвацца. Усе гэтя на шмат лягчэй зрабіць у канфіге кампоуза. Ды і людзям якія не знаемы с ім прасцей працаваць с .ямл файлам, чым шукаць адпаведныя каманды для кансолі. На другім скрыншоце .ямл файл, з тым жа праектам, які я рабіў для фронтэнд-распрацоўшчыка, каб працаваць у афлайне.
Аноним 03/11/23 Птн 21:58:15 #335 №2905663 
>>2905621
когда дурачок забыл о гуглтранслейте
Аноним 03/11/23 Птн 22:47:20 #336 №2905726 
>>2905621
> как бэкэндеру
я дата саентист, просто интересуюсь

> Куберы бэкэндеру нужны гораздо реже, для них нанимают ДевОпса, но и куберы лучше потрогать - опыт лишним не бывает
Докер и композ довольно понятные даже стороннему человеку, а вот у кубера своя какая-то экосистема, в которую надо конкретно вникать.
Аноним 03/11/23 Птн 23:28:50 #337 №2905762 
Поцоны подскажите как реализовать паузу/resume скрипта по хоткею, чтобы в любой ситуации работало. То есть чтобы полностью фризило процесс. Что-то вроде ahk'шного "Pause". Погуглил - ниче не нашел.
Аноним 03/11/23 Птн 23:45:34 #338 №2905774 
>>2905762
Отдельным потоком запускать СЛУШАТЕЛЯ нажатий на клаву.
Аноним 04/11/23 Суб 00:30:21 #339 №2905786 
Может ли ошибка no module named "mainapp" в джанго вылазить из-за виртуального окружения, и если да, то как это фиксить? Когда создавал проект, тупо указал папку, в которой виртуальное окружение будет, в терминале (venv) есть.
Аноним 04/11/23 Суб 00:49:37 #340 №2905790 
>>2905762
Сделал через multiprocessing и psutil. Если есть решение получше пишите.
https://pastebin.com/BhxBFPj2
Аноним 04/11/23 Суб 02:11:39 #341 №2905817 
>>2905294
https://goonlinetools.com/snapshot/code/#4aig7b6vpxwnia9vigr4zn
Хорошо, значит вот ссылка на мое решение. Вопрос:
Как можно ускорить эту прогу?
Аноним 04/11/23 Суб 04:10:59 #342 №2905832 
>>2905817
Я разобрался. Оказалось, задача решается на порядок быстрее и экономнее в python 3.11, чем в 3.9, что позволило мне преуспеть.
Захрена там вообще такой вариант компилятора, в котором задачу невозможно решить, я не пойму.
Аноним 04/11/23 Суб 09:58:16 #343 №2905883 
>>2905726
> я дата саентист
Зачем тебе докеры тогда?
> своя какая-то экосистема
По факту она своей структурой схожа с кмпоузом, но да, нужно вникнуть. Удачи, анон.

>>2905663
> пук
Аноним 04/11/23 Суб 18:32:27 #344 №2906452 
>>2905883
>Зачем тебе докеры тогда?
да докеры всем полезны. Как минимум, собрать какой-нибудь прототип, который запускался бы везде или выкатить демку с веб-мордой
> Удачи, анон
спасибо
Аноним 06/11/23 Пнд 10:55:00 #345 №2908631 
изображение.png
изображение.png
Состоятельно учусь программированию с целью стать аналитиком данных. Закончился первый месяц, полет нормальный.
Пишу код в vs code в юпитер блокнотах и интерактивном режиме. Когда я запускаю программу в интерактивном режиме, происходит задержка print() вывода. Сообщения появляются позже, сразу скопом. Помогите пожалуйста разобраться почему так происходит.
Пример программы которая работает норм в стандартном IDLE и командной строке, но в vs code происходит задержка:
Программа загадывает число, ты отгадываешь. После того как произвел первую попытку. Она должна сказать - загаданное число больше или меньше. Но вместо этого сразу предлагает снова попытаться угадать. После второго ввода выводит старый и новый вывод сразу
import random
print('Я загадал число от 1 до 20.')
print('Угадайте число!' '\n' 'Всего у вас 6 попыток')
a = random.randint(1, 20)
for i in range(6):
b = int(input())
if a > b:
print('Я загадал большее число')
continue
elif b < a:
print('Я загадал меньшее')
continue
else:
print('Вы угадали!')
break
if i == 5:
print('Вы исчерпали количество попыток')
print(f'Загаданным числом было {a}')
else:
print(f'Количество попыток: {i+1}')

Задал вопрос чату жпт: I write pyton code in vs code. When I run the program interactively, there is a delay before output. Messages do not appear until you enter a new value. Then several conclusions appear at once. How to solve this problem?
Ответ чата в пиках.
Аноним 06/11/23 Пнд 11:59:29 #346 №2908706 
>>2908631
Ну и чего тебе от треда нужно? Скорее всего ГПТ всё верно написал.
Аноним 06/11/23 Пнд 12:01:40 #347 №2908709 
>>2908631
Стену текста высрал, а понятнее не стало. Хуёвый из тебя аналитик данных получится, раз аналитику не можешь понятный языком расписать.
перекатчику Аноним 06/11/23 Пнд 14:42:56 #348 №2908971 
165.png
Новая версия шапки https://goonlinetools.com/snapshot/code/#aqb4ejoiuxir84vfonk7l

Призвана решить проблему долбоёбов постящих код. Выкинут раздел с кучей ссылок на говносайты. Добавлен правильный и заметный.
Аноним 06/11/23 Пнд 14:53:53 #349 №2909006 
>>2908971
Пример шапки
https://2ch.hk/test/res/191617.html#205494
Аноним 06/11/23 Пнд 21:18:26 #350 №2909829 
>>2908971

Вот ещё два замечания по шапке (шаринг кода, оформление кода): >>2905594 и >>2905599
Аноним 06/11/23 Пнд 22:16:49 #351 №2909883 
>>2909829
Cпасибо, красивенькие, но ни один из них не позволяет запустить код, как предложенный online-python.com
Аноним 06/11/23 Пнд 22:52:32 #352 №2909933 
>>2908631
чот пикчи не грузятся.
а чо ты это говно сгрузил нейромакаке то? для начала научись своей головой решать задачи.
Аноним 07/11/23 Втр 04:52:32 #353 №2910037 
>>2908971
https://online-python.com
Эта хуйня сломанная отступы не сохраняет. Если туда копипастнуть код, взять ссылку то тот кто перейдет по ней увидит гладкую простыню.
Аноним 07/11/23 Втр 10:18:58 #354 №2910243 
>>2909933
Это не та задача которую я считаю нужным решать сейчас.
Я вполне могу обходиться и без vs code, думал проблема частая и юзеры кода подскажут.
Аноним 07/11/23 Втр 11:30:16 #355 №2910300 
>>2910243
Попробуй имторнуть sys и после принта делать sys.stdout.flush()
Аноним 07/11/23 Втр 15:03:42 #356 №2910676 
>>2910037
не удаётся воспроизвести указанную проблему.
Аноним 07/11/23 Втр 15:16:08 #357 №2910703 
>>2910300
Спасибо попробую. Но я думаю это не выход, т.к. эта херня в каждом коде на vs code и только на нем.
Аноним 07/11/23 Втр 15:18:01 #358 №2910705 
>>2910243
>юзеры кода подскажут
Бариста, тебе же GPT ответил что надо сделать чтобы пофиксить. Что ты ещё от ЮЗЕРОВ КОДА хочешь услышать?
Аноним 08/11/23 Срд 00:12:59 #359 №2911512 
Аноны!
Есть idxs = ('0', '0.1', '0.2', '0.2.1', '0.2.2' ) - это уровни задач/работ
Есть works = ('нет', 'тянку танцевал', 'тянку ресторанил', 'тянку цаловал', 'тянку имел или нет')
Вот как idxs и works - вставить в PySimpleGUI tree правильно?
Аноним 08/11/23 Срд 13:42:24 #360 №2912072 
Сам питонач не знаю как сформулировать
Короче нужно получить bitmap для символа как это делать, я хз как правильно сформулировать. Ну типа есть символ A или 私 короче типа их карту из 0 1 как их отрисовывать как можно её вытащить?
Аноним 09/11/23 Чтв 01:22:19 #361 №2913446 
Почему django rest framework такое говно? Шаг влево, шаг вправо - ты уже сам написал себе необходимые классы для сериализации.
Аноним 09/11/23 Чтв 02:24:45 #362 №2913478 
>>2853722
>куча специальных ключевых слов-модификаторов для объявления классов
Ты про public/private всякие? Нижнее подчеркивание есть. Более строгая инкапсуляция технически тяжело реализуема, потому что язык не компилируемый и кто запрещать обращаться к _ должен -- не понятно, не интерпретатор же.
>всё паттернами обмазано
Так обмажь паттернами в Питоне. Да и половина ООП паттернов в Питоне заменяется стандартными средствами языка и стандартной библиотеки. Паттерны то появились во времена, когда нихуя кроме C++ и Java не было, да и в самих C++ и Java много чего еще не завезли.
>всё через интерфейсы где надо
Protocol и ABC
>в настоящих ООП-языках
Питон это если не более, то уж точно не менее ООП язык, чем Java и C++. Странно из-за отстутствия статической типизации его не считать ООП. Smalltalk -- динамически типизируемый, а уж он то самый настоящий ООП.
>Что такого есть
Тут скорее надо спрашивать, чего такого нет в других языках, потому что в Питоне есть почти что все, кроме эзотерических ФП фич вроде алгебраических эффектов и монад. Даже статическая типизация есть в виде mypy, которым каждая вторая современная библиотека пользуется (FastAPI, например).
У Питона ровно две главные проблемы -- ЖИЛ и скорость, в остальном это швейцарский нож. И то, ЖИЛ возможно выпилят.
Аноним 09/11/23 Чтв 02:28:09 #363 №2913481 
>>2908631
print(..., flush=True) попробуй.
Аноним 09/11/23 Чтв 02:31:04 #364 №2913483 
>>2855547
>Какую нахуй репу?
Согласен, если это сениор дата сатанисты, спрашивать надо опубликованные паперы.
Аноним 09/11/23 Чтв 11:07:07 #365 №2913756 
>>2912072
З дапамогай растэрызатара і растравага шрыфту.

https://www.online-python.com/DPl3bJjeBi
Аноним 09/11/23 Чтв 17:06:38 #366 №2914309 
Прочитал книжку Лутца Программирование на python 1 том, пошел на пайтонтютор, пробую решать задачки. Получается с большим трудом - дошел до 3 раздела (вычисления), а на каждую задачку с решением в 2 строки трачу по 3-4 часа. Это я тупой или как-то по другому изучается питон?
Аноним 09/11/23 Чтв 17:29:48 #367 №2914370 
>>2914309
Слухайте а объясните как вы так учите программирование?
Я просто не понимаю правда, как ты прочитал всего луца всего и не можешь решать задачи с питон тьютора блин??
Я вообще ни одной книжки не читал. Я просто посмотрел гайды на ютубе про условия цыклы классы функции и.д. И пошёл писать код, с того же тьютора например, просто зачем тратить время? У меня тоже валяется книжка про питон там 400 страниц, прикинь глава про условия в 40 стр. Вот что можно писать 40 страниц
Про if () : elif () : else:
Блин ну может я просто тупой и не умею читать. Я понимаю что в лутце дохуя полезных модулей но лучше в примерах поискать в инетике
Аноним 09/11/23 Чтв 17:50:26 #368 №2914411 
>>2914370
>>2914309
> Это я тупой или как-то по другому изучается питон?
Паграмирование на питоне, изучается как и другое любое паграмирование, с помощью практики, а не при помощи чтения, чмоня
а можно ли renpy считать за язык программирования? hatsunekaligeek 09/11/23 Чтв 18:20:03 #369 №2914446 
а можно ли renpy считать за язык программирования? это просто копия питона для всяких новелл по типу доки доки, бесконечного лета и т.д.
Аноним 09/11/23 Чтв 18:48:21 #370 №2914486 
пук (78).mp4
>>2914309
>>2914370
Аноним 09/11/23 Чтв 19:43:11 #371 №2914561 
>>2911512
тут умеют только онлайн-говноподелки делать?? На джанге и фласке???
Аноним 09/11/23 Чтв 20:52:47 #372 №2914629 
>>2914370
Пробовал курсы тоже смотреть и в других местах примерно понимал как работают условия, функции. На примерах все понятно, а вот когда сталкиваюсь с практикой сижу и туплю, пытаясь придумать решение
Аноним 09/11/23 Чтв 20:57:41 #373 №2914637 
>>2914629
Кинь нам пример на чем тупишь, мы ж питон тред
Аноним 09/11/23 Чтв 20:58:48 #374 №2914639 
>>2914446
renpy это библиотека
Аноним 09/11/23 Чтв 21:12:06 #375 №2914654 
>>2914637
2 часа тупил на этой задаче - Дано положительное действительное число X. Выведите его первую цифру после десятичной точки.
Решение:
from math import
a = float(input())
print(floor((a - int(a))
10))

Сейчас туплю на этой - В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут, после 1-го, 3-го, 5-го и т.д. уроков перемена 5 минут, а после 2-го, 4-го, 6-го и т.д. — 15 минут.

Дан номер урока (число от 1 до 10). Определите, когда заканчивается указанный урок.Выведите два целых числа: время окончания урока в часах и минутах.
Вообще в голову не приходит решение задачи. Нет, я могу просто захардкодить нужное решение, но уверен, что это не то, как задумывалось
Аноним 09/11/23 Чтв 21:25:45 #376 №2914665 
IMG20231109212221.jpg
>>2914654
Выведите его первую цифру после десятичной точки.
Решение:
from math import
a = float(input())
print(floor((a - int(a)) 10))

Смотри как вариант ещё так
int(str(abs(chislo)) [2])
Аноним 09/11/23 Чтв 21:37:45 #377 №2914689 
>>2914665
Если мы берем только 2й элемент, то сработает ли решение для числа, например 8800555.3535?
Аноним 09/11/23 Чтв 21:45:25 #378 №2914697 
IMG20231109213730.jpg
>>2914654
По второй вот так как то, только займёт пробивает до N-1 так? Ибо после последнего урока перемена не нужна по логике
Аноним 09/11/23 Чтв 21:46:36 #379 №2914700 
>>2914689
Тогда так
C = str(b) [str(b). find('.') +1]
Аноним 09/11/23 Чтв 21:47:33 #380 №2914702 
>>2914697
Как ты так быстро нашел решение? Мне в голову вообще ничего не приходило, просто пустота
Аноним 09/11/23 Чтв 21:50:32 #381 №2914703 
>>2914702
Из условия
Смотри
1-го, 3-го, 5-го и т.д. уроков перемена 5 минут, а после 2-го, 4-го, 6-го и т.д. — 15 минут.
Что это тебе напоминает?
Что от тебя хотят найти?
Тут только такой патерн мышления нужен. Тащи ещё задачу, я ничего делать не буду просто сам порассуждаешь как тебе составить алгоритм, подскажу если че но сам алг писать не буду
Аноним 09/11/23 Чтв 21:54:35 #382 №2914709 
>>2914703
2 следующие задачи они простые в математике я понимаю что нужно и могу их решить, а вот которая вызывает вопросы и непонимание:
Улитка ползет по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой день улитка доползет до вершины шеста?
Программа получает на вход натуральные числа h, a, b.
Программа должна вывести одно натуральное число. Гарантируется, что a>b.

Понятно, что улитка ползает вверх и вниз, но как это вычислить вообще нет никаких идей
Аноним 09/11/23 Чтв 22:01:45 #383 №2914717 
>>2914709
Подумай есть n дней m ночей, как посчитать сколько она проползла?
Аноним 09/11/23 Чтв 22:03:33 #384 №2914720 
>>2914717
Затем смотри вопрос, на какой день? Так? Значит ночей что будет?
Аноним 09/11/23 Чтв 22:06:51 #385 №2914725 
>>2914717
n - m это будет путь за 1 день. Можно попробовать через цикл while, но если смотреть по учебным материалам, до него еще не дошли

>>2914720
А тут не понял
Аноним 09/11/23 Чтв 22:12:09 #386 №2914730 
>>2914725
>А тут не понял,
N дней n-1 ночей
Аноним 09/11/23 Чтв 22:14:31 #387 №2914734 
>>2914730
Попробую посидеть подумать над задачей
Аноним 09/11/23 Чтв 22:19:00 #388 №2914746 
>>2914734
Я тоже с вайлом сделал.
Но ты сказал я почасал репу там одна формула
. давай ты сможешь.
Смотри там железно есть целочисленное деление
Аноним 09/11/23 Чтв 22:43:38 #389 №2914778 
>>2914746
Пришло в голову так:
h = int(input())
a = int(input())
b = int(input())
r = h // (a - b)
print(int(r))

Но отрабатывает только на половине примеров
Аноним 09/11/23 Чтв 22:46:15 #390 №2914780 
>>2914778
Да типа того
Аноним 09/11/23 Чтв 22:46:36 #391 №2914781 
>>2914778
Да типа того
Аноним 09/11/23 Чтв 22:47:38 #392 №2914783 
>>2914778
Проверь остаток если он не ноль добавь ещё день
Аноним 09/11/23 Чтв 22:59:51 #393 №2914799 
>>2914783
Где-то нужно добавить 1 день, а где-то убрать. Вот примеры для тестов, которые не проходят
10, 3, 2. Правильный ответ 8, результат 10
10, 6, 0. Правильный ответ 2, результат 1
10, 100, 0. Правильный ответ 1, результат 0
20, 5, 4. Правильный ответ 16, результат 20
93, 17, 5. Правильный ответ 8, результат 7
Аноним 09/11/23 Чтв 23:00:21 #394 №2914800 
>>2914778
Попробуй запилить такое, все элименты языка попробуешь https://ru.m.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B9_%D0%BC%D0%BE%D0%BB%D0%B5%D0%BA%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D0%BE%D0%B9_%D0%B4%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8%D0%BA%D0%B8
Аноним 09/11/23 Чтв 23:19:11 #395 №2914819 
>>2914799
Тогда так
1 a
2 2a - b
3 3a - 2b


N Na - N-1 b
H = N
(N+1) a /2 - N(N-1)*b/2 надо найти N
Аноним 09/11/23 Чтв 23:32:17 #396 №2914838 
image.png
image.png
>>2853616 (OP)
Парни, заметил интересную особенность, я могу делать импорты внутри самого тела класса, они не протекают наружу, но сцук когда я хочу их использовать как в этом примере, то ловлю ошибку, внутри конструктора init например он не видит импортированный math
Это можно как-то поправить? И вообще что это такое? Фича или просто очередной косяк Пистона?
Аноним 09/11/23 Чтв 23:36:57 #397 №2914846 
>>2914819
А не это хуита забудь
Аноним 10/11/23 Птн 00:03:15 #398 №2914874 
>>2914799
Я пон короче
1 + (H - A) / (A - B)
Просто нарисуй движение и поймёшь
Аноним 10/11/23 Птн 00:52:31 #399 №2914918 
image.png
>>2914838
Аноним 10/11/23 Птн 01:01:54 #400 №2914927 
>>2914918
Прикольно конечно сохранил,
Только вопрос на фига оно нужно то?
Аноним 10/11/23 Птн 01:44:01 #401 №2914950 
image.png
>>2914927
Как в первом варианте не нужно делать никогда, я думаю.
Во втором, в редких случаях каких-то.

Ещё вот так можно.
Аноним 10/11/23 Птн 02:52:49 #402 №2914959 
>>2853616 (OP)
def paperwork(n, m):
if n < 0:
return 0
elif m <0:
return 0
else:
return m
Почему некоторые числа он перемножает, а некоторые нормально выводит
Аноним 10/11/23 Птн 02:55:42 #403 №2914960 
>>2914959
я так же писал, но там уже почему то когда м меньше 0 он не возвращает
def paperwork(n, m):
if n < 0 and m < 0:
return 0
else:
return m
Аноним 10/11/23 Птн 03:12:03 #404 №2914967 
>>2914960
Ваши одноклассники попросили вас скопировать для них некоторые документы. Вы знаете, что есть "n" одноклассников, а в документах есть "m" страниц.

Ваша задача - подсчитать, сколько пустых страниц вам нужно. Если n < 0 или m < 0 вернуть 0.
Все я сделал, там наоборот надо было умножить, короче затуп на ровном месте
Аноним 10/11/23 Птн 07:46:08 #405 №2915025 
>>2914819
>>2914846
В общем час вчера посидел, не смог придумать решение и пошел спать. Утром еще подумал немного, сдался и посмотрел в чужие решения. Вот пример:
from math import ceil
h = int(input())
a = int(input())
b = int(input())

r = ceil((h - a) / (a - b)) + 1
print(int(r))

>>2914370
А по решению задач видимо нужно просто вот так брутфорсить задачи, чтобы в целом понимать что хотят и как решать, считай набить руку. Я когда sql учил не понимал теорию join и просто методом подбора понял как работает
Аноним 10/11/23 Птн 08:19:06 #406 №2915068 
Странно, что полупольский полупокер не окучивает юных педрилок. Заныкался куда-то. Только на сеньёров вылазит.
Аноним 10/11/23 Птн 17:45:17 #407 №2915983 
image
>>2914654
>>2914697
>>2914702
Эх вы, погромисты.

lessons = 2
min = (lessons45 + sum([15 if x%2 else 5 for x in range(lessons-1)]))
print(f"{9 + int(min/60)} часов {round(60
((min/60)%1))} минут")
Аноним 10/11/23 Птн 17:52:08 #408 №2916016 
>>2915983
Всё время забываю что макаба разметку портит, звездочки .
https://www.online-python.com/RFeoarJNTb
Аноним 10/11/23 Птн 20:54:22 #409 №2916397 
>>2915983
Ну красава,
А чем это плохо? >>2914697
Типа медленнее работает?
Или просто не в одну строчку?
Я признаю что нуб и пишу по нубски. Есть мини гайд по таким выражениям как у тебя?
Аноним 10/11/23 Птн 23:09:46 #410 №2916654 
С клавиатуры через пробел вводится последовательность чисел, последовательностей может быть много (пустая строка - окончание ввода). Нужно вывести среднее арифметическое каждой последовательности (т.е. написать функцию, которая для строки считает среднее арифметическое).

Почему-то проходит 1 тест из 4, пишет wrong answer (а как блядь по-другому посчитать еще среднее чисел?)

прога: https://goonlinetools.com/snapshot/code/#nbibbrywjjeyyjfn0txtn
Аноним 11/11/23 Суб 00:46:55 #411 №2916817 
>>2916654
А ты не думал что он считает только одну последовательность из 4?
Аноним 11/11/23 Суб 01:09:57 #412 №2916858 
>>2916817
Почему одну? Я же функцию применяю к каждой введённой строке, после результат кладу в список.
Аноним 11/11/23 Суб 01:31:41 #413 №2916894 
>>2916654
можна выкарыстаць функцыі існуючых бібліятэк. мой варыянт успрымае signed float, -15.555.

https://www.online-python.com/7FmE5XDAUq
Аноним 11/11/23 Суб 06:18:30 #414 №2917060 
>>2916654
О, узнаю платину. Каждые пол года бариста-вкатун сюда её постит. Видимо это с каких-то курсов скилбокса\скилфэктори\хуектори.
Аноним 11/11/23 Суб 07:19:15 #415 №2917102 
>>2915068
А это разве не нейросеть? По крайней мере ответы что он высирает 1к1 нейросетевые.
Аноним 11/11/23 Суб 09:05:12 #416 №2917155 
>>2917102
Какой дегенерат будет месяцами срать в треде на чужом для местных языке?
Это как если бы я завалился на форчанг и начал бы там отвечать всем на русском. Ладно ответил разок, местные подумали бы чудак, проигнорили. Но если бы я там срал месяцами - это уже целенаправленное действие или шизофрения.
Если целенаправленное действие, то нахуя так делать? Внимание на себя обратить? Срачи затевать? Какой бы ни был ответ на этот вопрос - кто так делает - ведет себя с деструктивными намерениями по отношению к коммьюнити в которое он пришел. Антисоциальное, неуважительное поведение. Кто так упорно срет как свинья - тот к себе только такое отношение и заслуживает.
Аноним 11/11/23 Суб 09:19:28 #417 №2917163 
>>2917155
Это модератор наверное.
Аноним 11/11/23 Суб 10:52:49 #418 №2917204 
Питонач, а как мне в середину файла что-то записать?
Вот я открываю файл
>with open("text.txt", "a") as f:
Ставлю курсор в нужную позицию
> f.seek(3)
Пишу что мне нужно
> f.write("&")
А дописывается всё в конец. Я с ключами туплю или в чём проблема?
Аноним 11/11/23 Суб 10:55:39 #419 №2917206 
>>2917204
перепиши файл просто целиком.
скопируй все, встав куда надо что
и заново перепиши
Аноним 11/11/23 Суб 10:56:45 #420 №2917209 
>>2917206
Да это понятно, но способ какой-то с левой резьбой.
Нахуя тогда этот file.seek() нужен, если нихуя не работает?
Наверняка же есть какой-то адекватный способ.
Аноним 11/11/23 Суб 11:06:55 #421 №2917218 
>>2917209
Нет, дописывать можно только в конец файла.
seek() работает как надо, но он не для вас сделан молодой человек, а для других секретных задач настоящих красноглазых погромистов. чтобы байтики из файла выковыривать.
Аноним 11/11/23 Суб 11:10:48 #422 №2917221 
>>2917218
Пиздос.
А если у меня файл на сто гигабайт, то что, пятьдесят гигабайт до и после копировать?
Аноним 11/11/23 Суб 11:22:11 #423 №2917231 
>>2917221
В этом случае ты можешь открыть файл в бинарном режиме 'r+b' найти нужный байт с помощью seek(), скопировать всё что после него, вставить на место указателя новые байты новой инфы которую добавляешь и затем вставить ту часть файла которую скопировал ранее.
Но я не уверен как это в винде под капотом реализовано. Если нет опыта то ты гарантированно проебешься и файл сломаешь.
Аноним 11/11/23 Суб 11:25:52 #424 №2917235 
>>2917221
Если у тебя файл по сто гигов, то тебе в любом случае надо считвать файл маленькими порцияим и порциями его записывать в новое место.
Аноним 11/11/23 Суб 11:27:50 #425 №2917237 
>>2917231
Да я пока с текстовыми файлами играюсь чтобы хоть примерно понять как это работает.
Буду тогда дальше ковыряться, спасибо за ответы!

>>2917235
Ну "сто гигов" в смысле просто большой файл. Но мысль понятна, да.

А как тогда текстовые редакторы работают? Они же не переписывают каждый раз к хуям весь файл, когда я в середину слова букву вставляю? Или реально в оперативе цикл запускают и все символы двигают на +1 позицию?
Аноним 11/11/23 Суб 11:34:59 #426 №2917244 
>>2917237
Чел от программы зависит, буковки которые ты меняешь на экране они в оперативной памяти а не на диске, а сохраняется всё в файл только когда "сохранить" жмешь.
Есть программы которые файл всё время открытым держат и сразу в него пишут, есть другие подходы. Как погромист сделает так и будет, но самый лучший вариант это да заново перезаписывать в момент сохранения.
Аноним 11/11/23 Суб 11:36:11 #427 №2917246 
питонач я понимаю что я ленивая хуйня, но я рилли не вдупляю в этот гайд
https://habr.com/ru/articles/301776/
мне надо выполнить это
>buildozer android debug
но cmd ругается что не знает что такое android
как это фиксить?
Аноним 11/11/23 Суб 12:10:04 #428 №2917274 
>>2917246
ohhhh i got it, i can not do that coz i am widows-fagot
Аноним 11/11/23 Суб 14:22:56 #429 №2917414 
image.png
>>2916654
каков пиздец
Аноним 11/11/23 Суб 19:12:39 #430 №2917960 
image.png
Дебильный вопрос, но я не понимаю как в функциях делать так,чтобы не в коде писать, а в консоле цифры
print('\n'.join(reversed(['1', '2', '3', '4', '5'])))
или
def no_space(x):
return("".join(x.split()))
Аноним 11/11/23 Суб 19:14:21 #431 №2917964 
>>2917960
типо я хочу в консоль ввести цифры и соединить их, в 1 вообще работает, но мне надо чтобы 1 2 3 4 5 я в консоль писал, а не тут
Аноним 11/11/23 Суб 21:24:39 #432 №2918159 
image.png
питонисты рейтаните алгоритм
Аноним 11/11/23 Суб 21:28:36 #433 №2918161 
>>2918159
а саму задачу забыл, корое есть число -123 надо развернуть -321, работает но есть чувство что это говнокод
Аноним 11/11/23 Суб 23:35:23 #434 №2918339 
изображение.png
>>2918159
Ебать ты пряник.
Аноним 11/11/23 Суб 23:43:55 #435 №2918360 
>>2918339
поясни за срез, как ты это сделал?
Аноним 11/11/23 Суб 23:47:39 #436 №2918366 
>>2918360
Что именно пояснить? Что такое "срез" ты уже знаешь, судя по вопросу. У него есть параметры start, stop, step. По умолчанию step = 1. Если он = -1, значит срез итерируется в обратном направлении, соответственно разворачивает твою строку. А чтобы он не разворачивал "-" для отрицательных чисел, надо остановиться до этого "-", т.к. он является 0 элементом.
Аноним 11/11/23 Суб 23:50:01 #437 №2918372 
>>2918366
аааа блять я понял, я затупил почему у тебя :: а сейчас дошло нач:кон:шаг
блин не пользовался ими никогда просто
Аноним 12/11/23 Вск 00:01:43 #438 №2918394 
>>2918339
погоди а если число -120?
Аноним 12/11/23 Вск 00:08:04 #439 №2918400 
>>2918394
Ну а по твоей логике каким образом лидирующий 0 должен интерпретироваться? Целое число не может начинаться на 0.
Аноним 12/11/23 Вск 00:10:06 #440 №2918403 
изображение.png
>>2918394
Если тебе не нужно обратное преобразование в целое число, так не делай его.
Аноним 12/11/23 Вск 02:33:17 #441 №2918467 
>>2917960
Цябе input() патрэбны. Паглядзі вось тут як твой больш прасунуты сябар яго ужывае https://www.online-python.com/7FmE5XDAUq
Аноним 12/11/23 Вск 04:01:04 #442 №2918487 
image.png
Всем привет, знаю пытон на уровне егэ 100баллов.
Долгое время пытался вкатиться во фронтенд, думая, что это мне интересно. Затем в универе проходили базы данных, и мой мир начал переворачиваться — во фронтенд не вкатился. Неинтересно.
Вот, собственно, вопрос - бэкенд на питоне - хороший выбор?
Я ещё немного потыкал pandas, numpy и scikit-learn на уровне визуализации датасетов, логистической регрессии и кластеризации.
Пора уже искать работу, но кажется, будто бы никуда не потяну.
Аноним 12/11/23 Вск 10:36:07 #443 №2918556 
>>2918487
>бэкенд на питоне - хороший выбор
Максимально хуёвый. Тормозной же очень, и с памятью проблемы.

На питоне пишут прототипы, чтобы по-быренькому в общих чертах, пользуясь готовыми библиотеками. Прототип утверждают и пишут на нормальных языках.
кабаны ебнулись Аноним 12/11/23 Вск 12:06:01 #444 №2918613 
image.png
168589615006721.png
ля, смотрите какая вакансия

требования:
Мы ожидаем, что ты:

> имеешь опыт работы не менее двух лет
> имеешь опыт работы с одним из web фреймворков: Flask/FastAPI/DRF
> разрабатывал ПО в парадигме ООП
> имеешь опыт тестирования своего кода на pytest
> работал с библиотеками pydantic/marshmallow
> имеешь опыт применения ORM SQLAlchemy
> знаешь математическую статистику и теорию вероятности
> понимаешь принципы работы алгоритмов машинного обучения
> способен задать математическую постановку задачи из сложной бизнес-задачи
> способен определить методологию тестирования качества модели с постановкой гипотез и оценкой экспериментов
> владеешь DS стеком на Python (Numpy, Pandas, SciPy, Scikit-learn, TensorFlow/PyTorch, Xgboost/LightGBM/CatBoost)
> имеешь опыт вывода модели в продакшн и управления жизненным циклом ML моделей (MLflow)
> владеешь инструментами для визуализации (seaborn, matplotlib, plotly)
> знаешь теоретические основы алгоритмов и структур данных
> понимаешь микросервисную архитектуру, знаком с Docker/Docker Compose
имеешь опыт работы с системами контроля версий Git/SVN (понимаешь методологии Git-Flow, GitHub-Flow)
> знаешь и понимаешь принципы работы реляционных БД, языка SQL
> понимаешь, что такое трекер задач и как его использовать
> можешь писать код, читать и анализировать его, аргументированно рассуждать о нем
> обладаешь навыками общения с коллегами, руководителями, заказчиками; способен услышать их точку зрения и донести свою

Чем предстоит заниматься:
> Разрабатывать инженерные бэкенд web-приложения на Python, FastAPI / Flask, ClickHouse, RabbitMQ, Docker
> Выполнять исследовательские задачи по возможности применения статистических методов анализа данных
> Покрывать свой код юнит, интеграционными и e2e тестами
> Проводить code review
> Создавать продвинутые пайплайны обучения моделей
> Разрабатывать гибридные модели – объединять статистические модели со знанием предметной области
> Участвовать в разработке архитектуры ML сервисов
> Проводить аналитику табличных данных, временных рядов
> Погружаться в предметные области, работать с заказчиками
> В составе кросс-функциональной команды работать по методологиям Agile
> Участвовать в проектной и сервисной деятельности
Аноним 12/11/23 Вск 12:16:06 #445 №2918619 
>>2918613
дохуища библиотек
пиздец
это только если знаю основы программирую с доками
Аноним 12/11/23 Вск 13:04:34 #446 №2918667 
>>2918556
Как меня вымораживает псевдоаргумент про скорость языка и память. Куда ты спешишь блять в 2023 году, дед? Просто добавь сервер, в век облаков вообще смех. Питон база для бэкенда.
Аноним 12/11/23 Вск 13:36:38 #447 №2918704 
>>2918556
>Максимально хуёвый. Тормозной же очень, и с памятью проблемы.

Всем похую чел. Мы вообще на монолите с фласком живем уже 6 лет, полет отличный.

Единственное, что хуевое в питоне - это динамическая типизация и отсутствие нормальных потоков. Все остальное заебись и четко.
Аноним 12/11/23 Вск 13:41:34 #448 №2918705 
>>2918667
>Просто добавь сервер
Дебил никогда не имел базу больше 10к записей... пиздец. Разработчик ботов казино и криптоинвестиций чёт кукарекает.

Возьми нормальную базу с 10–100 миллиардами записей, да ещё чтобы поля разных типов. Потом клювик открывай... Сервер добавь... пиздец просто. Даже по сути, бля, не одупляет, макака, обученная буковки писать.
Аноним 12/11/23 Вск 13:46:47 #449 №2918708 
>>2918667
Чел, ващет по тейкам про переписывание на НОРМАЛЬНЫХ ЯЗЫКАХ сходу детектятся вкатыши, нахуй ты таким отвечаешь вообще.
Аноним 12/11/23 Вск 14:09:52 #450 №2918732 
>>2918704
>на монолите с фласком живем уже 6 лет
Ну если там бот продаж косметики города Кинешма, то вообще похуй, хоть на паскале.
Аноним 12/11/23 Вск 14:22:56 #451 №2918747 
>>2918732
Не, у нас 100k rps бывает. Хуйлоад в российском бигтехе.

>>2918705
Зачем в реляционной бд хранить миллиарды записей? У нас для таких объемов map reduce используется
Аноним 12/11/23 Вск 14:28:16 #452 №2918756 
>>2918747
>реляционной
Кто первый кукарекнул «реляционной»?
Аноним 12/11/23 Вск 14:28:55 #453 №2918757 
>>2918705
>100 миллиардами
Дружище, я вот другой анон, можешь пояснить в чем проблема питона относительно этого момента..
Я так понимаю ты имеешь в виду то, что чем больше записей в базе, тем медленнее питон с ними работает т.е. ищет нужную запись например, чтобы к ней обратиться?
Но в чем разница между 10к записями и 10000000000 миллиардами записей для бинарного поиска? Алгоритм бинарного поиска же, который диды ещё при царе горохе придумали одинаково быстро ищет в таких обьемах?
Аноним 12/11/23 Вск 14:41:34 #454 №2918769 
>>2918757
>Я так понимаю ты имеешь в виду то, что чем больше записей в базе, тем медленнее питон с ними работает т.е. ищет нужную запись например, чтобы к ней обратиться?
Так за это не бидон отвечает, а субд. Язык тут почти никакой роли не играет, а играет орм и драйвер к бд.
И на условной алхимии в питоне твой запрос отработает также как и на энтити фреймворке в шарпе, разница будет только в весе загружаемых в память объектов, которые орм внутри сессии создаст.
Но даже если у тебя селект на сотни мильёнов строк, почти всегда эта подгрузка ленивая и драйвер не фетчит сразу все данные, там есть батчи.
Поменьше слушай таких синек, у которых проблемы языка это мильёны записей в бд с разными типами полей, лол.
Аноним 12/11/23 Вск 15:10:53 #455 №2918789 
>>2918757
Разница в реализациях библиотек, при помощи которых питон будет обращаться к таким БД (организовывать очереди, мультипоточность, асинхронность и так далее). На чистом питоне без них ты в принципе не сможешь организовать работу. А они будут написаны на c/с++, скорее всего. С учётом принципов работы Питона. И потому будут тормознее своих реализаций просто на другом языке без учёта Питона.
Аноним 12/11/23 Вск 15:14:00 #456 №2918790 
>>2918789
>На чистом питоне без них ты в принципе не сможешь организовать работу
Подключение к бд это просто подключение через сокет. Что такого особенного в сокетах не питухоне, что сделано сильно лучше в других языках?

Очереди celery (который под капотом rabbit или redis), ну или опять же кафка, ребит или редис в том или ином виде.
Многопоточность тут да, посос, но что есть, то есть.
Аноним 12/11/23 Вск 16:50:45 #457 №2918913 
>>2918789
>Разница в реализациях библиотек, при помощи которых питон будет обращаться к таким БД
Так а в чем конкретно бутылка? Слишком долго запросы к бд обрабатывает, слишком много памяти занимает? Ты как-то слишком обобщенно ответил "ну там реализация библиотек плохая". Библиотеки в конце концов можно открыть и исправить, если знать где узкое место.
Аноним 12/11/23 Вск 18:03:24 #458 №2919096 
Подскажите, пожалуйста, задача такая
Нужно определить есть ли в тексте ссылка с определенными символами и если после этих символов определенное количество символов, вернуть true
Например, есть ссылка https://amogus.aboba/XX123456789
Если после ХХ 9 символов, то возвращаем true, если другое количество, то false. Сама ссылка может быть другой и соответственно другой длины, поэтому тупо проверить длину ссылки не получится.
Я так понимаю, нужно выделить в отдельное слово все символы после ХХ и посчитать его длину, как это сделать?
Аноним 12/11/23 Вск 18:30:25 #459 №2919174 
>>2919096
https://www.online-python.com/oeFpabxCQt
Аноним 12/11/23 Вск 18:44:20 #460 №2919193 
>>2919174
После {9,9} добавь ещё ($|/)
Аноним 12/11/23 Вск 18:59:05 #461 №2919208 
>>2919174
>>2919193
Спасибо
Я правда уже решил как умею, может криво https://www.online-python.com/JfpIOeg7yb
Я почему-то сначала подумал, что через split это не сделать

Правильно я понимаю, что [^/] и {9,9} ($|/) это регулярные выражения?
Аноним 12/11/23 Вск 19:02:23 #462 №2919210 
>>2919208
Калі org_string='https://google.com/XX123456789/' ты атрымаеш False. Паспрабуй так https://www.online-python.com/WnSp0wEaRJ
Аноним 12/11/23 Вск 19:05:51 #463 №2919216 
>>2919210
Я думал просто добавить проверку на последний символ и если это "/", то сбросить его и считать уже после этого.
Аноним 12/11/23 Вск 19:08:03 #464 №2919217 
>>2919216
https://google.com/XX123456789?'
https://google.com/XX123456789&'
https://google.com/XX123456789='
https://google.com/XX123456789.'
https://google.com/XX123456789,'
Аноним 12/11/23 Вск 19:17:57 #465 №2919233 
>>2919217
>>2919210
Только у меня не только цифры, но и буквы могут быть, 123456789 я для примера написал (наверное неправильно), твой код я так понимаю возвращает тру только если 9 символов это цифры (я не разобрался еще, потому что и питон, и польский язык плохо розумию). Да и у меня такие ссылки, что вряд ли там что-то будет после этих символов, максимум /
Аноним 12/11/23 Вск 19:20:16 #466 №2919234 
>>2919210
>re.MULTILINE|re.UNICODE|re.IGNORECASE
Польско-латышская нейросеть обезумела. С ней уже не совладать.
Аноним 12/11/23 Вск 19:21:17 #467 №2919237 
>>2919233
Так, там толькі для лічбаў. Вось для лічбаў і літар
https://www.online-python.com/HjEGOnyeJg

Гэта беларуская.
Аноним 13/11/23 Пнд 10:48:31 #468 №2919939 
Куда вкатываться, машоб или Джанго?
Без понятия к чему душа лежит, помогите с выбором
Аноним 13/11/23 Пнд 11:43:18 #469 №2919996 
>>2919939
А какое у тебя образование? Если "вышка нинужна", тогда только Джанго, и то не вкатишься. Если физмат, или инженерное хотя бы, тогда лучше машоб, перспективнее
Аноним 13/11/23 Пнд 14:01:14 #470 №2920131 
>>2908971
Напоминаю перекатчику про новую шапку.
Аноним 13/11/23 Пнд 15:10:55 #471 №2920203 
Добрый день!
Возник вопрос у непрограммиста.
Каким способом можно подогнать элементы массива, условие в духе AB+CD=0, где A и B - известные массивы?
Аноним 13/11/23 Пнд 16:06:14 #472 №2920308 
>>2920203
>подогнать
Переформулируй.
Аноним 13/11/23 Пнд 18:23:21 #473 №2920463 
>>2920308
Даны массивы A и B. Известно, что AB+CD=0. Надо найти массивы C и D. Не могу сообразить, как можно обозначить функцию для аппроксимации с таким условием. Скорее всего, я предполагаю, это через мнк делается, но если ошибаюсь, прошу поправить.
Раньше сталкивался максимум с аппроксимацией обычных зависимостей типа y(x) с помощью curve_fit, а тут что-то мне подсказывает, что в def через while можно сделать, но придумать не получается.
Аноним 13/11/23 Пнд 18:47:25 #474 №2920487 
>>2920463
>Надо найти массивы C и D.
C = -A
D = -B
AB+(-AB)=0
Не благодари.
Аноним 13/11/23 Пнд 19:03:39 #475 №2920498 
>>2919996
4 курс информационных систем и технологий
Аноним 13/11/23 Пнд 19:42:26 #476 №2920542 
>>2920487
-A * -B != -AB
Аноним 13/11/23 Пнд 19:52:04 #477 №2920571 
>>2920542
C = -A
D = B
-A x B == -AB
Аноним 13/11/23 Пнд 21:20:15 #478 №2920676 
как у вас обстоят дела с конкуренцией, питонисты, когда даже в школе с 8 класса уже питон учат?
*не подъеб, а реально интересно
Аноним 14/11/23 Втр 02:22:48 #479 №2920926 
>>2920676
Это из серии, что сказать "айтишники, как у вас с конкуренцией? сейчас с детского сада учат с компами работать"

Питон лишь инструмент. В школе учат, но никто питон не знает. Ну типа знают, а написать простейший генератор не могу. Не говоря уже про контекстный менеджер или декоратор.

Хотя знать питон недостаточно.
Аноним 14/11/23 Втр 02:50:18 #480 №2920929 
>>2920926
На днях просто смотрел ещё вакансии по ключам python, django и т.д.
Откликов тьма, поэтому стало интересно, как у вас с трудоустройством
Аноним 14/11/23 Втр 22:22:53 #481 №2922248 
image.png
image.png
image.png
Анончик это правда что OCR в тессеракте кусок говна?
Аноним 15/11/23 Срд 04:41:21 #482 №2922428 
2023-11-15x04:38:22.png
>>2922248
если кому интересно - проблема была в повороте вы такие же безмозглые и бесполезные как чатгпт
Аноним 15/11/23 Срд 08:30:07 #483 №2922468 
>>2922428
>Срд 04:41:21
>вы безмозглые и бесполезные
Аноним 15/11/23 Срд 14:16:47 #484 №2922864 
>>2920929
95% откликнувшихся это вкатуны в самом плохом смысле. Из серии я пошел на курсы пусть меня научат. За полгода выучившие основы языка и слабо представляющие как работает змея под капотом, с минимальным знаем оопэшэчки, написавшими пару петов в стиле сервис рассылок. Если ты входишь в оставшиеся 5%, которые реально задрачивают змея во все свое свободное время и постоянно учатся то вэлкам.
Аноним 15/11/23 Срд 14:26:27 #485 №2922870 
>>2920676
Какая конкуренция, о чем ты? Ты же не думаешь, что любого можно научить программированию? Любого можно научить только синтаксису.
Аноним 15/11/23 Срд 18:00:29 #486 №2923313 
2023-11-15x17:54:14.png
>>2922468
> Втр 22:22:53
Ну ладно

Смотри мне тут чат распарсил жсончик, там матрица, классы всегда разные, но кохирентные, я так понял это через siamese nn решается по ансупервайзед схеме, да?
Аноним 15/11/23 Срд 18:30:35 #487 №2923354 
>>2922864
>>2922870
никому твоя низушная дрочка нахуй не упала, ты формошлем обыкновенный, абсолютно все твои задачи типовые, а те додики у которых чсв в яндексе играет, потом после выезда сосут хуи, потому что никто нахуй в этих ебанных дохуя айкью велосипедах не может разобраться

проще будь и не трать время на бесполезный луцедрочь
Аноним 15/11/23 Срд 20:10:41 #488 №2923421 
>>2923354
Только я смотрю на вкатунов на нашей галере. Все в нулину. Элементарщины не знают. Как клонированные блять. Дохуя они че-то простые.
Аноним 15/11/23 Срд 20:29:43 #489 №2923441 
>>2922864
>Если ты входишь в оставшиеся 5%, которые реально задрачивают змея
Да в общем то задрачивание не очень нужно само по себе. Это скорее показатель того, что ты в состоянии под капот лезть, в кишках разбираться. Вот этот скилл критичен, а не знание конкретно питона.

Это надо, чтобы человек мог думать, как программист, понимал IT в целом и т.п. Вот это годами нарабатывается. А иначе, чел типа синтаксис знает, а дальше труба. И реально 90% откликов будут такие.
Аноним 15/11/23 Срд 20:52:10 #490 №2923475 
Screenshot20190715190159.png
>>2923421
> клонированные
> вкатунов на нашей галере
если они вкатились - значит всех кроме душнилы тебя все устраивает

> Элементарщины не знают
джангодрисня уебищная, через месяц-два все приколюхи освоят и будут ебашить как биороботы


>>2923441
> этот скилл критичен
ДА ДЛЯ КОГО ОН БЛЯДЬ КРИТИЧЕН КРИТИН ТЫ ЕБАННЫЙ !?

ну вот тебе всратый тессеракт
>>2922428

и хуле? ты чо полезешь разбираться в алгосах и фиксить? да хуй кто тебе заплатит за проебанный тайм, да и твоей вышки из под стобальной помойки с отсталыми дидами внезапно не хватит, будешь полгода сидеть дрочить говно вместо того чтобы спросить у чата воркэраунд на похуй
Аноним 15/11/23 Срд 21:04:41 #491 №2923487 
>>2920926
Двачую этого.

>>2920929
Петухон это инструмент. Никто не идёт специалиста по работе с молотком. Я вот дата инженер. Месяц назад тыкал scala, год назад java bean shell, а сегодня петухон. Прокачивай область компетенций, петухон тоже прокачивай, но это уже вторичное.
Аноним 16/11/23 Чтв 00:08:51 #492 №2923641 
Чтобы запустить pytest тесты необходимо запустить само приложение? Без этого никак?
В ci пайплайне надо гонять тесты, это делается так - билдится контейнер а потом на нем вызывается "python -m pytest ." - но вот приложуха просто дохнет ожидаемо, т.к. не может подключиться к базе и к кешу (которых нет). Как это контрить? У меня есть несколько вариантов но все по-своему хуйня
Аноним 16/11/23 Чтв 05:13:22 #493 №2923695 
2646.jpg
>>2923641
> Как это контрить?
подключиться к базе и к кешу или писать дамми дейта самому и подтыкать, какие еще варианты то могут быть блядь
Аноним 16/11/23 Чтв 06:18:01 #494 №2923700 
>>2920203
scipy.optimize.curve_fit
Аноним 16/11/23 Чтв 17:37:42 #495 №2924329 
>>2923641
Юнит тесты для слабаков?
Либо возьми подними приложуху да прогони там нужные тесты. ЧО сложного то?
Аноним 16/11/23 Чтв 18:18:09 #496 №2924367 
Питонобратва я с вами, снова начал читать про питон, не хочу я формошлепить, ну его нахуй, я слишком стар для этого дерьма.
Дайте пару советов бегиннерсу. Щас пока тока поставил вскод и собсна питон на работе пока вспоминаю синтаксис и просто иду по python crash course и еще нашел челика code with harry, искал инструкцию как на тилибон установить вскод.
Или не выебываться и идти нахуй, какие мне блять советы еще, бери да учи по книжке да по всей хуйне, правильно?
дед 37
Аноним 16/11/23 Чтв 21:12:28 #497 №2924640 
>>2924367
>Дайте пару советов бегиннерсу.
1. Правда! Живи по правде!
2. Береги честь с молоду, коли с детства не сумел.
Аноним 16/11/23 Чтв 23:06:41 #498 №2924780 
image.png
image.png
Хули ему надо? Скопировал код из другого колаба в свой и синтаксис невалиден. Буквально то же самое.
sage[mailto:sage] Аноним 17/11/23 Птн 00:45:04 #499 №2924874 
>>2924367
Вдохновился моим постом в жс треде?
Ну давай, удачки.
Аноним 17/11/23 Птн 11:02:31 #500 №2925104 
image.png
>>2924367
Собственна никаких секретов тут нет, просто садишься за комп без задней мысли и кодишь
Аноним 17/11/23 Птн 11:18:37 #501 №2925117 
>>2924874
Спасибо, братишка, взаимно.
Аноним 17/11/23 Птн 13:01:53 #502 №2925307 
Таааак блэт. Сегодня утром понял что наелся говна и теперь ни один докер с питоном не собирается, не может зарезолвить pypi.org:

HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi/typing-extensions/4.7.1/json (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7fe3e789ebb0>: Failed to resolve 'pypi.org' ([Errno -3] Temporary failure in name resolution)"))

Шо за нахуй? С компа из терминала pip install работает, как только собираю зависимости в докере - сосу хуй. Что с ним блять такое?
Аноним 17/11/23 Птн 13:20:07 #503 №2925342 
>>2925307
Тут что-то с dns похоже, но как понять какоц dns я использую и какой нужно?
Аноним 17/11/23 Птн 13:43:01 #504 №2925384 
>>2924367
>дед 37
А до этого ты чем занимался?
Аноним 17/11/23 Птн 14:28:27 #505 №2925433 
>>2925384
Гопал пориджей и отбирал телебоны
Аноним 17/11/23 Птн 20:51:16 #506 №2926012 
>>2925384
Хуйней, в основном.
Аноним 18/11/23 Суб 11:06:20 #507 №2926497 
питонисты пытаюсь написать свою мини-библиотеку для рисования в консоли. но есть нюанс, при отрисовке кадров консоль мигает, как это пофиксить? если че я чищу ее os.system('CLS')/os.system('clear'). я понимаю, что есть какой то адекватный способ, но ничего не нагугливается. кроме "не очищайте ее, а проматывайте вниз" - по моему это такой же костыль как cls.
Аноним 18/11/23 Суб 17:30:40 #508 №2927041 
17000797966880.mp4
>>2925307
у меня арчик обновился и тоже пакет поломался, я форсанул пипу и взлетело, а на следующий день уже хотфикс прилетел, роллинг релиз топ а ты жри говно и страдай хуле


>>2924780
>>2926497
анончик как думаешь через сколько десятилетий этот безмозглый сблёв с интеллектом собаки приблизится к чатгпт 3.5 ?
Аноним 19/11/23 Вск 00:32:04 #509 №2927465 
програмач
рейтани говнокод.
https://ideone.com/SJLnwd
копируешь себе и запускаешь
Аноним 19/11/23 Вск 09:37:17 #510 №2927649 
Установил конду и все мои программы пошли по пизде. Пишет не установлен модуль pip. Конда наебнула все мои библиотеки? Что делать?
Аноним 19/11/23 Вск 10:25:47 #511 №2927675 
Снимок.JPG
Привет, ребята, вообщем учу питон и вот вроде бы всё понимаю но вот сейчас не очень понял.
Аноним 19/11/23 Вск 10:37:10 #512 №2927686 
>>2927675
Что именно не понял?
Аноним 19/11/23 Вск 10:43:01 #513 №2927692 
>>2927686
То как экстенд работает, ждал что pop() выкинет всё из b и оставит его пустым, а оказалось что есть ньюанс.
Аноним 19/11/23 Вск 10:47:28 #514 №2927700 
>>2927692
Как и append, т.е. добавляет элемент в конец списка. Только extend принимает аргумент в виде итерируемого объекта.
Аноним 19/11/23 Вск 10:57:43 #515 №2927716 
yyyy.png
>>2927692
>ждал что pop() выкинет всё из b и оставит его пустым
Потому-что ты модифицируешь список внутри цикла for. Для понимания работы твоего for, посмотри на цикл на скриншоте.
Получается что каждый pop() сокращает длину твоего списка и на каждой итерации происходит сравнение i с длиной нового списка.
Аноним 19/11/23 Вск 11:05:24 #516 №2927723 
yyyyyt.png
>>2927716
Извиняюсь, забыл про elem. Но в твоем случае это не критично, ты не пользуешься этим элементом.
Аноним 19/11/23 Вск 11:45:28 #517 №2927763 
>>2927716
О, кажется дошло. В моём случае я ждал что итераций будет 6 но с каждым разом их становилось на 1 меньше потому что удалялся элемент, итого вышло 3.
Аноним 19/11/23 Вск 19:41:56 #518 №2928681 
Аноны я знаю питон, джанго, джанго рест, аиограм 2-3, SQL, docker, bootstrap, скрепинг через bs4 с записью в бд или csv, могу сверстать простенький некрасивый лендинг на бутстрапе, но это будет долго. Поверхностно знаком с redis. И не могу найти работу бляяяя. Вакансий на джунов нет. А на фриланс идти боюсь, вдруг мне скажут что я долбоеб и самозванец. Ещё с заказчиками общаться бляяяя. Долбоеб я или да?
Аноним 19/11/23 Вск 19:49:10 #519 №2928706 
>>2928681
>джанго, джанго рест
Начинает пованивать легаси и там джуны особо и не нужны
>аиограм
Нахуй не нужно
>SQL, docker
Единственные полезные навыки помимо питона
>скрепинг через bs4 с записью в бд или csv
Нужно 2.5 конторам
>с записью в бд или csv
Ничоси
>могу сверстать простенький некрасивый лендинг на бутстрапе
Нахуй не нужно [2]

>Долбоеб я или да
Да, вообще, твой стек напоминает какие-то курсы
Аноним 19/11/23 Вск 19:53:23 #520 №2928716 
>>2928706
Да даже если я fast api выучу, не думаю что это трудно, все равно вакансий нет. Бляяяя а что учить то надо было?
Аноним 19/11/23 Вск 20:01:56 #521 №2928740 
>>2928716
Гит, базовая работа с линухом, фаст апи, понять что такое рест и в целом виды взаимодействия с фронтом, брокеры сообщений типа реббита, задрочить SQL по мускулю/постргесу
Аноним 19/11/23 Вск 20:15:25 #522 №2928764 
>>2928740
Гит знаю
Линукс знаю
Rest примерно представляю
Rabbitmq знаю как запустить в докере, хз видимо это не считается
MySQL Postgres знаю нормально
Фаст апи выучить не проблема, но нигде не вижу чтоб кому то было надо
Аноним 19/11/23 Вск 20:49:29 #523 №2928816 
>>2928764
>Линукс знаю
Ну вот базовые знания типа симлинки, stdout/stderr, различные сигналы, в чем разница между тредом и процессом (и в целом про процессы в линухе), а так же как рестартовать сервисы и закрывать программы через командную строку.
Сможешь про это без гугла рассказать?
Аноним 19/11/23 Вск 20:57:48 #524 №2928834 
>>2928816
Зачем нахуя это мне? Я ж не иду в девопсы, не уверен что и работающие питонисты это знают
Аноним 19/11/23 Вск 21:24:30 #525 №2928882 
>>2928834
А куда логи у тебя пишутся например? Или что делать если соединение по ssh с серваком надо рестартануть? Этим не девопсы будут заниматься, а ты.
Аноним 19/11/23 Вск 22:06:01 #526 №2928955 
>>2928882
Хз честно говоря, как и где это учить. Думаю напишу говно и вперёд
Аноним 19/11/23 Вск 22:38:45 #527 №2929018 
>>2928955
Твоя задача состоит в том, что бы показать, что ты максимально состоятельная единица и не сильно охуеешь от того, что тебе придется делать на работе.
Аноним 20/11/23 Пнд 00:21:19 #528 №2929128 
>>2925307
Update: когда с домашней сетки подключаюсь - все собирается, когда в офисе это делаю - иду нахуй
Аноним 20/11/23 Пнд 02:54:07 #529 №2929174 
>>2853616 (OP)
Объясните нубу в этих ваших микросервисах, что такое API Gateway и Service Discovery, и чем они отличаются.
Предположим, что в docker-compose у меня есть сервис на FastAPI с роутерами, который через rabbitmq триггерит другой сервис-воркер, который слушает rabbitmq и в начинает выполнять какую-то тяжёлую CPU-bound задачу. В этом примере апи-сервис - это API Gateway, потому что это единая точка входа в приложение и это же одновременно Service Discovery, потому что знает, в какую очередь положить сообщение, чтобы нужный сервис тригернулся.
Или Service Discovery вообще не существует, потому что в докере все сервисы находятся в одной network и по своим именам могут друг с другом общаться и так напрямую. Если это развернуть в кубах, то там ситуация такая же. Значит, Service Discovery придумали до кубов и докера или что?
Последнее: ингрес в кубах - это что-то типо прокси-сервера, который служит единой точкой входа во внутреннюю систему кубера из сервисов, так? Считается ли это API Gateway.
Заранее извините за сумбур.
Аноним 20/11/23 Пнд 11:54:11 #530 №2929323 
Че с mypy происходит? Завожу его на проекте и он высирает уйму ошибок вида:

Cannot find implementation or library stub for module named "rpc_host.better.base"

Как видите это мои же импорты, где я из модуля rpc_host проваливаюсь в модуль better и затем в base. Что ему блять надо? Почему он не может найти мои же импорты? Обычно эта ошибка вылезает на сторонние либы, может ему че-то в опциях указать? Раньше таких проблем не было, запускал из корня через: mypy . - и оно работало
Аноним 20/11/23 Пнд 17:53:32 #531 №2929909 
ну и где перекоп, петушня?
Аноним 20/11/23 Пнд 21:56:04 #532 №2930325 
тут можно обратиться за помощью ?
пишу курсовую, календарь в боте тг который отправляет сообщения по расписанию, хочу чтоб изымал id пользователя и отправлял всем, а не только тем кто в коде забит
\\\\\\\\
стабильная версия
\\\\\\\\\\
def scheduled_job(context):
today = datetime.today().date()
send_holi_day_info(today, context.job.context)

def schedule_thread():
while True:
schedule.run_pending()
time.sleep(1)

job = schedule.every().day.at("09:00").do(scheduled_job, context="6239016784")
job.context = "000000000000"

scheduler_thread = threading.Thread(target=schedule_thread)
scheduler_thread.start()
\\\\\\\\\
\\\\\\\\\
мои потуги
\\\\\\\\\\\\\
global_user_id = ""

@bot.message_handler(commands=['start', 'menu'])
def main(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
button_info = types.KeyboardButton("кнопка")
markup.add(button_info)
global_user_id = message.from_user.id
def scheduled_job(global_user_id):
today = datetime.today().date()
send_holi_day_info(today, global_user_id)

def schedule_thread():
while True:
schedule.run_pending()
time.sleep(1)

job = schedule.every().day.at("20:45").do(scheduled_job, global_user_id= global_user_id)
job.global_user_id = global_user_id
Аноним 20/11/23 Пнд 21:56:58 #533 №2930326 
>>2930325
спасибо тем кто поможет
Аноним 20/11/23 Пнд 23:01:59 #534 №2930383 
>>2930326
тебя в чатгпт забанили или чево ебать?
Аноним 20/11/23 Пнд 23:11:15 #535 №2930390 
>>2930383
не помогает
Аноним 21/11/23 Втр 05:14:35 #536 №2930456 
2023-11-20x00:27:21.png
>>2930390
просто программирование не твое, забей хуй
Аноним 21/11/23 Втр 09:09:07 #537 №2930489 
>>2930325
Откуда ты извлекаешь id юзера? Из кнопки или сообщения? Это имеет значение. Если кнопка то callback.from_user.id и проверяй через принт какой там id каждый раз как извлёк. Узнай свой юзер id и так и чекай
Аноним 21/11/23 Втр 10:38:41 #538 №2930544 
Расскажите, на каких-нибудь джанго-фастапи-собесах алгоритмами нормально ебут? В Кнута вкатываться?
Аноним 21/11/23 Втр 11:04:50 #539 №2930559 
>>2930544
Зависит от компании и позиции, меня в циане и иннотехе самые простые задачки на логику спрашивали.
Аноним 21/11/23 Втр 11:12:50 #540 №2930576 
>>2930489
извелкаю из сообщения, комманы start menu

странно, раньше мне выдавало ошибку что job. не может быть str или none, сегодня оно просто не работает
Аноним 21/11/23 Втр 13:26:30 #541 №2930861 
>>2920929
Почему тогда школьники после 8-го как ты говоришь класса не идут сразу мидлом в биг дата или сбер? Ну они же питон знают))
Аноним 21/11/23 Втр 13:30:46 #542 №2930867 
Блин я ведь должен учить ооп а вместо этого придумываю для вас задачку на вложенные архивы, делать нехуй да?
Аноним 21/11/23 Втр 14:04:34 #543 №2930953 
>>2930867
>учить ооп
Палишься, шкила залетная.
Аноним 21/11/23 Втр 14:25:47 #544 №2930968 
>>2930953
Что не так?
Аноним 21/11/23 Втр 16:12:19 #545 №2931191 
Как писать скрейпинг всякого крутого говна, где обычно специально выделяют несколько специалистов чтобы этому противостоять? Без покупки 100500 проксей естественно. Есть продвинутые гайды?
Аноним 21/11/23 Втр 17:23:35 #546 №2931317 
>>2931191
Самому стать таким специалистом, чтобы обходить их хитрости. Гайды устаревают, защита на месте не стоит.
Аноним 21/11/23 Втр 17:48:24 #547 №2931348 
Сап погромач питоняч

Посоветуй как расти дальше?
У меня нет вышки пограмисткой, только инженерная, работаю жанго пограмачом уже 3 года, вроде начали давать тяжелые задачки, и даже на ревью не особо ебут, но как дальше расти - не понятно. Сейчас зп 150 и вроде все устраивает, но что-то неймется.

Если есть роад мап (актуальный) на сеньоритность или куда там дальше расти, или курсы какие то не бестолковые ака скилфингербокс, и прочие. посоветуйте плз.

Или пилить свой пет и на нем оттачивать новые навыки? как быть то ребят? м?
Аноним 21/11/23 Втр 21:01:33 #548 №2931619 
>>2931401
ты завидуешь что ли? Не завидуй.
Аноним 21/11/23 Втр 21:37:52 #549 №2931708 
>>2931341
Тогда, на питоне надо шлёпать через функционалку только?
Аноним 21/11/23 Втр 21:40:35 #550 №2931718 
>>2931348
как учить джанго?
читать или без задней мысли что-то создавать и в процессе научишься?
Аноним 21/11/23 Втр 22:55:49 #551 №2931879 
>>2931718
Как вообще что-либо учить?
1) Через силу по диагонали/или нет читаешь, смотришь, напрягаешь все усилия воли и концентрацию, чтобы что-то запомнить, при этом эмоционально не паникуешь, всё сразу выучить никогда не выйдет. Главное в первом этапе просто дойти до конца, чтобы было базовое представление о материале, который учишь. Это как выучить оглавление.
2) Дальше садишься что-то делать, но у тебя в голове уже есть оглавление и ты знаешь, на каую страницу книги тебе нужно зайти, чтобы узнать то, что тебе нужно. Заходишь и узнаёшь.
3) Повторяешь второй пункт 30 раз.
4) Повторяешь пункт 1 ещё раз, уже вдумчиво и с рефлексией, учитывая накопленный опыт.
5) Повторяешь снова третий пункт, потому что в прошлый раз ты полно говна накидал.
6) Повторяешь пункт 1 ещё раз, для закрепления.
7) Повторяешь второй пункт до бесконечности.
Аноним 21/11/23 Втр 22:56:56 #552 №2931882 
>>2931879
читаешь и учишь в первом пункте сразу всё.
Аноним 22/11/23 Срд 05:48:01 #553 №2932079 
Аноны, нужна помощь недалекому человеку:
https://pastebin.com/EvPK4qgP

Почему если при нажатии "похуй" в диалоговом окне что "да", что "нет", программа вылетает. Даже если просто закрыть это окно.

И еще 1 вопрос: как можно сделать, чтобы надписи на кнопках в этом окне были на русском. Типо, не "Yes" и "No", а "Да" и "Нет"
Аноним 22/11/23 Срд 06:24:44 #554 №2932085 
>>2931718
Нет, чтобы вырасти нужно не только жанга, нужно еще понимать в БД и не поверхностно и многие другие технологии помимо простых крудов внутри жанги.
Вот про оглавление этих технологиев я и хотел узнать в треде. Но тут только вкатуны - гречниевые тертые.
Аноним 22/11/23 Срд 07:40:05 #555 №2932099 
>>2932097
>завидуешь
>ограниченному жанго-дебилу

ну это только ты определяешь объекты твоей зависти, если для тебя даже дебилы недосягаемые, то ну чел, ну короче, типа ты еще ниже, понимаш?
Аноним 22/11/23 Срд 08:39:10 #556 №2932116 
>>2932100

Твое существование опровергает твой тезис. Зачем ты сам себя бьешь по лицу?
Аноним 22/11/23 Срд 16:28:26 #557 №2932643 
Нужна помощь - делаю бота в тг на питоне (pytelegrambot api)
и есть трабла с обработчиком register_next_step_handler

Общий концепт такой - пользователь нажимает кнопку в боте - ему приходит сообщение от бота - он отвечает на это сообщение - бот проводит изменения в соответствии с сообщением

Сам код выглядит так:

def handle_edit_name(call):
chat_id = call.message.chat.id
old_selection_name = call.data.split('#')[1]
print(f"Old selection name: {old_selection_name}")
old_selection_names[chat_id] = old_selection_name
msg = bot.send_message(chat_id,
"Введите новое название подборки или отправьте 'Отмена' для сохранения текущего названия.")

bot.register_next_step_handler(msg, lambda message: handle_new_name(message, old_selection_name))


def handle_new_name(message, old_selection_name):
chat_id = message.chat.id
new_selection_name = message.text.strip()

if new_selection_name.lower() == 'отмена':
bot.send_message(chat_id, "Изменение отменено.")
return

if len(new_selection_name) > 18:
bot.send_message(chat_id,
"Новое название слишком длинное. Максимальная длина - 18 символов. Введите новое название")
return

if db.check_selection_exists(new_selection_name):
bot.send_message(chat_id, "Подборка с таким названием уже существует. Введите новое название")
return

print(f"Updating selection name from {old_selection_name} to {new_selection_name}")
db.update_selection_name(old_selection_name, new_selection_name)
print("Selection name updated!")
bot.send_message(chat_id, f"Название подборки успешно изменено на: {new_selection_name}")


Сейчас бот успешно присылает мне сообщение из функции handle_edit_name, но на ответное сообщение никак не реагирует. В консоли никаких ошибок нет - видимо он тупо не попадает на вызов handle_new_name
Аноним 22/11/23 Срд 19:45:42 #558 №2932943 
222.png
объясните ньюфагу.
решил я значит раскидать свою консольную программку по отдельным файлам для прикола. и вот такая хуйня получается.
есть функция в main.py (менюшка короче). Вот я нажимаю 1, например, вызывается функция из options.py Тут своя менюшка последний пункт которой выйти назад (вызываем взад менюшку из main.py) Но так делать нельзя, типо циклический импорт хуе-мое. А как тогда делать?
Аноним 22/11/23 Срд 21:17:11 #559 №2933075 
>>2932943
У тебя очень хуевая логика в приложении получается. Ещё, если ты в тред прибежал совет спрашивать значит никаких изъянов в своей логике ты не видишь, и хочешь какой-то волшебной универсальной подсказки. Это всё в сумме значит что у тебя в голове неправильное понимание логики приложух, это не фиксится.

Что до совета - ну хз - импортируй все файлы в начале main py.
Аноним 22/11/23 Срд 21:31:32 #560 №2933093 
ПЕРЕКАТ
>>2933091 (OP)
>>2933091 (OP)
>>2933091 (OP)
>>2933091 (OP)
Робот Вася 08/01/24 Пнд 11:33:56 #561 №2993122 
Сап анончики, нужна ваша помощь, собираем робота, нужно что бы он ездил по линии через вебкамеру подвешенную на высоте 2 метра, помоги с кодом на питоне.
comments powered by Disqus

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