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

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

 Аноним 22/11/23 Срд 21:30:46 #1 №2933091 
python.png
Тред, посвящённый языку программирования Питон, #166

Предыдущий: >>2853616 (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
Аноним 22/11/23 Срд 21:48:52 #2 №2933108 
Я всё забыл и скакал по пхп, вба и мразотных павершеллах.
Везде платят деньги.
Как вернуться обатно и стать чотким питонистом с вскодами, гитами и венвами? Первым в очереди Бидон Дип Дайв в четырех частях, может ещё полирнуть книгой флюент питон.
При этом я хочу очень выучить жабаскрипт, почти к каждому сайту, который я регулярно посещаю, у меня есть юзерскрипт, у меня куча оплаченных работ на жс, но я его нихуя не знаю.
А ещё очень хочу выучить голенг, чтобы быть чотким стендэлон кодером.
Как всё это совместить?
И это я старый дид, как зумеры выдерживают такую гонку? Или у них такого нет?
Аноним 22/11/23 Срд 22:12:25 #3 №2933127 
>>2933108
Это какая-то шизопаста?
Аноним 23/11/23 Чтв 01:52:38 #4 №2933296 
image
image
Нихуя не понял, уже весь мозг сломал.
В первом случае коллбек видит переменную из верхней области видимости.
Буквально такая же хуйня во второй функции, там блять коллбек не видит переменную.
Какого хуя?
Аноним 23/11/23 Чтв 02:08:21 #5 №2933299 
image
>>2933296
С nonlocal заработал. Только, блять, остался маленький вопрос... Какого хуя тогда в первом случае мне не пришлось nonlocal указывать?
Аноним 23/11/23 Чтв 02:14:39 #6 №2933302 
image
>>2933299
Блять, я ВООБЩЕ нихуя не понял.
Почему title не требует указания nonlocal, а buffer требует?
Аноним 23/11/23 Чтв 02:41:27 #7 №2933306 
>>2933296
>args: InputArgs = ...
Анон, а для чего этот синтаксис нужен?

Попробовал вот такую хуйню в онлайн запустить.
def test():
....args1: some1 = [1]
....print(type(args1)) # -> list
....args2: some2 = 'text'
....print(type(args2)) # -> str

Сижу на 3.7, тут такого нет. Для чего это вообще?

>>2933302
Может потому что меняешь одну переменную, а другую нет.
Аноним 23/11/23 Чтв 03:02:59 #8 №2933315 
1700697779249.jpg
>>2933306
> Для чего это вообще?
никто_не_использует_типизацию_в_питоне.тхт

Чел, это указание типа переменной. InputArgs - это мой класс.
Аноним 23/11/23 Чтв 09:34:05 #9 №2933394 
Аноны подскажите новичку как код тестить, в плане что именно использовать, есть юниттест, пайтест и какие то ассерты, что из этого
мне надо? Я не в тестировщика иду а так, для общего развития.
Аноним 23/11/23 Чтв 13:44:24 #10 №2933641 
>>2933394
Можно unittest, можно pytest. Не настолько велика разница. pytest типа современнее и прогрессивнее, но не так сильно на самом деле. unittest в коробке.

Логика там примерно одинаковая. pytest современнее и менее замороченный, в чём-то он проще, unittest больше завязан на классы, чуть больше там лишних слов...

Для общего развития необходимо уметь, это ты всё правильно делаешь.

Вообще читай литературу, очень много для новичков, в том числе на русском.
Общая идея -- составляешь тест, это функция или метод класса (в юниттесте обязательно метод), внутри этой функции поверяешь, что скажем нужная рабочая функция с нужными параметрами-условиями работает так, как надо.

Понятно, что в реальной работе всё усложняется, когда всякие моки и т.п., ну это ты сам дойдёшь до этого
Аноним 23/11/23 Чтв 14:36:44 #11 №2933712 
Для чего нужен scrapy? Для каких проектов он может пригодится? В чем преимущество асинхронности, если большинство сайтов ахуевает от нагрузки request.get() в простом цикле и начинает давать ошибки. Объясните пожалуйста.
Аноним 23/11/23 Чтв 15:15:15 #12 №2933759 
>>2933641
Спасиб за развёрнутый ответ
Аноним 23/11/23 Чтв 16:06:21 #13 №2933857 
кроме шуток, я бы реально советовал вкатунам серьёзно вложиться в технологии тестирования, или pytest, или unittest. И ещё желательно в отладку и профилирование.

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

И вообще полезно, понимание улучшает очень сильно.
Аноним 23/11/23 Чтв 21:07:22 #14 №2934357 
Двач, помоги
Хз по адресу ли я, но проблема с тем что я на питоне накалякал, так что почему бы и нет.

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

Как это можно пофиксить? Отправляю тоже с яндекса (уходить не варик, корпоративная почта), не отправлять на яндекс тоже не варик - работать должно на любом ящике.
Аноним 23/11/23 Чтв 22:34:05 #15 №2934485 
>>2933857
Я когда-то вкатуном был, то не понимал смысла этих тестов. А потом как понял...
pytest, unittest, mock, patch, sanity tests, integrations tests...
Аноним 24/11/23 Птн 13:03:36 #16 №2934937 
>>2934485
Не понимаешь смысла тестов до первого заваленного теста, который раньше не валился
Аноним 24/11/23 Птн 16:30:22 #17 №2935234 
Двач, нужна помощь.
На работе использую Django + joeflow, и вот какая проблема возникает:
В админке копится куча тасков в самом низу страницы, может доходить до десятков тысяч. Надо бы пагинацию там настроить, но в самой джанге похоже этого нет. Ковырял папку аж до django\django\contrib\admin\templates\admin\edit_inline\tabular.html
это именно тот шаблон, который рендерится там, где возникает проблема, и там даже нет намека на пагинацию.
Так вот, анон, может ты знаешь, как можно добавить туда пагинацию?
Аноним 24/11/23 Птн 16:46:31 #18 №2935251 
>>2933091 (OP)
Я бек-разработчик который вынужден тесно взаимодействовать с командами DS/ML. Недавно дошло что было бы удобнее работать с командой датасаентистов следующим образом:
Они заливают весь свой код (который тоже на питоне) в определенную репу в гите, я при сборке своего питон-проекта подтягиваю код из ветки master этой репы, собираю его в некую либу и использую вызовы методов/функций из этой либы

Но у меня нет подобного опыта. Как это проворачивать? Как подтягивать код из удаленного репозитория и собирать его в "либу" которая будет юзаться у меня? Я всегда подтягивал код при помощт команд pip install / poetry install где в конфиг-файле я прописывал название либы и версию, но это ж только в случае если либа лежит в pypi, это не мой случай
Аноним 24/11/23 Птн 18:50:19 #19 №2935419 
>>2935251
https://stackoverflow.com/questions/20101834/pip-install-from-git-repo-branch
Аноним 24/11/23 Птн 20:10:22 #20 №2935527 
https://onecompiler.com/python/3zufku8n8

Какого хуя тут происходит? Если убрать " -> tuple[int, int]", то работает, а с ним нет. Синтаксис вроде верный.
Аноним 24/11/23 Птн 20:21:19 #21 №2935536 
>>2935527
В иде всё работает, наверное на сайте косяк.
Аноним 24/11/23 Птн 20:24:46 #22 №2935546 
>>2935527
Ну кстати даже если убрать только "[int, int]" но оставить "-> tuple", так тоже работает.
Аноним 24/11/23 Птн 20:26:38 #23 №2935550 
Снимок экрана от 2023-11-24 23-25-56.png
>>2935527
Аноним 24/11/23 Птн 20:35:37 #24 №2935570 
>>2935527
У них старая версия питона, где для таких штук нужно было импортировать Tuple из модуля typing
Аноним 24/11/23 Птн 20:37:23 #25 №2935576 
image
image
image
image
>>2935536
>>2935546
>>2935550
По-видимому, это связано с версией питона на этих сайтах. Тайп-хинты с 3.5 поддерживаются, хз че они падают. Видимо, не все виды тайп-хинтов во всех версиях поддерживаются.
Аноним 25/11/23 Суб 00:35:46 #26 №2935883 
>>2935576
Потому что до 3.10 нельзя было для коллекций писать типы элементов.
Аноним 25/11/23 Суб 15:58:24 #27 №2936490 
>>2935883
>>2935576
В старых версиях питона надо было через
from typing import Tuple

https://docs.python.org/3.8/library/typing.html#typing.Tuple
sage[mailto:sage] Аноним 25/11/23 Суб 17:52:44 #28 №2936691 
>>2935234
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_per_page
Аноним 25/11/23 Суб 19:06:12 #29 №2936802 
>>2933091 (OP)
Сап, аноны. Я в питоне новичок, да и вообще моя профессия не связана с программированием (я биохимик-докторант). Но когда-то учил питон и взялся написать одну программу.

В общем, она уже почти готова, но столкнулся с одной проблемой. Вот есть страница, если я правильно понимаю с динамическими элементами на яваскрипт https://kinase-library.phosphosite.org/site . Там есть форма и надо отправлять запросы по списку типа DLSDDDSDLDDS (это последовательность аминокислот если что, означает аминокислоту с фосфатной группой). Хотя формы на html я не нашел, соотствующие запросы можно отправлять тупо используя адресную строку "https://kinase-library.phosphosite.org/site?s=DLSDDDS*DLDDS&pp=false&scp=true" без всяких форм. Проблема в том, что надо выдернуть из данных на этой странице названия первых трех киназ в таблице (в данном случае PLK1, ACVR2B, ACVR2A). И заковыка в том, что html код страницы с запросом (в смысле если нажать source code в mozilla) и страницы с ответом одинаков. Как я понимаю, эту таблицу генерирует какой-то яваскрипт в реальном времени используя базу данных. Так вот, как выдернуть эту информацию или хотя бы подскажите в какую сторону копать. В учебниках такого нет, либо плохо искал

Не дебил, дудосить сайт своими запросами не собираюсь, хотя их планируется пара тысяч, думаю делать между ними перерывы в 10-20 секунд.
Аноним 25/11/23 Суб 19:10:24 #30 №2936811 
>>2936802
DLSDDDS*DLDDS (это последовательность аминокислот если что, звездочка означает аминокислоту с фосфатной группой).
Аноним 25/11/23 Суб 19:53:17 #31 №2936893 
>>2936802
Там при нажатии кнопки запросов нет, скорее всего это ЖС либа у них написана, которая все вычисляет
Можно заюзать селениум, но у них может стоять защита от такого и возможно, что придется ее обходить (а может и нет)
А ты либы на питоне пробовал искать?
Аноним 25/11/23 Суб 20:06:08 #32 №2936912 
>>2936802
Ты нормально написать можешь, биохимик-докторант, ёб твою мать.
Просто написать: есть страница вот ссылка. Нужно выдернуть вот это говно: прикладываю скриншот.
Просто пиздец. Я 2 раза прочитал, ничего не понял. Киназы какие-то.
Вы там все такие?
Аноним 25/11/23 Суб 20:10:37 #33 №2936931 
>>2936802
Там под таблицей кнопка "скачать результат". Можешь скачать результирующую таблицу как файл, открыть обычным образом в питоне как текстовый файл и посмотреть в ней любые данные.
Аноним 25/11/23 Суб 20:14:22 #34 №2936944 
>>2936931
Можно наверно даже не сохранять файл на диск, а прямо из полученной переменной реквеста смотреть. Но сохранить временный файл проще всего для нюфани. Мозги себе не конефолить, за одно бэкап полученных данных делать удобнее, на будущее, для отладки.
Аноним 25/11/23 Суб 20:51:27 #35 №2937012 
>>2936944
>>2936931
А не, кнопка тоже в JS, тогда файл скачивать можно только через селениум. Хотя я слышал что можно и через requests_html как-то измудриться. Впрочем это не важно.

Зайди во вкладку хрома отладка -> нетворк -> Fetch/XHR
Сделай свой запрос.
Там одна из строк появится такого вида
>https://kinase-library.phosphosite.org/api/scorer/score-site/DLSDDDS*DLDDS/Homo%20sapiens%20(Human)/OCHOA/true/false
Как видишь это ответ от апи, который возвращает твою таблицу в не сортированном виде. Попробуй с ней поработать. Сортировка в этой таблице насколько я понял идет в поле "quantileRank". Т.е. то что там первое имеет поле "quantileRank":1, то что там второе "quantileRank":2

Давай дальше сам, мелкие вопросы если возникнут решай через чат GPT на официальном сайте можно по русски с ним общаться.
Аноним 25/11/23 Суб 20:59:45 #36 №2937033 
kinases.png
>>2936893
>>2936912
>>2936931
>>2936944

Спасибо за ответы и пардон, из данной ссылки "https://kinase-library.phosphosite.org/site?s=DLSDDDS*DLDDS&pp=false&scp=true" нужно стянуть вот эти три названия, которые на пикче обведены.

> А ты либы на питоне пробовал искать?
Я и планировал использовать selenium и pandas

>Вы там все такие?
Не все, мне многие говорили, что я очень хуево объясняю. Поэтому и не стремлюсь преподавать.

>>2937012
Спасибо за наводку, буду пытаться разбираться
Аноним 25/11/23 Суб 21:02:56 #37 №2937042 
>>2937033
Чел делаешь запрос к апи
>https://kinase-library.phosphosite.org/api/scorer/score-site/DLSDDDS*DLDDS/Homo%20sapiens%20(Human)/OCHOA/true/false
Тебе приходит питоновский словарь.
Первые три значения это элементы словаря с полями "quantileRank":1, и соответсвенно 2 и 3

Всё.
Аноним 25/11/23 Суб 21:07:54 #38 №2937057 
>>2937042
>Тебе приходит питоновский словарь.
Или json
Аноним 25/11/23 Суб 21:40:41 #39 №2937146 
>>2937033
Держи дружок

https://www.online-python.com/IDaBTgCv6p

Из онлайн сервиса реквест не делается, просто код оттуда скопируй.
Аноним 25/11/23 Суб 22:27:01 #40 №2937232 
Я там для вас кое-что спрятал
https://dropmefiles.net/ru/wc5CQTy
Аноним 25/11/23 Суб 23:59:47 #41 №2937369 
image.png
По этому уроку https://youtu.be/1quKqf47V6s?si=G_TR2Ng3cYTbxqag натренил свою нейросеть по распознанию объектов на картинке, все работает, но проблема в том, что он детектит только один объект. Как сделать, чтоб выдал список всех найденных объектов?
Вот код: https://colab.research.google.com/drive/120nbtB3ywlPM0b-4QlcVVW_UmJdZacY4?usp=sharing
Аноним 26/11/23 Вск 01:10:56 #42 №2937466 
>>2937369
Зайди на канал в раздел "About", там будут контакты. Пиши туда.
Аноним 26/11/23 Вск 01:59:59 #43 №2937483 
>>2937042
>>2937146
Спасибо большое!
Аноним 26/11/23 Вск 08:32:57 #44 №2937524 
image.png
image.png
>>2937369
он детектит 5 объектов
Аноним 26/11/23 Вск 16:48:42 #45 №2938070 
image
Да как вкатиться в этот ваш питон???
Аноним 26/11/23 Вск 20:47:56 #46 №2938408 
>>2938070
Не лучшее решение в конце 2023.
Аноним 26/11/23 Вск 20:59:28 #47 №2938434 
>>2938408
А что лучше?
Аноним 26/11/23 Вск 21:22:23 #48 №2938458 
image
>>2938408
Да ладно?
Аноним 26/11/23 Вск 21:59:48 #49 №2938505 
>>2938458
Ок, вкатываюсь в html.
Аноним 26/11/23 Вск 22:24:23 #50 №2938529 
>>2937524
Не, я не про это. Мне надо чтоб детектил одновременно несколько объектов на одной картинке.
Аноним 27/11/23 Пнд 05:09:11 #51 №2938727 
>>2938529
это другая задача, у тебя код на classification
тебе нужно на object detection
всякие yolo, RCNN
Аноним 27/11/23 Пнд 09:22:14 #52 №2938780 
16943339524530.png
>>2938458
Питономакак уже настолько много, что за одно рабочее место бьются десятками, если не сотнями. По году и два работку найти не могут. Херки на таких вакансиях ахуели от спроса настолько, что ссут на головы кандидатам уже почти буквально.
Аноним 27/11/23 Пнд 09:24:02 #53 №2938781 
>>2938780
>>2938458
К тому же, Питон - это часто вспомогательный язык. Также, как HTML/CSS или SQL на твоем же графике.
Аноним 27/11/23 Пнд 09:26:27 #54 №2938782 
>>2938434
Смотря к чему душа лежит. Сишные языки дадут тебе намного больше. Макакить в Питоне - это конечно хорошо, но это уровень владения тем же Excel или Word. Не будешь же вкатываться в Excel и Word, этот вспомогательные инструменты для работы.
sage[mailto:sage] Аноним 27/11/23 Пнд 09:37:31 #55 №2938792 
>>2936691
Друг, это настраивает количество строк скажем так "на первом уровне" админки. То есть можно настроить количество выводимых строк экземпляров одной модели.
Но моя проблема в другом:
Когда проваливаюсь в модель joeflow, открывается кастомная админка, которую поставляет joeflow. Так вот в ней уже, в самом низу, есть поле Tasks, по умолчанию скрытое. Оно сразу содержит вообще все таски без пагинации из-за этого может очень долго грузиться страница, поэтому хочу настроить пагинацию именно в этом поле
sage[mailto:sage] Аноним 27/11/23 Пнд 10:06:56 #56 №2938811 
>>2938792
да, немного не так тебя понял. почитай как работает (пагинатор)[https://docs.djangoproject.com/en/4.2/ref/paginator/] и сделай по образу и подобию любой батарейки по типу (django-admin-inline-paginator)[https://github.com/shinneider/django-admin-inline-paginator). только не забудь переопределить get_queryset, добавив prefetch_related, в ModelAdmin чтобы избавиться от n+1 query
Аноним 27/11/23 Пнд 10:28:27 #57 №2938831 
>>2938458
Пчел, это работает, если ты не-джун, график для мидлосенек.
sage[mailto:sage] Аноним 27/11/23 Пнд 10:45:28 #58 №2938851 
>>2938811
Добра тебе, анон, получилось
Аноним 27/11/23 Пнд 11:43:28 #59 №2938919 
>>2938780
То ли дело джаваскриптизёров-верстальщиков не хватает, да?
Аноним 27/11/23 Пнд 11:50:15 #60 №2938927 
>>2938781
Мм полноценный бэкенд-язык называть вспомогательным, в таком случае джава и шарпы тоже вспомогательные.
>сотня бьётся за вакансию
99 из которых окончили курс "бекенд-розрабочек за 6 месяцев" где они как макаки повторяя за преподом пилили телеграм-ботов и туду-лист на жанге, даже не понимая нахуя они ту или иную кнопку нажимают.
Аноним 27/11/23 Пнд 12:25:06 #61 №2938993 
Вкатываюсь в бэкэнд.
Жанга или БыстраАПИ?
Жанка олдовая, уже скуфом потягивает, а БыстраАПИ быстрый, модный, молодежный.
Пока что склоняюсь к жанго, т.к. там наверняка кучу легаси накодили, а значит работы больше.

Интересует только с точки зрения вката, мне без разницы на чем views пилить.
Аноним 27/11/23 Пнд 12:36:40 #62 №2939011 
>>2938993
Смотри по вакухам в твоем городе, я бы фастапи учил. Но учти, что там еще дохуя всего есть помимо взаимодействия с фронтом. Я в этом году максимум пару часов гейтвей для других сервисов трогал.
Аноним 27/11/23 Пнд 12:40:45 #63 №2939018 
>>2938927
>99 из которых окончили курс "бекенд-розрабочек за 6 месяцев"
Утрируешь. Сейчас питон учат в каждой школе и пихают даже на гуманитарные направления каким-нибудь психологам.
Аноним 27/11/23 Пнд 12:47:27 #64 №2939032 
>>2939018
Там его учат на очень примитивном уровне, буквально для задачек ЕГЭ.
Аноним 27/11/23 Пнд 12:52:11 #65 №2939048 
>>2939032
А больше и не надо. Это же питон, а не жава. Нахуя тут сложность
Аноним 27/11/23 Пнд 12:57:56 #66 №2939070 
>>2939011
Django и FastAPI сильно отличаются? Просто будет на FastAPI перекатиться, если уже +- хорошо знаешь Django?
sage[mailto:sage] Аноним 27/11/23 Пнд 13:14:14 #67 №2939114 
>>2939070
Да не особо, просто в джанге много чего под капотом уже есть, а в фастапи будешь библиотеки подключать
Аноним 27/11/23 Пнд 13:51:43 #68 №2939189 
>>2938927
>Мм полноценный бэкенд-язык называть вспомогательным, в таком случае джава и шарпы тоже вспомогательные.
java/c#/c++/c это языки системного программирования, там куча проектов, где немеряный объём кода, который функционал реализует.

А питон прикладной язык, для взаимодействия с чем-то. Особо сложный объёмный код на питоне не делают.

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

Это не делает подготовку разработчика на питоне более лёгкой, скорее наоборот.
Аноним 27/11/23 Пнд 14:01:49 #69 №2939208 
>>2939189
>объёмный код на питоне не делают
Что и нинужно. 2023 год на дворе, кто не может в микросервисы, тот идет нахуй в свою ынтыпрайз легаси помойку работать за еду.
Аноним 27/11/23 Пнд 14:30:08 #70 №2939267 
image.png
>>2939208
>микросервисы
>scalable
>microfrontend
>distributed
>DB per service
Ребенок, ты хоть работал где-то?
Аноним 27/11/23 Пнд 14:48:58 #71 №2939299 
>>2939189
>достаточно знать джаву, а питон прикладной
Чем бэк на жаве принципиально отличается от любого другого языка-нейм? Тебе точно так же надо знать фреймворк, базы данных и ещё какую-нибудь хуйню которую вы используете в проде.
Аноним 27/11/23 Пнд 15:19:12 #72 №2939361 
>>2939299
>Чем бэк на жаве принципиально отличается от любого другого языка-нейм?
классический бэк и не нужно на джаве делать, на джаве можно делать тяжеловесный системный софт, где вся логика внутри кода
Аноним 27/11/23 Пнд 16:55:14 #73 №2939593 
>>2938780
Утиные истории.

>>2938781
Ну я вижу ты сам не вкатился. Питон полноценный яп для бекенда, датасаенса, прототипирования и дохуя чего еще.

>>2938831
Это проблема не питона, а в целом рынка труда в РФ, где обнаглевшие мрази хотят себе тиму синьоров за бесценок получить.
Аноним 27/11/23 Пнд 18:01:53 #74 №2939711 
>>2939593
>Питон полноценный яп для
>датасаенса, прототипирования
>ДЛЯ
>ДЛЯ
Ты сам-то понял, что сказал? Питон - это инструмент. Задачи датасаенса, например, куда шире, чем знания и скиллы по Питону, хотя Питон в состоянии решить почти все задачи, стоящие перед датасаентистом. Поймаешь смысл или разжевать и между ушей затолкать?
Аноним 27/11/23 Пнд 18:33:20 #75 №2939792 
>>2939711
Дружище, я прекрасно русский язык знаю. Учись интерпретировать обобщенные формулировки.
Аноним 27/11/23 Пнд 21:59:29 #76 №2940116 
>>2938782
>это конечно хорошо, но это уровень владения тем же Excel или Word. Не будешь же вкатываться в Excel и Word, этот вспомогательные инструменты для работы.
Хорошо, а какой тогда вспомогательный инструмент у тех, кто работает в проектах на джанге, фастапи?
Аноним 27/11/23 Пнд 22:00:02 #77 №2940117 
>>2940116
>тогда основной инструмент
фикс
Аноним 27/11/23 Пнд 22:43:38 #78 №2940196 
>>2938782
>Смотря к чему душа лежит. Сишные языки дадут тебе намного больше.
Что могут дать "сишные языки" (JavaScript что-ли?) из того, чего не может дать питон? Они беднее на самом деле. Особенно если смотреть на голый Си.
Аноним 27/11/23 Пнд 22:51:07 #79 №2940220 
>>2940196
А на чем твой путон написан, богатый ты наш?
Аноним 27/11/23 Пнд 23:18:12 #80 №2940251 
>>2940220
На вопрос ответь. Чем Питон беднее, чем JS или C.
Аноним 28/11/23 Втр 00:14:46 #81 №2940321 
Есть async функция, внутри которого есть if then else. В одном случае запускается await функция, во втором - возвращается None. Надо ли во втором случае использовать asyncio.sleep(0)? Прошарился по форумам, документациям, везде пишут что надо, но в репозиториях такое я видел очень редко. Если его надо использовать, значит ли это, что его надо вставлять во всех async функциях, где может не ввполниться await по какойлибо причине? Это же пиздец как сильно загрязняет код.
Аноним 28/11/23 Втр 00:22:23 #82 №2940326 
>>2940321
>Прошарился по форумам, документациям, везде пишут что надо
Нахуя?
Ну вот ты сам-то сможешь объяснить - нахуя? В чем профит?
Аноним 28/11/23 Втр 00:49:27 #83 №2940349 
>>2940326
В противном случае функция становится синхронной со всеми вытекающими.
Аноним 28/11/23 Втр 00:52:43 #84 №2940352 
>>2940349
Добавлю, асинхронная функция становится синхронной. Это запутывает её поведение при использовании. Когда ожидается что она будет передавать управление циклу - она этого делать не будет. asyncio.sleep(0) позволяет вернуть управление циклу и высвободить ресурсы.
Аноним 28/11/23 Втр 01:20:33 #85 №2940370 
https://github.com/numba/numba/issues/5903

При передаче в фунцию kw-аргумента, если используешь numba (а точнее декоратор jit) словишь гарантированный эксепшн епта, потому что jit тупой и не понимает дефолтных аргументов. Этой проблеме уже больше 3 лет, ни одна блядь и не думает фиксить. Ахуенная либа, всем советую (нет)
Аноним 28/11/23 Втр 01:25:34 #86 №2940374 
>>2940349
Чиво блять? Ты понимаешь что функция становится "асинхронной" в момент ее объявления через async и ей вот вообще похую, есть у нее внутри await-ы или нет?

>Когда ожидается что она будет передавать управление циклу - она этого делать не будет
"Переключение контекста" произойдет в момент когда ты эту функцию вызовешь через await, ничего там блокироваться не будет
Аноним 28/11/23 Втр 04:39:03 #87 №2940391 
>>2940374
await не гарантирует передачу управления эвент лупу

>>2940321
> везде пишут что надо
что именно пишут

если весь этот путь, возвращающий None, не занимает большое количество времени, то не нужно
отдав управление обратно в луп, ты ведь можешь отложить исполнение корутины которая вызвала эту, не?
Аноним 28/11/23 Втр 10:48:16 #88 №2940499 
>>2940374
Да я просто хочу как лучше, чё ты накинулся-то сразу. Разве плохо делать хорошо?
>>2940391
Вот я как раз и про то что await не гарантирует передачу управления, если внутри async функции нечего ожидать.
Нет, не занимает много времени, я разницы по крайней мере не увидел, но и когда именно следует использовать asyncio.sleep(0) тоже не очень понимаю.
Аноним 28/11/23 Втр 10:57:43 #89 №2940510 
>>2940499
>но и когда именно следует использовать asyncio.sleep(0) тоже не очень понимаю
Когда есть жирная функция, которая блокирует выполнение других корутин дольше чем нужно, тогда и надо вставлять.
Аноним 28/11/23 Втр 12:28:08 #90 №2940647 
>>2940510
Жирные функции запускаются в executor-е по известному интерфейсу
Аноним 28/11/23 Втр 13:33:24 #91 №2940713 
Кот идет.mp4
Питоняши, подскажите начальный стек для веба на Питоне. Именно начальный.

Подойдет ли такое:
- собственно сам Python;
- Django или FastAPI;
- SQL;
- JavaScript или TypeScript или Dart в объеме необходимом фронта
- HTML и CSS (есть ли какая-то CMS, которая может полноценно заменить этот пункт?)
Аноним 28/11/23 Втр 13:34:43 #92 №2940717 
>>2940713
Ты опозадл на пару лет
Вкатунов на питоне уже столько, что херки не знают как от них отбиваться, даже отказы уже не присылают
Аноним 28/11/23 Втр 13:38:42 #93 №2940727 
>>2940717
Я число для себя. Устраиваться к кабанчику не собираюсь.
Аноним 28/11/23 Втр 13:38:59 #94 №2940729 
>>2940647
Или не запускается, потому что сериализация/десериализация занимает больше времени чем само выполнение
Аноним 28/11/23 Втр 13:43:16 #95 №2940741 
>>2940713
Начальный fastapi, pydantic, aiohttp и прочую шелуху, фреймворки для бд, про sql не знаю, я с монго везде работаю через motor. Остальное хз, не работаю с фронтом. Инфраструктурные ubuntu, redis, nginx и docker с git по умлочанию конечно же. Неплохо было бы ещё что-то навроде jenkins знать, хотя вряд-ли напрямую с ним будешь иметь дело.

Вообще по вакансиям смотри что требуют. Если уж хотят древнюю джангу, то что ж поделать, к нему тоже целый букет фреймворков идёт, загуглишь.
Сразу сходу на фулстек идея не очень как по мне. Выбери один стул и сиди пока на нём.
Аноним 28/11/23 Втр 13:48:01 #96 №2940749 
>>2940741
Алсо про всякие DI пока не думай, не засоряй себе голову раньше времени. И смотри другие репы на гитхабе кто как структуры проектов делает, чтоб иметь представление.
И да, на гитхабе с кучей звёзд тоже много говнокодеров сидит, так что это не истина последней инстанции. Я когда смотрел исходники fastapi очень много раз кринжанул на отличненько.
Аноним 28/11/23 Втр 13:53:33 #97 №2940758 
>>2940741
>fastapi
Получек, знаю Django
>pydantic
Не было необходимости его использовать
>aiohttp
Не щупал
>фреймворки для бд
Нет, ну джанго ОРМ щупал, чек

Остальное анчек. Пиздос, а я думал, что с моим стеком Python/Django/DRF можно уже вкатываться начинать.
Аноним 28/11/23 Втр 14:03:32 #98 №2940775 
11.jpeg
>>2940741
>>2940749
Спасибо тебе, анон. Держи красную панду.
Аноним 28/11/23 Втр 15:25:59 #99 №2940896 
Для треда не нужна никакая сериализация
Аноним 28/11/23 Втр 15:26:23 #100 №2940897 
>>2940729
>>2940896
Аноним 28/11/23 Втр 15:47:26 #101 №2940931 
>>2940758
Используй пидантик. Очень удобно валидировать данные и делать структуры. На его основе как раз и использую связь с монго через motor. Ответы запросов, сами запросы и тд.

Ну, а что ты хотел. Надо знать много чего. Хотя бы иметь представление что это такое и как с ним работать.

Просто посмотри как деплоятся проекты и как они поддерживаются потом, как обновляются и тд. Много инструментов есть. Знать вот прям всё до точки не надо, только самое основное. Остальное в процессе.
Забыл ещё про uvicorn упомянуть и uvloop. Тоже полезно.
Аноним 28/11/23 Втр 18:07:13 #102 №2941250 
>>2940741
Питон, получается — это расширенный скриптовой язык... То есть, скрипт. Как Bash.
Аноним 28/11/23 Втр 18:09:00 #103 №2941255 
>>2940758
Все так лихо перечисляют какие-то стеки, на деле, применив пару функций и часами лазая по мануалу. Знание — это когда ты без мануала пишешь, без ползания по документации. Ну и физически невозможно знать больше 7–8 продуктов хорошо. Это будет уровень «гуглоинтеллекта» — чё нашёл на СО, то, типа, твоё.
Аноним 28/11/23 Втр 18:54:40 #104 №2941320 
>>2941255
Но ведь каждый обязан вызубрить алгоритмы и паттерны чтобы получить оффер на перекрашивание кнопочек.
Аноним 28/11/23 Втр 19:28:21 #105 №2941382 
>>2941250
Баш который по производительности работает на уровне голанга, при этом еботни с деплоем меньше, лучше поддержка и кодовая база.
Аноним 28/11/23 Втр 19:30:19 #106 №2941389 
>>2941255
Сейчас не 90е чтоб знать все либы наизусть. Они меняются и обновляются каждый день. Гораздо более полезный скилл - уметь разобраться в них как млжно быстрее и понимать где можно применить новые фичи.

А все эти заучки-зазубрички до сих пор пишут на втором питоне, потому что в голове не осталось места для чего-то нового.
Аноним 28/11/23 Втр 19:31:14 #107 №2941394 
>>2941320
А ещё написать свою ос, без этого никак
Аноним 28/11/23 Втр 23:33:00 #108 №2941673 
Чики, двощ.
Изучаю selenium, пытаюсь парсить инфо с сайта, который полностью грузится в js. Если wget'ом загрузить страницу, на ней будет с десяток скриптов и надпись "чтобы всё работало, включите скрипты"
Вот с какой проблемой столкнулся: страница грузится некоторое время, во время загрузки висит splash screen. Соответственно, прежде чем лазить по элементам, нужно дождаться загрузки. В селениум можно сказать "тупо жди n секунд", но это же херня, есть гораздо более удобный и продвинутый webdriverwait.
Я делаю вот так:
button = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, button_xpath)))
То есть по идее, селениум должен подождать, пока на странице появится элемент с нужным xpath, после этого уже делать дела. Если элемент не появился после таймаута, выкинуть ошибку. У меня всё работает, НО иногда, даже когда я уже вижу загруженную полностью страницу, селениум ждет полностью 20 секунд, несмотря на то, что нужный элемент уже присутствует. Всё обгуглил, нигде ничего нет, всё должно работать, как я и задумывал. ЧЯДНТ inb4 используешь selenium
Или, может это какая-то хитрая защита от скаппинга? Пару раз меня на этом сайте уже блокировало, приходится использовать undetected_chromedriver
Аноним 28/11/23 Втр 23:35:45 #109 №2941676 
До весны надо написать приложение для студентов и элективных курсов (чтобы преподаватель мог круд курсы, студент записываться на курсы) и по критериям получался список. До этого с Джанго не работал, справиться шансы есть? Как должны реализовываться разный функционал для преподавателя и студента? Разные виды сайтов?
Аноним 28/11/23 Втр 23:39:41 #110 №2941679 
>>2941676
Фронт тоже ты пишешь?
Аноним 28/11/23 Втр 23:43:30 #111 №2941681 
>>2941679
Вроде нет, фигматочно уже готовая есть
Аноним 28/11/23 Втр 23:46:17 #112 №2941683 
изображение2023-11-28234556922.png
Здравствуй, доргой анон, я рушил вкатиться в python,
скачал pycharm и при открытии круглых скобок вылезает какая-то херня.
Подскажите пожалуйста как эту херню пофиксить?
sage[mailto:sage] Аноним 29/11/23 Срд 00:13:55 #113 №2941701 
>>2941683
толсто. это сигнатура функции print.
Аноним 29/11/23 Срд 00:36:58 #114 №2941711 
>>2941683
>скачал pycharm
Зачем он тебе?
sage[mailto:sage] Аноним 29/11/23 Срд 00:38:32 #115 №2941712 
>>2941683
ставь Gentoo Linux, на Microsoft Windows это не фиксится
Аноним 29/11/23 Срд 03:13:17 #116 №2941737 
>>2941683
Ахах
Аноним 29/11/23 Срд 06:40:36 #117 №2941767 
20d99e6fe5d771d7e3fa13aef1591ec4.jpg
ААААААААААААААААА БАШКА ПУХНЕТ
Выучил основы Питона, а там оказывается всякие comprehensions, decorators, generators.
Ладно, вроде разобрался с декораторами, можно уже какой-нибудь фреймворк для работки выучить.
Написал говно на голой Джанге с темплейтами. Получилось конечно же говно, нужно писать API и делать интерфейс для этого API, а для этого нужно:
1. Выучить DRF
2. Выучить JS/React
3. Хочешь аутентификацию? Ну на тебе несколько способов, ебись с ними. Хочешь грузить картинки и видосики в БД? Кек, ну на еще говнеца поешь, инфу покури.

Ой, чет у тебя сайт как говно выглядит. Ну-ка садись учить CSS, чтобы красиво было.

А бросать пет не хочу, т.к. он наполовину готов, осталось совсем немного.
Как же я завидую челам, которые вкатывались лет 7 назад, тогда говна в разы меньше было.
Аноним 29/11/23 Срд 06:58:08 #118 №2941772 
>>2941767
>Выучил основы Питона, а там оказывается всякие comprehensions, decorators, generators.
Т.е. ничего не выучил.
Аноним 29/11/23 Срд 07:08:11 #119 №2941776 
ясмог.png
>>2941767
> а там оказывается всякие comprehensions, decorators, generators
это основа, база так сказать
Аноним 29/11/23 Срд 07:10:23 #120 №2941777 
>>2941772
Да выучил я это все уже, в доке питона внезапно все годно расписано.
Другое дело, что нужно еще кучу дерьма выучить и конца этому не видно.
Аноним 29/11/23 Срд 07:52:27 #121 №2941787 
>>2941382
>по производительности работает на уровне голанга
Это тебя кто-то обманул)
Библиотеки, написанные на С/С++, может, и работают на таком уровне, сам питон работает на уровне скрипта шелла по скорости.
Аноним 29/11/23 Срд 07:53:45 #122 №2941788 
>>2941389
Так и вижу сутулого подонка, который «нилюблю в этай вашый легаси капацца, мне нужна каждый день новая бебелеотека!»
Аноним 29/11/23 Срд 09:23:10 #123 №2941814 
image.png
Это какой-то позор
Аноним 29/11/23 Срд 09:36:06 #124 №2941821 
>>2941814
И, сука, мажорный баг у них на это висит с 2020 года

С радостью бы перешел на вскод, но делаем в пч потому что он проще для планктона. Которому эти хинты и варнинги и предназначаются, собственно.
Аноним 29/11/23 Срд 09:47:09 #125 №2941828 
>>2941814
весь питон - сплошной позор
Аноним 29/11/23 Срд 10:06:26 #126 №2941842 
15593828654730.png
>>2941777
> учить наизусть
Аноним 29/11/23 Срд 10:14:13 #127 №2941846 
>>2941788
Ну кто ж виноват что у тебя голова что-то дальше легаси не может осилить.
Аноним 29/11/23 Срд 12:23:35 #128 №2942025 
>>2941842
А как правильно? Просто знать как работает и всё?
Аноним 29/11/23 Срд 12:54:40 #129 №2942091 
>>2942025
Правильно соблюдать баланс, а не уходить в крайности.
Аноним 29/11/23 Срд 13:36:58 #130 №2942154 
>>2942025
>Просто знать как работает и всё?
Ну судя по местным даунам, у них прям оферов за это у каждого по чемодану, а дальше оне в документации месяц покопаются и что-то с стековерфлоу за три минуты спиздят — вот и работа сделана. Принципы же знаешь? Вот. Уже профессионал.

Я так принципы боевого пилотирования знаю — за два десятка лет отточил на симуляторных игорях. Я — пилот-асс.
Аноним 29/11/23 Срд 14:39:01 #131 №2942228 
>>2942154
Слово "выучил" какое-то неправильное, неуместное. Звучит так, как будто выучил стих, или названия какие-нибудь.

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

Вот эти декораторы, надо понимать, как ими пользуются, как они работают, уметь разбираться в чужих декораторах и свои делать.

И вообще надо уметь разбираться в логике программ, написанных на питоне.
Аноним 29/11/23 Срд 15:30:43 #132 №2942360 
>>2942228
>понимать
Как бы книжки тем и отличаются от документации, что поясняют принципы и задачи, а не просто перечисляют набор лексем. Следовательно, выучить книжку синонимично пониманию, а не просто зазубриванию.
Аноним 29/11/23 Срд 16:13:39 #133 №2942481 
>>2942360
Но тут речь как раз идёт о зазубривании. Челик выучил какой-то набор и не понимает что делать дальше. Так не бывает. Значит он просто заучил методы, но не понял их смысл.
Аноним 29/11/23 Срд 16:46:17 #134 №2942541 
>>2942481
ХЗ чего там чел >>2941767 имел в виду

мне вообще не понятно, что такое "выучил язык". Когда человек с приличным опытом программирования такое говорит, это понятно ещё. Но проблема изучающих в том, что они просто не умеют программировать, не понимают ИТ и т.п.

Реально ведь многие думают, что вот я сейчас "выучу питон" и смогу работать.
Аноним 29/11/23 Срд 16:47:00 #135 №2942543 
Пара годных ссылок, возможно будет полезно для шапки:

https://github.com/yakimka/python_interview_questions

https://medium.com/nuances-of-programming/80-%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85-%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D0%BE%D0%B2-%D0%BF%D0%BE-python-%D0%B4%D0%BB%D1%8F-%D1%81%D0%BE%D0%B1%D0%B5%D1%81%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-8096eb09cb39

В библиотеку добавил книгу "Рамальо Лучано - Python. К вершинам мастерства. 2-е издание (2022).pdf.pdf", если есть еще что-то свежее и интересное - пишите здесь или на почту.
Аноним 29/11/23 Срд 19:07:07 #136 №2942866 
В рамках лабораторной работы дали задание, которое не могу сделать так, как требуют. Вот не выходит. Помогите выполнить. Лучше с каким-либо объяснением.

Задайте с клавиатуры (через input()) строку, которая представляет собой набор слов через запятую (например ’Good,Day,Mister,Anderson’).
С помощью метода split() разделите эту строку по разделителю ’,’ и поместите результат в список ’a’. Выведите список ’a’на экран.
Создайте новый пустой список ’b’.
Переберите все элементы из списка ’a’ и если в текущем элементе есть символ ’e’, то добавьте его в список b.
Объедините список ’b’ с помощью метода join() с разделителем ’,’ и выведите результат.


Сам решил вот так:
a = input()
a1 = a.split(',')
print(a1)
b = []
for i in a1:
if 'e' in i:
b.append(i)
print(','.join(b))
sage[mailto:sage] Аноним 29/11/23 Срд 19:30:20 #137 №2942947 
>>2942866

source = input()

a = source.split(',')
print(a)

b = [
word
for word in a
if 'e' in word
]
print(
','.join(b)
)
Аноним 29/11/23 Срд 19:35:30 #138 №2942955 
>>2942866
проблема только с именованием

>>2942947
тут не создается пустой список b, а используется list comprehension
Аноним 29/11/23 Срд 21:49:17 #139 №2943080 
>>2933091 (OP)
Все. Привет.
Хочу написать не такой и простой, но и не особо сложный бот для телеги.
Есть ненулевая вероятность, что им одновременно будет пользоваться до 5 человек.
А еще желательно, чтобы он жрал минимальное количество ресурсов
Есть ли смысл писать на aiogram? Для меня это немного новая тема. Или телебота хватит?
Есть ли те, кто брал и то и другое? Сильно ли различается потребление ресурсов? Это является ключевым вопросом, сложность разработки и новое не пугает. Короче, если есть мастера, трогавшие оба, просьба дать свой честный фидбек.
Аноним 29/11/23 Срд 22:19:07 #140 №2943105 
>>2942543
к вершинам мастерства - это маст хэв. не читал - не питонист
Аноним 29/11/23 Срд 22:46:31 #141 №2943157 
как в джанго сделать чтобы при логине было 2 разных вида пользователей (студент и преподаватель), в дальнейшем у них планируются разные возможности
запихну в модель is_student/is_teacher, что дальше то делать? как сделать, чтобы был разный функционал?
Аноним 29/11/23 Срд 23:09:29 #142 №2943200 
>>2943080
Асинхронный либы эффективнее использует ресурсы в случае с запросами и может держать гораздо более высокую сетевую нагрузку.
Если ботом действительно будут пользоваться пару челиков, то разницы нету какую использовать.
Аноним 29/11/23 Срд 23:15:55 #143 №2943212 
>>2943080
бери telethon - полуавтоматом генерит актуальную схему из TL-спек, лучше api (либы), возможность дёргать не реализованные ручки через использование биндингов к TL- объектам, поддержка mtproto, возможность авторизации как пользователем так и ботом. подробнее тут: https://docs.telethon.dev/en/v2/concepts/botapi-vs-mtproto.html

использовал телебот и аиограм. телетон во всем выигрывает.
sage[mailto:sage] Аноним 29/11/23 Срд 23:19:25 #144 №2943216 
>>2933296
Кэмлкейс в питоне, ну ты и мразь. Не, ну вы видели?
Аноним 30/11/23 Чтв 00:10:30 #145 №2943296 
>>2943212
Ты меня, наверное, за умного принял, я не такой
А можешь для дебилов обрисовать, чем телетон лучше? Ну, какой-нибудь кейс не особо вычурный.
> возможность авторизации как пользователем так и ботом.
Я планировал прикрутить авторизацию, чтобы бот считал некоторые данные для каждого пользователя, но он может это делать на основании message.from_user.username
Видимо, тут что-то сложное, и мне пока это не нужно.

А с точки зрения:
1) Использования ресурсов машины?
2) наплыва (в нашем случае, скажем, 10 параллельно сидящих пользователей) пользователей?

Про телебот читал, что он периодически начинает подтупливать и ему нужно помогать ручками, хотя читал и противоположное мнение, что люди просто не умеют его готовить

P.S. пока писал ответ, заметил ссылку на доку. Видимо, нужно было сначала изучить)))
Посмотрю. В любом случае, за наводку спасибо.
Аноним 30/11/23 Чтв 00:11:34 #146 №2943298 
>>2943216
А это осуждается обществом?)
Аноним 30/11/23 Чтв 00:56:07 #147 №2943314 
На го можно делать пакаджи и импортить их, просто сделав репу.
А как на питоне делать?
Аноним 30/11/23 Чтв 01:04:26 #148 №2943323 
Как же заебался делать плохо, что я за человек
Аноним 30/11/23 Чтв 01:06:10 #149 №2943324 
Как перестать говнокодить
Аноним 30/11/23 Чтв 02:56:10 #150 №2943372 
>>2933091 (OP)
> http://composingprograms.com
Не открывается с впн и без
Аноним 30/11/23 Чтв 06:33:07 #151 №2943400 
>>2943114
>>2943121
через sam meta можно сделать
Аноним 30/11/23 Чтв 11:03:12 #152 №2943509 
image.png
>>2943157
Появилась другая проблема, не работает вход, в базе данных есть юзер, но конкретно его не видит
при корректном логине/пассе как в бд выводит пользователь не найден
мнения?
Аноним 30/11/23 Чтв 13:11:14 #153 №2943669 
Аноны, памагите!!
есть dt=datetime.date() # например 01.02.1970
нужно добавить (или удалить) года,месяцы, дни (y,m,d) от этой даты. Но поля же могут быть пустые (нули)!!
получаю ошибки типа месяц не бывает = 0
sage[mailto:sage] Аноним 30/11/23 Чтв 13:40:42 #154 №2943726 
>>2943669
dt - timedlta(month=1, day=7) + timedelta(hour=5)
sage[mailto:sage] Аноним 30/11/23 Чтв 13:42:04 #155 №2943728 
>>2943669
dt.replace(month=5)
Аноним 30/11/23 Чтв 13:43:46 #156 №2943735 
>>2943726
>>2943728
спасибо! Но как с годами разницу-то сделать?
Аноним 30/11/23 Чтв 14:26:53 #157 №2943786 
>>2943298
Да. Очень. В названиях функций можно только нижнее подчеркивание использовать. Верблюда только в самых исключительных случаях в названии классов можно. Это общепринятый платиновый положняк питонского уклада. Срочно переделывай, если кто увидит сразу пизды даст и пидором назовет. А это... ну это хуже всего в общем.
sage[mailto:sage] Аноним 30/11/23 Чтв 14:35:04 #158 №2943792 
>>2943735
RTFM https://docs.python.org/3/library/datetime.html
Аноним 30/11/23 Чтв 15:06:47 #159 №2943809 
>>2943792
читал ртфм.
тут dt2 = datetime(year=y, month=m, day=d)
если m=0 или d=0 или m=0 - то ошибка!! Как победить-то??
Аноним 30/11/23 Чтв 15:11:54 #160 №2943818 
>>2943792
хреново я описал.
Есть dt1 = datetime()
Есть y, m, d= int (это delta year, delta month, delta day). Но эти значения могут быть нулями

Нужно найти разницу дат dt (сложить или вычесть)
Аноним 30/11/23 Чтв 15:25:09 #161 №2943840 
>>2943792
if y>0: dt1 += datetime(year=y)
TypeError: function missing required argument 'month' (pos 2)


if y>0: dt1 += datetime(year=y)
if y<0: dt1 -= datetime(year=y)

if m>0: dt1 += datetime(month=m)
if m<0: dt1 -= datetime(month=m)

if d>0: dt1 += datetime(day=d)
if d<0: dt1 -= datetime(day=d)
sage[mailto:sage] Аноним 30/11/23 Чтв 15:48:58 #162 №2943865 
Screenshot2023-11-30-16-47-47-80ba3aec4ff8fbbf3afd3d812a15c2144f.jpeg
>>2943809
хуёво ты прочитал
Аноним 30/11/23 Чтв 16:25:34 #163 №2943898 
>>2943865
ты немного не понял, или я хреново объяснил задачу, или ты тупенький.
Задача в нахождении НЕ разницы Datetime, а в отнимании года, месяца, дня.
Уже без твоих советов разобрался.
Timedelta нельзя использовать.
Аноним 30/11/23 Чтв 16:38:32 #164 №2943924 
image.png
image.png
>>2943786
неправда, святые документы позволяют, более того, даже в стандартных библиотеках используются иногда
sage[mailto:sage] Аноним 30/11/23 Чтв 16:41:05 #165 №2943931 
>>2943898
>>> datetime.now() - timedelta(days=34)
datetime.datetime(2023, 10, 27, 17, 39, 50, 729253)

свое решение покажи)
Аноним 30/11/23 Чтв 16:42:24 #166 №2943937 
>>2943924
потому что с явы лекала брали
Аноним 30/11/23 Чтв 16:52:07 #167 №2943959 
image.png
>>2943937
Всё так, просто сам по себе нейминг такой допускается и даже иногда используется. Причём для имён классов это стандарт, так и положено MyClassName, тогда как для функций-модулей настоятельно рекомендованы подчёркивания

В принципе это разумно, потому что ад, когда смешение стилей, часть методов, скажем, с подчёркиваниями, а другие верблюжьи
Аноним 30/11/23 Чтв 19:16:00 #168 №2944352 
>>2943931
хуйня у тебя решение.
Ты учёл високосный год, если чуваки введут?
Аноним 30/11/23 Чтв 19:33:45 #169 №2944369 
>>2943931
я вообще сначала думал итерироваться (виртуально само собой) по дням исходя из (y,m,d) с учётом isleap() от календаря, чтобы подсчитать все дни. И эту хрень скормить интервалу в datetime..
Аноним 30/11/23 Чтв 21:55:38 #170 №2944550 
>>2944352
>>2944369
ну пиздец.

юзай relativedelta из dateutil, будет тебе учёт високосного года https://dateutil.readthedocs.io/en/stable/relativedelta.html
Аноним 30/11/23 Чтв 22:02:43 #171 №2944558 
>>2944352
а ты учёл выходные и праздничные дни?
Аноним 01/12/23 Птн 01:46:31 #172 №2944693 
>>2944550
умничка!
Я так и дошёл до этого через пару часов гугла
>>2944558
праздники и выходные не влияют на "физику" календаря и их дат )
Аноним 01/12/23 Птн 01:51:11 #173 №2944695 
>>2944550
жалею, что в пистоне пип инсталл это нужно делать.
Ну почему его не интегрировали-то?? Хотя бы в модуль calendar хотя-бы... Дни можно добавлять, а года и месяцы с учётом високоски - уже нет ((
Аноним 01/12/23 Птн 04:07:11 #174 №2944712 
>>2944695
Ну посмотри как в либе это реализовали и сделай так же.
Аноним 01/12/23 Птн 13:40:53 #175 №2945012 
Как же заебали эти контекстные менеджеры, просто костыль нахуй. Как это говно вообще выпустили в продакшн? Почему нет асинхронного деконструктора? Алло бля. Куку. Сколько лет прошло, где нахуй? Вместо того чтоб юнионы встраивать лучше б с действительно полезными вещами разобрались, например, нормальной асинхронностью и ебучим gil-ом.

Бесит.
Аноним 01/12/23 Птн 13:51:40 #176 №2945022 
>>2944695
>Дни можно добавлять, а года и месяцы с учётом високоски - уже нет ((
Что ты имеешь в виду, поясни подробно на примере.
Аноним 02/12/23 Суб 19:13:35 #177 №2947002 
Вот, никогда не понимал восхваление Питона.

Сука, это просто самый простой инструмент использования сишных библиотек.


Как язык - отстой.
Аноним 02/12/23 Суб 21:41:03 #178 №2947273 
>>2947002
Быстрое развертывание, удобочитаемый синтаксис. Доступная и легкая асинхронность без мутексов и прочей еботни. Все преймущества скриптового языка с динамической типизацией.

Ну да, он понемногу переходит на си, но это же хорошо, больше производительность.

И не совсем понял фразу что он отстой как язык. Чел, если бы он реально был бы отстойным, на нём бы никто не писал и не делал столько прекрасных библиотек.
Аноним 02/12/23 Суб 22:49:45 #179 №2947398 
>>2947273
>он понемногу переходит на си
Кто на С переходит? Протык твой?
Библиотеки в Питоне изначально на С написаны (высокопроизводительные, понятное дело, а не хуйня для чатботов).
Аноним 02/12/23 Суб 22:51:06 #180 №2947400 
>>2947273
Вся математика, нейронка, датасатан и машобуч — на С/C++, без исключений. На голом петоне сам ебись.
Аноним 02/12/23 Суб 23:09:47 #181 №2947428 
>>2947002
Ну так и пиздуй в свой байтоёбский загон, хуле ты тут забыл? Пичот, что мартыханы говнокодят на штангах/фляжках/фистапи, не ебутся с указателями и памятью, импортируют готовые библиотеки и зарабатывают на этом неплохое бабло? Ничего себе! Бизнес внезапно порешал деньгами завистливых додиков-алгодрочеров, превратив разработку сервисов и приложений в "импорт слесарьфлоу эс сф; сф.ран(заебись=True)"
Аноним 02/12/23 Суб 23:39:52 #182 №2947479 
>>2947428
>зарабатывают на этом неплохое бабло
Каждый раз проигрываю с перевода любой неудобной для макаки темы на её копейки.
Аноним 02/12/23 Суб 23:57:29 #183 №2947508 
>>2947479
>неудобной для макаки темы
В чём неудобство, проигрыватель? Кроме пука "язык - отстой" что-то дельное будет или очередные "яскозал"?
Аноним 03/12/23 Вск 00:10:40 #184 №2947521 
>>2947002
Вот, никогда не понимал хейтеров Питона.

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


Как язык - заебись.
Аноним 03/12/23 Вск 00:21:09 #185 №2947540 
>>2945022
Если ты добавишь +365 дней - то это неправильно (не для всех годов) же )))
Аноним 03/12/23 Вск 00:22:15 #186 №2947543 
>>2944712
ну в стандартном же нет!
Аноним 03/12/23 Вск 00:25:09 #187 №2947549 
>>2944712
>>2947543
блин. Только дошло. Я исходники этого модуля не тырил ещё )))
Спасибо, Анончик !
Аноним 03/12/23 Вск 00:29:35 #188 №2947555 
>>2947549
Бочку нефти к подъезду. И СРОЧНО!
(Предварительно позвонить.)
Аноним 03/12/23 Вск 01:02:39 #189 №2947576 
>>2947540
import time
date = '2015-10-20 22:24:46'
ts = time.mktime(time.strptime(date, '%Y-%m-%d %H:%M:%S'))
ts += 365*86400
print (time.localtime(ts))
Аноним 03/12/23 Вск 01:56:55 #190 №2947616 
Ещё один олимпиадник пожаловал... Ты работал хоть? Сколько коммерческих проектов сделал, байтоеб?
Аноним 03/12/23 Вск 04:20:08 #191 №2947668 
>>2947576
date = '2004-01-01 22:24:46'
ts = time.mktime(time.strptime(date, '%Y-%m-%d %H:%M:%S'))
ts += 365*86400
print (time.localtime(ts))

#time.struct_time(tm_year=2004, tm_mon=12, tm_mday=31,
#tm_hour=22, tm_min=24, tm_sec=46,
#tm_wday=4, tm_yday=366, tm_isdst=0)

# это 2004-12-31 НО не 2005-01-01

Ошибка !
Аноним 03/12/23 Вск 04:24:06 #192 №2947669 
>>2947616
я ваши байты ебал пистручковые. Когда делал эмулятор ядра zx на асме, паскале, си. И это без говнокода. Усосал?
Аноним 03/12/23 Вск 04:33:39 #193 №2947673 
>>2947668
Я тебя спросил подробно описать задачу с примером, ты написал что надо дни прибавлять "+365 дней". Теперь какие-то новые условия появились с високосным годом. Ты не можешь даже сформулировать что тебе надо.
Аноним 03/12/23 Вск 05:26:23 #194 №2947681 
>>2947673
было dt=datetime(день_хэ)
стало:
dt+ (y,m,d)
так понятно??
Аноним 03/12/23 Вск 05:30:16 #195 №2947682 
>>2947681
Задача в нахождении года, месяца, дня.
или dt- (y,m,d)
Если год високосный - deltatime - сосёт.
Аноним 03/12/23 Вск 05:45:03 #196 №2947684 
>>2947669
Вкатунец сравнивающий языки для плк с бэкенд разработками и выясняющий какой из них круче...
Чел, тебе потом очень стыдно будет за свои посты.
Аноним 03/12/23 Вск 06:18:16 #197 №2947687 
>>2947684
тебе же, дед, стыдно должно быть.
1) не понял задачу мозгом
2) не решил
Я решил гуглом за 2 часа
И кто тут обосрался-то?
Аноним 03/12/23 Вск 06:19:26 #198 №2947688 
>>2947684
нинавижу вас, отребьев, онлайновских.
У меня проект - оффлайн.
Аноним 03/12/23 Вск 06:23:25 #199 №2947689 
>>2947687
это не сюда..
Аноним 03/12/23 Вск 07:08:38 #200 №2947696 
>>2947682
Год и месяц это не фиксированные отрезки времени.
С годами работай натурально:
2004 - 1 = 2003 год
С месяцами итерируйся по календарю.
11 + 3 = 2 месяц

Либо, если надо к дате прибавить год в днях, то можно просто смотреть в каленадрь високосный год или нет. Но вот если мы находимся в самом конце не високосного года и следующий идет високосный, у нас задача "прибавить год", нам 356 или 366 дней прибавлять? Ответ на этот вопрос условие которое ты закладываешь в логику своей програмы, я тебя джва раза спрашивал обьяснить задачу ты так этого и не сделал. Видимо ты просто принципиально не понимаешь что такое зачада.
Аноним 03/12/23 Вск 08:14:49 #201 №2947712 
реально вообще сейчас вкатиться то? хоть на какой-нибудь стек? Раньше джаву учил, спринг чё-то тыкал там, но тогда забил ибо были определенные жизненные обстоятельства, которые мешали изучению погромирования (читай времени не было) (ну и еще пыня аккурат в то время начал сво и все компании начали съебывать из моей мухосрани за бугор).

Работаю в кал-центре банка. В принципе время есть на изучение. Но пугают многие, что сейчас уже шансов вкатится нет.
Аноним 03/12/23 Вск 08:24:01 #202 №2947714 
>>2947428
>зарабатывают на этом неплохое бабло
Ну, вообще-то, питонисты - это дно по заработкам. По сравнению с С/С++/Java-господами или программистами редких языков.

Чтобы быть высокооплачиваемым питонистом, надо быть очень сильным математиком, не меньше кандидата м.н. А это сам понимаешь, за две недели на скилбоксе не окучивается. Остальные - это уровень разметки данных или формоёбов.
Аноним 03/12/23 Вск 10:46:07 #203 №2947793 
>>2947696
не. Так ты вакансии не получишь. Тебе я сказал есть год. А нужно добавить/убавить какое-то кол-вод дней/лет/месяцев.
Чего тут ты не догнал-то??
Аноним 03/12/23 Вск 10:47:01 #204 №2947794 
>>2947712
это ты мне, падла, всё время звонишь???
Аноним 03/12/23 Вск 11:53:32 #205 №2947821 
>>2947793
Мы находимся в позиции 2004.01.31.
В следующем месяце 29 дней. Команда "двигаемся вперед на месяц". Где оказываемся?
Прибавляем к дате 31 день оказываемся в 2004.03.02?
Прибавляем к дате 29 день оказываемся в 2004.02.29?
Аноним 03/12/23 Вск 13:56:44 #206 №2947975 
>>2947688
Так сколько ты заработал-то? К примеру есть два моих проекта, которые в сумме приносят доход по 3 ляма деревянных в месяц (компании, не мне)
А у тебя сколько?
Аноним 03/12/23 Вск 13:59:33 #207 №2947980 
>>2947714
А вахтовик на севере получает ещё больше. Давай дальше сравнивать несравниваемое, говна кусок.
Аноним 03/12/23 Вск 14:08:36 #208 №2947998 
Подскажите, игра в слова.
Создаю список, состоящий из такого же количества, как в слове, которое загадано. Буква вводится с клавы, при угадывании буквы, она записывается в список с и выводится answer в формате кк

Чому такой код работает корректно:
name=list(keyword) #загаданное слово
answer=[]
for i in range (0, len(name)):
qz.append('')

а это нет:
name=list(keyword) #загаданное слово
answer=[0]
len(name)
Список из 0 создаётся, но в него не записывается угаданная буква.
Аноним 03/12/23 Вск 14:11:27 #209 №2948005 
сука звёздочка не отображается.
Список из звёздочек
Аноним 03/12/23 Вск 14:21:50 #210 №2948016 
Хочу сделать, чтоб загаданное слово рандомно подсасывалось из файла, нужно освоить несложный парсинг какого нить словаря и завернуть игру в бота тг.
Аноним 03/12/23 Вск 16:24:19 #211 №2948182 
Вот бы мне кто-то рандомно подсосал..
Аноним 03/12/23 Вск 16:38:25 #212 №2948199 
>>2947975
а у меня только пет-проект )))
Аноним 03/12/23 Вск 16:42:04 #213 №2948205 
>>2947821
Одновременно 1 год 3 дня - в минус от даты, и добавить 4 месяца ещё.
Сложно как-то, и не уверен, что ты не нарвёшься на високосный год. Не проверял такое решение.
Аноним 03/12/23 Вск 16:42:19 #214 №2948206 
>>2947980
Тупой высерог гонорейной свиньи, речь конкретно про то, что питонисты всасывают по зарплатам, как им и положено у своего места под шконарём. Потому что это кодеры скриптов, а не программисты.
Аноним 03/12/23 Вск 16:44:14 #215 №2948209 
>>2947821
Работа с добавлением/убавлением дат НЕ КАТИТ. Это школьник уже мог бы понять.
Аноним 03/12/23 Вск 16:51:44 #216 №2948218 
>>2948206
взял и обидел меня. У меня вообще проект с ГУИ, БД оффлайновский. Типа, рабочее место специалиста некой сферы )
Аноним 03/12/23 Вск 16:56:20 #217 №2948222 
>>2948218
>ты кусок говна, не смей меня обижать
Я тебя понял, сын борделя рядом со свинарником. Жопа не болит?
Аноним 03/12/23 Вск 18:27:35 #218 №2948326 
>>2948222
ах тыж пидарок, всё на жопы засматриваешься. Папа так воспитал или мамка-шлюха?
Аноним 03/12/23 Вск 19:15:11 #219 №2948437 
>>2948326
>мамка-шлюха
Ага, твоя.
Аноним 03/12/23 Вск 19:25:57 #220 №2948467 
>>2948437
я думал уже, что ты сдох. Так долго свой вареник не открывал..
Аноним 03/12/23 Вск 19:42:48 #221 №2948503 
>>2948467
>Так долго свой вареник не открывал..
Зачем ты открыл свой вареник? Мне не нужно.
Аноним 03/12/23 Вск 19:58:48 #222 №2948517 
>>2948209
Я хотел его наводящими вопросами к этому подвести, а то он уже три дня усирается в треде, хотя там решение на 7 строчек всего или даже меньше.
Аноним 03/12/23 Вск 20:09:18 #223 №2948539 
>>2948503
Пись, у тебя ума не хватает, или просто школота ёбаная? Чего моими же фразами отвечаешь?
Аноним 03/12/23 Вск 20:10:59 #224 №2948543 
>>2948517
анончик. ты попутал кто-кому-куда отвечает.
Я и есть кто спрашивал решение, но там реально 1 строчка кода вообще-то..
sage[mailto:sage] Аноним 03/12/23 Вск 21:57:46 #225 №2948758 
>>2948517
>>2948543
интрига прям
Аноним 03/12/23 Вск 22:10:27 #226 №2948813 
>>2948543
Покажи эту одну строчку.
Аноним 04/12/23 Пнд 01:33:35 #227 №2949230 
>>2948813
main()
Аноним 04/12/23 Пнд 01:41:15 #228 №2949233 
datetime и timedelta же учитывают високосные года
Аноним 04/12/23 Пнд 02:45:57 #229 №2949244 
Всё, понял. Используй dateutil и не еби мозг. Если это ещё одна олимпиада "только стандартные либы", то делай ведосипед сам.
Питон дал им requirements.txt, а они жалуются, пиздец
Аноним 04/12/23 Пнд 11:43:43 #230 №2949450 
>>2949233
я думаю, что timedelta не подошла, т.к. максимально можно неделями оперировать. поэтому и порекомендовали relativedelta из dateutil, т.к. там уже и месяца есть и годами можно оперировать. всё-таки интересно какое решение за неделю обсуждения было реализовано.
Аноним 04/12/23 Пнд 12:12:02 #231 №2949499 
>>2949450
Олимпиадники, лаборанты и вкатуны занимаются хернёй как обычно, пытаясь сложить 2+2 самым эффективным по их мнению способом и создавая себе челленджи.
Аноним 04/12/23 Пнд 14:42:10 #232 №2949687 
В FAQ Java-треда наткнулся на такую годную майнд мапу.
У кого-нибудь есть такая же, только для Питона?
https://coggle.it/diagram/WqgTTNMJtPiHph_q/t/java-development-in-2018
Аноним 04/12/23 Пнд 16:16:12 #233 №2949766 
>>2949687
Питон и так простой, как дойдешь до параллелизма, асинхронности, вот этого всего, считай что прошёл.
Аноним 04/12/23 Пнд 21:11:01 #234 №2950251 
>>2949766
Не так уж много такого, что есть в Джаве, но нет в Питоне (зато наоборот - дохуя). Джава так-то сама по себе - один из самых простых языков.
Аноним 04/12/23 Пнд 22:34:00 #235 №2950342 
>>2950251
Если смотреть на возможности языка, то в принципе нет чего-то такого. Основные концепции всё равно общие. Всякие DI и прочая хтонь
Аноним 05/12/23 Втр 00:16:42 #236 №2950480 
>>2950251
Так это во многом делает язык сложнее, тебе какие-то простые вещи нужно реализовывать сложно. Причём много инженерной магии, которую или надо понимать, или запоминать. Что сильно-сильно мешает вкату.
Аноним 05/12/23 Втр 00:39:12 #237 №2950499 
Правильно я понимаю, что когда я импортирую скрипт-1 в скрипт-2, все библиотеки из скрипта-1 так же импортируется и больше их импортировать в скрипт-2 не нужно?
Аноним 05/12/23 Втр 02:21:57 #238 №2950559 
>>2950499
Да + весь исполняемый код из скрипт-1 также запускается.
Аноним 05/12/23 Втр 08:20:25 #239 №2950607 
>>2950499
Да, но лучше явно импортировать в том файле, где ты будешь это юзать, что бы при выпиливании импортов из скрипта-1 не забыть, что ты заюзал это в скрипте-2
Аноним 05/12/23 Втр 10:09:34 #240 №2950685 
>>2950607
Иногда бывает удобно импортировать именно из скрипта1, а не заново, особенно если указать его в __all__, особенно либы наподобие енкодеров, декодеров джона или пидантика где надо всё равно делать базовую модель. Очень удобно потом делать изменения, например, когда эта поебень решит обновиться до версии v2 и чтоб ты потом не сидел как даун и не чекал весь свой говнокод.
Аноним 05/12/23 Втр 11:20:30 #241 №2950737 
>>2950685
эту проблему решают самые базовые юнит-тесты. хотя бы создание объекта чекать и основные ручки. явное - лучше неявного
Аноним 05/12/23 Втр 12:11:25 #242 №2950789 
>>2950737
Да причём тут юнит тесты, так просто удобнее менять либу и изменить логику обертки в одном месте, чем менять импорты везде. Да и это вполне себе явно, используемые модули и функции явно указываются в __all__
Аноним 05/12/23 Втр 12:28:16 #243 №2950811 
>>2950789
Неявный полный импорт в основное пространство имён само по себе дурной стиль. Обычно делают from module import(func_1, func_2, ..., func_50), такую дикую простынку. Потому что явно. А уж вложенный неявный импорт совсем дурная вещь.
Аноним 05/12/23 Втр 12:29:46 #244 №2950812 
>>2933091 (OP)
Пробую numba, у меня много числодробилок на проекте, по идее декоратор numba.jit или numba.njit должен бустить производительность, но судя по всем бенчам наоборот - происходит отсос по производительсности где-то на 50% а порой и вдвое. Втф?

питон 3.11
numba 0.58.1
Аноним 05/12/23 Втр 12:35:13 #245 №2950816 
>>2950812
Покеж код
Аноним 05/12/23 Втр 12:56:31 #246 №2950851 
>>2950816
https://pastebin.com/2RQUeFkQ
Первый - без нихуя
Второй - с jit
Третий - с njit

Там немного видоизмененная функция outer из исходного сурс-кода, там тоже идет перебор с if-elif-else а затем происходит какой-то дрочевный расчет на голом питоне. На моей машине показано какое время исполнения. Все у 1го сосут
Аноним 05/12/23 Втр 13:22:06 #247 №2950885 
>>2950851
Как видно, я не просто пускаю цикл из 100к записей считаться, перед ним я прогоняю измененную функцию чтоб jit смог ее скомпилить, на это обычно достаточно времени тратится - оно не учитывается в итоговом бенче
Аноним 05/12/23 Втр 13:38:44 #248 №2950906 
image.png
>>2950851
Вот такой вариант (цикл целиком в numba) работает за 1 мс даже с учетом генерации args. Видимо если юзать numba то надо это делать по полной программе, при частых вызовах из питухона только отсосешь. Почему - хз. Я ожидал что не будет особой разницы, но то что я отсосал в 2 а то и в 8 раз это конечно сюрприз

П.С. декоратор с аргументом fastmath=True ни на что не влияет кстати
Аноним 05/12/23 Втр 13:57:59 #249 №2950963 
>>2950906
>при частых вызовах из питухона только отсосешь
Как бы это странно не звучало, но в питоне вызов функции это дорогое удовольствие, так как каждый раз генерируется и удаляется фрейм
Аноним 05/12/23 Втр 14:04:09 #250 №2950979 
>>2950811
Убирать обратную совместимость и не менять название модуля - вот действительно дурная вещь. И вместо from module import ты вполне себе можешь написать import module, особенно если тебе надо использовать с десяток функций, классов оттуда. Перечислять их все - тоже дурная вещь и гораздо сильнее снижает читаемость.
Аноним 05/12/23 Втр 14:07:21 #251 №2950987 
>>2950979
>Убирать обратную совместимость и не менять название модуля - вот действительно дурная вещь
Если ты не залочил мажорную версию, то сам себе буратино
Аноним 05/12/23 Втр 14:39:57 #252 №2951036 
>>2950987
Я всё залочил. Просто хотел обновить либу, т.к она быстрее стала
Аноним 05/12/23 Втр 18:36:01 #253 №2951312 
Помогите понять вложенные списковые включения

я вот нифига не могу понять как чел в примере сделал из списка кортежей с парами(индекс-значение)
вытащил только значения

lol = [a for b, a in enumerate(masiv)]

как его представить в виде вложенного цикла for? за что в этом включении отвечает буква r? а буква а? а это сами пары? зачем нужна тут запятая?


вот тут идентичный ответ и тут понятно как
представить как цикл.
abu = [x[1] for x in en]
Аноним 05/12/23 Втр 18:38:04 #254 №2951314 
>>2951312
>буква r
буква b
быстрофикс
Аноним 05/12/23 Втр 18:49:24 #255 №2951328 
>>2951312
СПАСИБО АБУ
я разобрался))))
очень счастлив
Аноним 05/12/23 Втр 18:59:01 #256 №2951339 
>>2951312
> [
> value
> for index, value
> in enumerate(masiv)
> ]
Аноним 05/12/23 Втр 19:09:06 #257 №2951351 
>>2951339
а в виде цикла?
sage[mailto:sage] Аноним 05/12/23 Втр 19:14:22 #258 №2951362 
>>2951351
не способен увидеть запись?
> lol = []
> for index, value in enumerate(masiv):
> lol.append(value)
Аноним 05/12/23 Втр 19:28:22 #259 №2951378 
Как выучить программирование?
Аноним 05/12/23 Втр 19:42:02 #260 №2951398 
>>2951378
Начни с английского, нужен уровень B2. Когда выучишь английский - приходи, скажу что делать дальше.
Аноним 05/12/23 Втр 19:54:24 #261 №2951408 
>>2951398
А если нету В2? Есть только А0, но при этом разумию что написано когда читаю? Ну и слышу что говорят когда видосики про кодинг индийцы рассказывают
Аноним 05/12/23 Втр 20:08:33 #262 №2951429 
>>2951378
Риторический вопрос, чечил. Многие наносеки так и не научились программировать, например.
Аноним 05/12/23 Втр 21:15:50 #263 №2951576 
ojosasishort.mp4
>>2951408
Начинай с испанского, не прогадаешь. Херки будут течь
Аноним 06/12/23 Срд 00:22:04 #264 №2951750 
>>2951378
Зависит от того что ты хочешь. Работать или олимпиады делать
Аноним 06/12/23 Срд 00:22:58 #265 №2951751 
>>2951429
Зато зарабатывать научились. А остальные пусть изобретают свой транзистор. Не спаял комп - не программист.
Аноним 06/12/23 Срд 04:26:28 #266 №2951835 
Кто из треда работает, в какой у вас сфере Python используется?
Аноним 06/12/23 Срд 07:16:42 #267 №2951861 
>>2951835
2.7.5
Аноним 06/12/23 Срд 08:32:42 #268 №2951878 
>>2951835
От 3.6 до 3.12 в зависимости от древности проекта.
Аноним 06/12/23 Срд 09:17:14 #269 №2951905 
>>2951835
Гемблинг
Аноним 06/12/23 Срд 10:14:05 #270 №2951943 
>>2951835
на дваче
Аноним 06/12/23 Срд 10:56:45 #271 №2952010 
>>2951835
Сравниваю с ассемблером
Аноним 06/12/23 Срд 11:41:08 #272 №2952089 
>>2951835
Буллинг
Аноним 06/12/23 Срд 13:45:07 #273 №2952250 
>>2950906
>Видимо если юзать numba то надо это делать по полной программе, при частых вызовах из питухона только отсосешь. Почему - хз.
Потому что всё время занимает сам вызов функции, а не исполнение кода. JIT в таких случаях просто не может разогнаться.
Аноним 06/12/23 Срд 15:18:11 #274 №2952395 
>>2951905
+
Аноним 06/12/23 Срд 16:10:32 #275 №2952546 
>>2952395
Олег, ты? Узнал тебя по твоему чатику с философствованиями
Аноним 06/12/23 Срд 17:57:34 #276 №2952790 
Мне стало интересно, а в чём преимущество питона перед другими языками? Скажем, в бэкенде, не только рест апи, но и всякие сервисы.
А то чёт я смотрю бенчмарки в сравнении с го и мне кажется что я несколько лет занимаюсь не тем чем надо.
Аноним 06/12/23 Срд 18:26:26 #277 №2952874 
>>2952790
1. Нулевой порог вхождения
2. Дохуя соискателей с низкими ожиданиями
Достаточно.
Аноним 06/12/23 Срд 18:59:46 #278 №2952960 
>>2952790
>сравнении с го
На питоне по сравнению с го просто дохуища батареечек, сахарка и удобных абстракций типа итераторов с генераторами. Писать бизнес-логику на порядок приятнее. Го нужен когда тебе надо много-много байтов гонять.
Аноним 06/12/23 Срд 20:21:07 #279 №2953118 
>>2952960
Если го нужен для байтов, зачем его позиционируют как бэкенд язык, где в основном надо ждать ответы на запросы?
Аноним 06/12/23 Срд 20:25:42 #280 №2953121 
>>2953118
Потому что многопоточный рантайм с ожиданием этих самых байтов там на порядок лучше чем в питоне
Аноним 06/12/23 Срд 20:29:23 #281 №2953124 
>>2953118
Хайлоад хорошо на го писать.
Аноним 06/12/23 Срд 20:30:48 #282 №2953126 
>>2953118
>зачем его позиционируют как
Не обманешь - не продашь
Аноним 06/12/23 Срд 20:50:08 #283 №2953135 
>>2953121
>>2953124
А питон не может в многопоточность?
Аноним 06/12/23 Срд 20:51:05 #284 №2953137 
>>2953135
Может, но с костылями и подпорками.
Аноним 06/12/23 Срд 20:52:28 #285 №2953138 
>>2953137
Там же есть библиотеки для этого. Получается, они не работают?
Аноним 06/12/23 Срд 21:04:58 #286 №2953144 
>>2953138
Многопоточные - не особо, многопроцессорные - да, но из-за IPC при определенных ситуациях может быть медленнее чем синглтред.
Аноним 06/12/23 Срд 21:10:00 #287 №2953149 
>>2953138
Вернее так, при определенных ситуациях мультрипроцессинг может сильно ускорить выполнение, но нужно знать триггеры на смену контекста. Отдельный тред для отправки агрегированных метрик, который просыпается раз в секунду это пример хорошего использования.
Аноним 06/12/23 Срд 21:21:59 #288 №2953160 
Аноны, что в хэдере гет запроса requests написать, чтобы в ответ от сервера пришло поле Content-Disposition ?
Аноним 06/12/23 Срд 22:22:17 #289 №2953225 
>>2953138
питон может в многопоточность, и она даже работает, просто в случае чистого питон кода ты не получишь прироста производительности. Но в каких-то случаях получишь, если у тебя, например, идёт работа с БД, или с тяжеловесными си-функциями из разных библиотек.
Аноним 06/12/23 Срд 22:25:32 #290 №2953231 
>>2953225
и вообще не устаю напоминать, что многопоточность придумали ещё в те времена, когда компьютеры были однопроцессорные и одноядерные. То есть придумывали её не для ускорения, а для реализации логики одновременного исполнения, чтобы не было блокировок и т.п. Необходимо, например, для GUI. И для сети, хотя тут есть альтернативы. Ускорение на многоядерных системах это уже более поздняя вкусная фишка.
Аноним 07/12/23 Чтв 18:42:49 #291 №2954365 
Правильно ли я понимаю, что композиция в программировании это когда в конструкторе класса создаются объекты другого класса. Исходя из этого является ли следующий пример композицией?

class SomeClass:
__init__(self, a, b):
self.a = 1
self.b = 2
Аноним 07/12/23 Чтв 19:00:57 #292 №2954391 
>>2954365
в твоём случае нет композиции.
композиция в ооп, это наличие в классе объектов другого класса и взаимодействие с ними.

например: есть классы бочка и объект. при инициализации классов задаётся объём. у класса бочка есть метод добавления объектов и метод рассчёта свободного объёма, который из собственного объёма вычитает суммарный объём хранимых объектов. это композиция в ооп.
Аноним 07/12/23 Чтв 19:08:19 #293 №2954398 
>>2954365
Если бы a и b не были параметрами конструктора, а были бы экземплярами пользовательских типов, и в SomeClass были бы методы, которые как-то взаимодействуют с ними, то было бы композицией.
https://www.geeksforgeeks.org/inheritance-and-composition-in-python/
Аноним 07/12/23 Чтв 19:08:34 #294 №2954399 
>>2954391
>>2954365
добавлю, что объекты должны создаваться внутри класса-контейнера, т.е. внутри бочки. таким образом при смерти бочки, объекты тоже умрут.

если передавать объекты созданные вне бочки - это уже агрегация (более слабое связывание, в сравнении с композицией).
Аноним 07/12/23 Чтв 22:56:31 #295 №2954658 
>>2948813
не, не main() - это шутка же )
импорт модуля. И реально в 1 строку кода решение задачи.
Аноним 07/12/23 Чтв 22:58:52 #296 №2954663 
>>2949499
Зато пиструны-онлайнеры дрочат на жанго и фласк. Фу, бля, не отмыться теперь от такого говна...
Аноним 08/12/23 Птн 00:32:38 #297 №2954729 
>>2954663
На жангу дрочат работодатели, потому что с большой вероятностью это будет нормальный чел, а не "фу, я не буду на этом писать"
Аноним 08/12/23 Птн 00:33:05 #298 №2954731 
Куда вкатываться - Python, Node.js, Go?
Аноним 08/12/23 Птн 01:31:50 #299 №2954763 
>>2954731
В курьеры
https://www.cnews.ru/news/top/2023-12-04_magiya_it_zakonchilaszarplaty
Аноним 08/12/23 Птн 11:11:00 #300 №2955047 
>>2954731
Все 3 раза мимо
Аноним 08/12/23 Птн 13:53:09 #301 №2955231 
>>2955047
Объясни, почему.
Аноним 08/12/23 Птн 14:01:25 #302 №2955236 
>>2955231
Питон - ебейшая конкуренция среди джунов, херки ахуевают от количества резюмех и сбрасывают их сразу в Корзину
Нода - и так была не шибко популярна в СНГ а после 2022 и подавно
Го - после 2022 число вакух сильно схудно + вкатунов в Го не берут
Аноним 08/12/23 Птн 14:09:54 #303 №2955245 
>>2955236
И все таки из этих трех, какой лучше остальных подходит для вката в бэкенд-разработку в РФ?
Аноним 08/12/23 Птн 14:10:18 #304 №2955246 
>>2955245
Пыха
Аноним 08/12/23 Птн 15:51:25 #305 №2955398 
Он пиздит, нормально берут всех. Даже на го вакансии есть для джунов.
Просто он говорит про всякие известные конторы с зп 300к, туда естественно не буду брать сходу, лол. Да и сам боится что будет конкуренция. Других мелких фирм для него не существует считай.
Аноним 08/12/23 Птн 15:52:14 #306 №2955400 
А вообще сам смотри на hh что тебе больше надо и какие ожидания
Аноним 08/12/23 Птн 15:54:19 #307 №2955403 
Так в питоне ебейшая конкуренция и у мидлов/синек, я с начала ноября уже был на 10 собесах и везде отвалился на 1 или 2 этапе, т.к. "вы нам понравились, но мы приняли решение в пользу другого кандидата".
Аноним 08/12/23 Птн 16:02:02 #308 №2955421 
>>2955403
10 мало, надо больше. Да и смотрел поди на жирные зарплаты. Джуны с универа без опыта обычно от 100к ищут. По хорошему надо сначала работать за еду, набраться опыта, а дальше уже метить куда ещё.
Аноним 08/12/23 Птн 16:03:41 #309 №2955425 
>>2955403
На счёт мидлов они взяли скорее всего того кто меньше запросил. Скиловые обычно не работают в рф.
Аноним 08/12/23 Птн 16:03:53 #310 №2955426 
>>2955421
Реально собесов было больше, около 20, просто с половины я сам слился, т.к. не хочу идти в контры, типа сбер/втб/вк, а они основные засиратели рынка вакухами
Аноним 08/12/23 Птн 16:05:37 #311 №2955431 
дополню >>2955426
>>2955421
Так я не джун, а за еду даже на дейлики подключаться не буду
Аноним 08/12/23 Птн 16:59:11 #312 №2955530 
>>2955403
А у меня наоборот, примерно с 80% собесов выходил с оффером. В основном мелкосредние компании, но и относительно большие типа циана попадались.
Аноним 08/12/23 Птн 17:07:17 #313 №2955554 
>>2955398
Ты из ПР-отдела гикбрейнс? Ты сам-то подавал в последнее время резюмехи свои на джуна?
Аноним 08/12/23 Птн 17:21:14 #314 №2955574 
>>2955530
Какие вилки предлагали и сколько по итогу давали?
Аноним 08/12/23 Птн 18:05:46 #315 №2955655 
>>2955574
250-350, но я получил контроффер на 350 в моей компании
Аноним 08/12/23 Птн 18:09:07 #316 №2955670 
>>2955655
Ну я на такую же вилку собесился, где-то даж 400 было, но везде соснул, а на текущем 280 получаю и выше вряд ли дадут.
Аноним 08/12/23 Птн 19:59:59 #317 №2955801 
>>2955670
>>2955655
Это вы на мидловые позиции собесились? сами-то себя кем считаете?
А то большинство вакансий, которые вижу для бэкенда на питоне, какие-то нищие по сравнению с автоматизацией на джаве
ну типа в вакансиях авто-куа на джаве хотят опыт год-два и дают до 250, а для петухонистов-бекендеров - 3года+ и дают в районе 200
//мимо перекатился из авто-куа в бекенд
Аноним 08/12/23 Птн 21:36:31 #318 №2956041 
Пепе-клоун.mp4
Ананасы, какую ширину строки используете?
Как завещал PEP8 в 79 символов или на похуях 120 по PEP8 E501?
Аноним 08/12/23 Птн 21:52:26 #319 №2956066 
>>2936802
не там смотришь. Результат возвращается по другому запросу, а именно: https://kinase-library.phosphosite.org/api/scorer/score-site/DLSDDDS*DLDDS/Homo%20sapiens%20(Human)/OCHOA/true/false
Аноним 08/12/23 Птн 22:06:06 #320 №2956092 
>>2956041
Ты ведь знаешь откуда взялось ограничение в 79 символов?
Аноним 08/12/23 Птн 22:11:21 #321 №2956096 
>>2956092
Матричные принтеры
Перфокарты
Терминалы
Аноним 08/12/23 Птн 22:22:14 #322 №2956109 
>>2956096
Молодец. Собственно риторический вопрос: в 2k24 выдерживать длину строки в 79 символов чтобы что?
Аноним 08/12/23 Птн 22:27:57 #323 №2956121 
>>2956109
Открыть одновременно 2-3 окошка с кодом и АНАЛизировать?
Аноним 08/12/23 Птн 22:31:00 #324 №2956127 
1702063858686.jpeg
>>2956109
чтобы комфортно работать в termux🍄
Аноним 08/12/23 Птн 22:32:31 #325 №2956130 
>>2954391
>>2954398
>>2954399
Спасибо!
Аноним 08/12/23 Птн 22:42:07 #326 №2956139 
>>2956121
На 27" мониторе влезает два окошка с кодом с крупным шрифтом, слева даже остается место для дерева проекта.
Аноним 08/12/23 Птн 22:42:24 #327 №2956140 
>>2956139
С длиной строки 120, конечно же.
Аноним 08/12/23 Птн 23:06:53 #328 №2956164 
>>2956109
Чтобы зрение не посадить
Аноним 09/12/23 Суб 02:48:14 #329 №2956289 
>>2956109
Чтобы детектить молодых зумеров-петушков, которые на ruff сидят, или олдовых петухов с закалённым очком, которые ещё на 2 питоне писали с pylint2 сидели.
Аноним 09/12/23 Суб 04:47:21 #330 №2956309 
>>2956289
Ты наверное код в виме пишешь?
Аноним 09/12/23 Суб 10:38:09 #331 №2956422 
>>2956309
vim умер вместе с Брамом... neovim.
#другой анон
Аноним 10/12/23 Вск 00:19:54 #332 №2957367 
>>2956041
79 символов. Я за традицию, за традиционные ценности так сказать
Аноним 10/12/23 Вск 01:30:20 #333 №2957392 
>>2956041
Конечно 79 и не забудь юзать тайпинг.
Аноним 10/12/23 Вск 10:53:43 #334 №2957506 
>>2957392
можно выносить в pyi файлы - раз, задавать каждый аргумент функции на новой строке - два. 79 символов хватит всем!
Аноним 10/12/23 Вск 12:54:06 #335 №2957613 
Погодите блять, а стандартный обычный бесплатный Pycharm не поддерживает что ли визуализации через matplotlib и любые другие графические библиотеки?
Аноним 10/12/23 Вск 21:56:45 #336 №2958441 
>>2957613
пользуйся vs code обмазавшись плагинами как белый человек
Аноним 11/12/23 Пнд 01:01:12 #337 №2958573 
>>2957613
Скачай кряку, дело 5 минут же
Аноним 11/12/23 Пнд 02:04:31 #338 №2958602 
>>2956096
>Перфокарты
Там 72 символа знаковых было, оттуда в фортране ограничение. Первые солонки на перфокарте не для кода, а для других целей были

>Терминалы
собственно исключительно из-за этого, раньше, когда ЭЛТ мониторы были, более-менее нормой было работать в текстовом режиме. А там 80 колонок, при этом самая правая обычно под прокрутку выделялась

>>2956139
>На 27" мониторе влезает два окошка с кодом с крупным шрифтом, слева даже остается место для дерева проекта.
А потом в один момент ты пакуешь чемодан с съёбываешь. И разрабишь на своём ноуте, где 14-15-16 дюймов.
Аноним 11/12/23 Пнд 02:43:09 #339 №2958617 
>>2958441
Только там легко гавном обмазаться, особенно конда недавно новый pylance вышел, а до этого autopep просто пенестал работать. Хорошо что есть ruff вместо этого старого говна.

Алсо, есть какой-нибудь плагин, который проверяет импорты в файлах?
Аноним 11/12/23 Пнд 09:15:58 #340 №2958684 
>>2958602
>А потом в один момент ты пакуешь чемодан с съёбываешь. И разрабишь на своём ноуте, где 14-15-16 дюймов.
Делаю так регулярно, в чем проблема? Ну да, на 14" не влезает два окна, и хуле с того? Так даже если строчки будут по 79 символов - один хуй не влезут с вменяемым шрифтом. Или ты просто так решил нахрюкнуть?
Аноним 11/12/23 Пнд 12:00:23 #341 №2958778 
Есть пчелы, шарящие в django?
Как в drf сериализовать значение, которое возвращает метод модели?
Например, у нас есть есть модель Блюдо, в ней поля название и ингредиенты, также в этой модели есть метод блюдоВеганское(), который возврашает либо истину, либо ложь.
Как в сериализаторе вызывать этот метод, чтобы потом записать в json что-то вроде {dishIsVegan: true}
В доке чет ничего нет.
Аноним 11/12/23 Пнд 12:15:00 #342 №2958802 
>>2958778
Если "блюдоВеганское()" это "@property" то можно так:

from rest_framework.serializers import BooleanField, Serializer

class DishSerializer(Serializer): # or inherit from ModelSerializer
____dish_is_vegan = BooleanField(source='блюдоВеганское')

Если не проперти то как вариант можно SerializerMethodField сделать
Аноним 11/12/23 Пнд 12:23:17 #343 №2958810 
>>2958802
Спасибо огромное, анон.
Аноним 11/12/23 Пнд 17:22:31 #344 №2959291 
image.png
image.png
image.png
>>2933091 (OP)
Охуел с количества книг. С какой посоветуете начать на русском?
Аноним 11/12/23 Пнд 17:39:14 #345 №2959334 
>>2959291
Бля ты думаешь тут клуб книголюбов или внеочередное собрание библиотечных червей? Я хуй знает какое у них содержание. Могу чисто по заголовкам и датам судить.

Изучаем python + введение в системы баз данных - выглядит норм. Всё остальное - ну такое себе.
Аноним 11/12/23 Пнд 20:11:57 #346 №2959573 
20231111194001.jpg
>>2959291
конечно же с той, что про джангу и базы данных, параллельно вершины мастерства читай чтобы не скучать.

Читай Лутца какого-нибудь, если тяжко документацию читать.
Аноним 12/12/23 Втр 04:15:12 #347 №2960040 
>>2959334
С документации
Аноним 12/12/23 Втр 04:16:01 #348 №2960041 
>>2960040
>>2959291
Аноним 12/12/23 Втр 16:08:04 #349 №2960551 
Нужно найти в тексте слово определенной длины, и если оно там есть, что-то с ним сделать дальше (отправить его в телегу)
Бью текст на слова, нахожу нужное итерацией по всем словам, но как сделать проверку "нашлось/не нашлось" не понимаю
Пока код такой:
text="Тут дохуя текста"
for word in text.split():
____if len(word) == 25:
_______x=str(word)
Что делать дальше не понимаю, как задать дальнейшую вилку, отправлять дальше этот х куда-то или нет?
Аноним 12/12/23 Втр 16:23:22 #350 №2960573 
>>2960551
Пока сделал через try-except, но мне кажется за такое пиздят
Типа дальше
try:
____#работаем дальше с х
except:
____#если х не существует вместо ошибки
____print("В тексте не было слова с нужной длиной")
Аноним 12/12/23 Втр 16:24:34 #351 №2960574 
>>2960551
def find_word(text: str) -> Optional[str]:
____for word in text.split():
________if len(word) == 25:
____________return word

def main():
____if word := find_word(input()):
________do_something(word)
Аноним 12/12/23 Втр 16:42:16 #352 №2960587 
>>2960574
О, да, так гораздо элегантнее, спасибо.
Аноним 12/12/23 Втр 20:11:46 #353 №2960899 
image.png
>>2960587
>элегантнее
Аноним 12/12/23 Втр 20:24:45 #354 №2960915 
image
>>2960899
>элегантнее
Аноним 12/12/23 Втр 20:48:11 #355 №2960945 
>>2960915
Понадусёровый джаваскриптовый карась, ты?
Аноним 12/12/23 Втр 20:52:30 #356 №2960950 
>>2960945
Ты еблан?
Аноним 12/12/23 Втр 21:01:37 #357 №2960965 
>>2960950
Да.
Аноним 12/12/23 Втр 21:06:02 #358 №2960971 
>>2960965
Вопросов больше не имею.
Аноним 12/12/23 Втр 23:54:03 #359 №2961246 
>>2960899
>>2960915
первое и второе ок. с reduce уже не читаемо.

>>2960945
что не нравится-то?
Аноним 13/12/23 Срд 00:03:42 #360 №2961258 
>>2960915
filter медленнее for и менее читаемее.
Аноним 13/12/23 Срд 01:47:48 #361 №2961307 
>>2960915
>>2960899
Вы бы хоть попробовали запустить свой код в случае, если слова подходящего под запрос нет
Аноним 13/12/23 Срд 01:53:49 #362 №2961310 
>>2933091 (OP)
> Вот, пожалуйста, та же самая программа, но частично переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
https://www.composingprograms.com/
Аноним 13/12/23 Срд 03:30:55 #363 №2961323 
Смотрю собеседование на ютубе.

приходит 28-летний чел, говорит что собрал какой-то интернет-магазин, какие-то нанотехнологии, когда спрашивают про сложности отвечает да сложностей-то никаких и нет, просто садишься и пишешь

потом ему дают задачу и задача это просто какая-то приколюха где надо из массива вытащить какие-то определенные элементы или ещё какая-то залупа и он с ней разбирается минут 40 с помощью интервьюера

объясните мне как он мог сделать коммерческий проект в миллион строк кода и как эта задачка одна связана с его работой в принципе? у меня ощущение как будто я схожу с ума когда смотрю эти собесы
за кадром все ебучие биллы гейтсы а в кадре какая-то странная хуита
Аноним 13/12/23 Срд 03:33:22 #364 №2961325 
>>2951398
Я выучил на С1, как зарабатывать хотя бы 40 тыщ и не сойти с ума?
Аноним 13/12/23 Срд 04:00:15 #365 №2961330 
>>2961323
В принципе может быть и в реальной жизни так, если ты не надрачиваешься на проходы собесов. Ты привык делать одно, большой проект, в спокойной обстановке, в привычном редакторе.

Тут же тебя собеседуют, это стресс большой, когда каждое твоё действие оценивают, пишешь другую задачку, в другом редакторе, чем обычно. Тут как раз нормально тормозить и тупить, причём особенно если ты не джун.
Аноним 13/12/23 Срд 04:19:45 #366 №2961334 
>>2961330
Я не совсем программист и я в принципе понимаю психологический аспект, но просто как факт, чел по сути довел до конца коммерческий проект с системами, подсистемами и кучей всего, и по сути на собеседовании его силы проверяют какой-то одной задачкой на логику которую он ещё и решает с огромными усилиями. Мне это кажется странным каким-то, неестественным. Может быть я переоцениваю количество усилий которые нужны чтобы сделать пет проект и их будучи и подпивасом можно сделать гугля 99% решений?
Аноним 13/12/23 Срд 04:37:34 #367 №2961338 
>>2961334
А что ты хочешь услышать? Может быть чел всё придумал про свой опыт, приукрасил, просто механически реализовывал проект по инструкциям. А может быть на фоне стресса затупил. Это вообще обычное явление, когда адски тупишь.

Откуда мне-нам знать, что там было?
Аноним 13/12/23 Срд 04:52:47 #368 №2961342 
>>2961323
Кто-нибудь на работе пользовался матрицами при работе с веб-проектами? Или каким-нибудь граф деревом или что там спрашивают некоторые тупые эйчары.
Аноним 13/12/23 Срд 04:55:56 #369 №2961344 
>>2961334
Ну блин, смотри. Есть такая профессия - врач. Челик приходит на новую работу, до этого он долго был стоматологом, а тут его внезапно начинают спрашивать про нейрохирургию.
Аноним 13/12/23 Срд 13:37:37 #370 №2961667 
>>2961344
>Есть такая профессия - врач. Челик приходит на новую работу, до этого он долго был стоматологом, а тут его внезапно начинают спрашивать про нейрохирургию.
Ну ты сравнил... Это примерно как разработчик на 1С придёт устраиваться на разработчика драйверов сетевых карт для линукса.

Скорее вот придёт нейрохирург устраиваться на работу, а ему предложат рассказать про этапы формирования нервной системы у эмбрионов. Если ты вчерашний студент или занятия ведёшь, то легко ответишь, если же ты врач, то легко зависнуть можешь. А тот, кто недавно учебник прочитал может возмущаться, как так, врач таких базовых вещей не знает, как ему диплом вообще выдали.
Аноним 13/12/23 Срд 13:55:12 #371 №2961699 
>>2961323
Подозреваю там не смогли в смалтолк на собесе.
Кандидат может был архитектором и код давно не пишет, жонглирует готовыми кубиками. Или он тех.менеджер, давно конвертнувшийся. Надо потратить 5 минут не на пересказ резюме, а на выяснение какими конкретно задачами чел занимался на последнем проекте и в какой роли и готов ли он свичнуть роль, если она не совпадает с ожиданиями в вакансии.
Аноним 13/12/23 Срд 14:07:48 #372 №2961715 
>>2961699
Вот. То ли эйчар тупой, то ли он тупо все проекты на аутсорс кидал и не может ничего сказать о себе.
Мне прост смешно становится когда вкатуны на серьезных щщах учать граф деревья, сортировки и матричную хуйню вместо инструментов, архитектуры и подходов к разработке. Информатику, математику, булеву алгебру етц и, собственно, само программирование надо отделять друг от друга, это вопросы образования, а не самого навыка.
Аноним 13/12/23 Срд 16:22:24 #373 №2961912 
СУпер тупой вопрос, но я прошерстил всё что можно, но так и не нашел способа.
Пользуюсь либрой telebot

Пытаюсь сделать какое-нибудь отслеживание при нажатии на:
inline_button = InlineKeyboardButton("Test", switch_inline_query_current_chat="Test_text")
Т.е. условно хочу, чтобы при нажатии на эту хуйню, мало того, что мне в user input уходил текст "Test_text", но и чтобы бот смог понять, что я нажал на эту хуйню и вызвал нужное мне событие.

Это вообще реально сделать?
Аноним 13/12/23 Срд 17:22:50 #374 №2962011 
>>2961912
Тебе нужно хендлеры на нажатия повесить, читай документацию лучше. Вот даже ебучий пример для даунов сделали: https://docs.python-telegram-bot.org/en/v20.7/examples.inlinekeyboard2.html
Аноним 13/12/23 Срд 18:54:21 #375 №2962175 
>>2962011
Перечитай еще раз вопрос, а потом "советуй"
Аноним 13/12/23 Срд 19:48:04 #376 №2962274 
>>2961912
>>2962175
Тебе дали правильный совет. Логика для выполнения твоей задачи должна быть такой:
Используешь колбек дату, данные которые добавляются при нажатии кнопки:
inline_button = InlineKeyboardButton("Test", switch_inline_query_current_chat="Test_text", callbackdata="Test_clicked")

Затем пишешь хэндлер для этого действия

@bot.callback_query_handlers(func=lambda call: True)
def callback_for_button(message):
if call.data == "Test_clicked":
print("Нажали на твой кал пальцем и он провалился")
Аноним 13/12/23 Срд 19:49:36 #377 №2962280 
>>2962274
callback_data быстрофикс
Аноним 13/12/23 Срд 20:26:02 #378 №2962337 
>>2962175
А ты лучше бы глазки от мочи протер.
Аноним 14/12/23 Чтв 02:30:31 #379 №2962609 
>>2961323
Интернет-магазин собирается из готовых кусков. Или полу-готовых.
Ни программирования, ни собственных архитектурных решений там нет, есть написание простейшего кода для склеивания, хотя его там и много.
Естественно, такой вася даже пузырьковую сортировку не напишет. И, иногда, даже не поймёт что от него вообще требуется.
Аноним 14/12/23 Чтв 08:58:25 #380 №2962663 
>>2962609
Кто представляет бОльшую ценность для работодателя: челик, который может быстро реализовать бизнес-задачу, или олимпиадник, который пишет сортировку на Си?
Аноним 14/12/23 Чтв 09:44:02 #381 №2962701 
Можно ли как-нибудь поставить pip и Tkinter на python-embedded? Комп рабочий, прав администратора у меня нет. Могу использовать только портативную сборку.
Аноним 14/12/23 Чтв 12:31:16 #382 №2962881 
>>2962663
> Кто представляет бОльшую ценность для работодателя: челик, который может быстро реализовать бизнес-задачу, или олимпиадник, который пишет сортировку на Си?
Первый на должность продакт манагера, второй на должность разработчика
Аноним 14/12/23 Чтв 12:51:07 #383 №2962910 
>>2962881
Хуже нет олимпиадника на должности разработчика. Он вместо быстрой реализации фич ебет мозги с алгоритмической сложностью.
Аноним 14/12/23 Чтв 14:40:18 #384 №2963071 
>>2962910
Олимпиадник сможет всё, справиться с любой сложной задачей. А вот "быстро реализующий бизнес задачу" всё завалит, как только работы выйдет за рамки чего-то шаблонного, что уже сто раз написано, разобрано на айти курсах и т.п.
Аноним 14/12/23 Чтв 15:05:31 #385 №2963106 
>>2963071
>Олимпиадник сможет всё, справиться с любой сложной задачей
Олимпиадник справится только с алгозадачей, про какие-нибудь страшные вещи типа шардирования по ключу, кворумы или выборы хранилища они не слышали. Работу с БД на олимпиадках тоже не делают. Вообще алгосики это малая часть от того что делает средней программист, там еще кучу всего знать нужно.

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

мимо ходил в кружок по спортивному программированию в вузе
Аноним 14/12/23 Чтв 15:28:36 #386 №2963128 
>>2963106
Чтобы решать олимпиадные задачи нужны мозги и ясность ума. При их наличии освоить индустриальные техники не такая большая проблема. Главное, что человек понимает что и зачем он делает.

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

>Лул, так олимпиады это как раз таки соревнования по подбору идеального ключа для синтетических задач разработанных именно под этот ключ
Не только и не сколько. Например тебе необходимо предусмотреть все corner case, которые могут завалить программу. Не предусмотришь -- провалишь тест и проиграешь. Это нереально полезный скилл и образ мышления для разработчика ПО.

Само собой олимпиадника надо доучивать, потому что тебе нужно работать с продуктами не на 20-100 строк, на на десятки-сотни тысяч и больше. И ещё кучу всего знать. Но эти вещи не так долго осваивать. Да и олимпиадники обычно не в вакууме развиваются.

Но суть в том, что потолок олимпиадника очень высокий потолок, из него может получиться нереально крутой спец. А "решатель бизнес задач" большого потенциала не имеет.
Аноним 14/12/23 Чтв 15:28:40 #387 №2963129 
>>2963071
>Олимпиадник сможет всё
Ага, да. Вот только я лично этих чмонделей собеседовал и знаю на что они способны, а ты нет.
Аноним 14/12/23 Чтв 15:35:50 #388 №2963150 
>>2963129
Я никого не собеседовал, хотя когда-то мне предлагали поучаствовать.

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

Но уметь решать сложные олимпиадные задачи ценно.
Аноним 14/12/23 Чтв 15:43:04 #389 №2963167 
>>2962910
>Он вместо быстрой реализации фич ебет мозги с алгоритмической сложностью.

Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.
Это решатели задач со временем начинают закладывать х10 эстимейт на покраску кнопки и грызть всех, кто работает слишком быстро
Аноним 14/12/23 Чтв 15:50:24 #390 №2963182 
>>2963167
>Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.
Им нравится такие же аутистические задачи делать, а не кнопки красить, когда ты ожидаешь чего-то особенного, то быстро выгораешь. Вне RnD нахуй не нужно.
Аноним 14/12/23 Чтв 16:03:27 #391 №2963193 
>>2963182
Вот этого двачну. Додики наполучают медалей и грамот, звезду поймают и думают о себе хуй пойми что. И задачи им интересные подавай и мотивируй постоянно. А говно вилкой чистить не хотят, баги фиксить - не царское дело, в легаси ковыряться - выше их достоинства.
Аноним 14/12/23 Чтв 18:03:57 #392 №2963374 
>>2962881
я думаю, что timedelta не подошла, т.к. максимально можно неделями оперировать. поэтому и порекомендовали relativedelta из dateutil, т.к. там уже и месяца есть и годами можно оперировать. всё-таки интересно какое решение за неделю обсуждения было реализовано.
Аноним 14/12/23 Чтв 18:13:54 #393 №2963393 
>>2962609
А зачем писать свою сортировку?
Аноним 14/12/23 Чтв 18:17:55 #394 №2963399 
>>2963374
Решение одно. Остальное придумали местные олимпиадники.
Ты подожди, скоро они тебе на ассемблере код напишут. Может свой микропроцессор сделают.
Аноним 14/12/23 Чтв 18:21:09 #395 №2963403 
>>2963167
Проблема олимпиадников в том что они те самые велосипедники, которые потом просто выгорают. Обычно такие люди пишут какие-то библиотеки на гитхабе, а потом жалуются что у них нет времени и они едва сводят концы с концами. Им проще написать свою либу чем работать с существующими.
Это максимально вредно для работодателя, потом этот хер уволится, а остальным ещё разбираться в его отсебятине.
Аноним 14/12/23 Чтв 18:26:22 #396 №2963413 
>>2963167
>Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.
>увлечённые

1. 90% времени работы — это тупая рутина. От тебя никто не требует превозмогать и вести человечество космическими темпами в мегапрогресс. От тебя нужно тупое повторение уже известного максимально быстрым способом. посмотри как на китайских заводах макаки игральные карты пакуют (или подобную мишуру, которая недоступна станку).

2. Слово «увлечённые» я не зря выделил. Умный готов въёбывать, пока ему интеренсо. А как только он в чём-то разобрался, это летит нахуй, потому что становится рутиной, а рутина умному человеку не интересна. Именно в этом состоит ЖЫЗА, почему набирают тупых и с небольшими запросами — они будут делать 90% работы.

Всё время быть увлечённым нельзя — умных хватает и они будут зубами цепляться за интересную работу, посылая тебя нахуй и подставляя прямым образом. На всех её не хватит.

А дальше — думой сам, как с этим теперь жить.
Аноним 14/12/23 Чтв 18:47:12 #397 №2963444 
>>2963413
Есть аутизм, есть СДВГ, хотя у них там родственная внутренная природа и они часто сочетаются. Для айти свойственно.

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

СДВГ это когда ты бросаешься на то, что тебе интересно, реально в это вгрызаешься, можешь перформить, придумывать что-то интересное, что другим не под силу. Это "гиперфокус". Но одновременно ты хуй чего будешь делать из того, что не интересно, не можешь заставить себя сесть даже за простые задачи, пока совсем дедлайн не подходит, и редко готов разбираться с легаси-говном. В плане отдачи хуже, чем аутизм, в плане выстраивания совместной работы лучше, отдача может быть, если хорошо организована совместная работа, плюс ты можешь придумывать что-то очень полезное, особенно в сложных ситуациях.
Аноним 14/12/23 Чтв 18:53:33 #398 №2963449 
>>2963413
>1. 90% времени работы — это тупая рутина. От тебя никто не требует превозмогать и вести человечество космическими темпами в мегапрогресс. От тебя нужно тупое повторение уже известного максимально быстрым способом. посмотри как на китайских заводах макаки игральные карты пакуют (или подобную мишуру, которая недоступна станку).
Всё-таки в айти тебе в любом случае надо напрягать мозг, с чем-то разобраться, что-то придумать. За описанных заводах мозг надо отключать.

Только в каких-то больших компаниях может быть работа чисто рутинная. Литералли красить кнопку, когда всё есть, всё работает, но надо периодически менять дизайн кнопки, как пришлют техзадание.
Аноним 14/12/23 Чтв 19:00:25 #399 №2963453 
>>2963403
Ох ебать какая жиза. Однажды взяли в команду челика и поручили ему написать каркас для нового сервиса. Ну банально джану развернуть, пару либ прикрутить и вот это все. Так этому додстеру не понравилась реализация существующих либ и он начал пилить свою. Так и пердолился три месяца, а в конце показал ебаное нихуя. Так и выпизднули по итогу ИС.
Вы меня спросите: а куда смотрел тимлид? А я, блять, задаюсь тем же вопросом и не нахожу ответа, хотя прошло уже пять лет с тех пор.
Аноним 14/12/23 Чтв 19:04:46 #400 №2963459 
>>2963444
>>2963413
Ещё можно быть просто умным нормисом с мозгами. Это когда ты в принципе можешь разобраться, спокойно разбираешься. Можешь спокойно пиздеть на митингах, что-то накручивая по полезности сделанного, по сложности. Не делаешь лишнего, даже если это не сложно и может отдачу проекту принести, но тебе сильно не зачтётся. Если компания большая, работаешь над повышением своего грейда. Заводишь нужные связи и продвигаешь свой профиль, свои резюме. Если видишь работу с условиями лучше, просто уходишь туда, потому что на проект тебе абсолютно похуй.

Уставший нормис - пролезаешь как-то на работу, как-то разбираешься, чего-то заливаешь на митингах, чтобы видимость была. Айти и технологии не интересны вообще. Минимально работаешь, а главная цель чтобы на мороз не выгнали.
Аноним 14/12/23 Чтв 19:09:24 #401 №2963464 
>>2963393
Затем, чтобы показать, что ты хоть немного понимаешь, что такое программирование. Или ты думал, что тебе деньги будут платить за то, что ты нагуглил всякой хуиты, поставил либы, написал клей - и, вуаля! - давате мне сотыги? Тебя заменят на чат-гопоту, и всё.
Если ты не можешь написать _пузырьковую_, блядь, сортировку, или сделать бинарный поиск в списке, или не понимаешь (хотя бы в общих чертах), как работает hash map (словарь) - ты просто дегенерат.

И нет, это не про олимпиадников.
Олимпиадники/математики на самом деле хуёвые программисты, чаще всего.
Потому, что программирование - это не математика. Точнее - это не та математика. Работают разные части мозга.
Аноним 14/12/23 Чтв 19:12:11 #402 №2963466 
>>2963413
Что касается требований бизнеса, то въёбывать мало где требуется. Только на галерах, которые твой почасовой труд перепродают. Или где-нибудь в ручном тестировании, но это не разработка.

Чаще надо что-то поддерживать и дорабатывать, что уже давно есть. Тут главное разобраться в проекте, что та ещё история. В те моменты, когда надо что-то сделать, ты работаешь. В другие ничего не делаешь, но ты нужен потому, что за тобой проектные знания.
Аноним 14/12/23 Чтв 19:15:40 #403 №2963473 
>>2963464
>И нет, это не про олимпиадников.
>Олимпиадники/математики на самом деле хуёвые программисты, чаще всего.
Вообще скорее близко к математике.
У олимпиадников другая проблема, их скиллы заточены на спорт, чтобы сделать максимально быстро, быстрее, чем соперники. "качество кода" в принципе отсутствует. Код небольшой, всё про алгоритмы.

В то время как в работе не важно, если ты на что-то сложное потратишь четыре дня вместо двух.
Аноним 14/12/23 Чтв 19:29:27 #404 №2963488 
Проверить есть ли какое-то значение в списке можно только через итерацию по всем элементам или есть какая-то специальная функция?
Аноним 14/12/23 Чтв 19:37:27 #405 №2963498 
>>2963488
value in some_list
some_list.index(value) # выбросит исключение, если нет
some_list.count(value) # перебор в любом случае

во всех случаях сложность линейная
Аноним 14/12/23 Чтв 20:15:08 #406 №2963575 
>>2963473
Программирование (не алгоритмистика) - это не про математику, это про лингвистику. Которая тоже математика, только другая.
Аноним 14/12/23 Чтв 20:18:02 #407 №2963580 
>>2963488
Дополню господина выше: если стоит задача проверять вхождение значения в некое множество - лучше использовать set.
Аноним 14/12/23 Чтв 20:20:40 #408 №2963586 
>>2963498
То есть, в питоне до сих пор даже .contains нет? Охуеть.
Да ещё и исключение выбрасывает, вместо человеческого -1.
Какой же, всё-таки, Гвидо мудак.

Если бы не ебучий дата-сайенс, про питон сейчас бы уже и не помнил никто, после эпичного-то фейла с несовместимой 3-й версией. Он так отчётливо тогда начал становиться легаси-технологией, а'ля Perl.
Аноним 14/12/23 Чтв 21:40:17 #409 №2963655 
vibelol.mp4
>>2963586
>вместо человеческого -1
Аноним 14/12/23 Чтв 21:42:14 #410 №2963657 
>>2963488
Если список не отсортированный то только перебор всех элементов, да
Аноним 14/12/23 Чтв 21:42:57 #411 №2963661 
>>2963586
Есть, только реализуется через магические методы, для того же листа достаточно сделать так
item in my_list

>Да ещё и исключение выбрасывает, вместо человеческого -1.
Выдавать результатом на проверку вхождения число вместо тру/фолс это по твоему по человечески?

>Если бы не ебучий дата-сайенс
Питон сначала был перлозаменителем для сайтов, потом с 3.5 стал популярнее из-за нормальной асинхронщины из коробки, датасаенс потом подтянулся
Аноним 14/12/23 Чтв 21:47:59 #412 №2963670 
>>2963464
Кому показать? Ты работал вообще хоть где-нибудь?
Я не помню чтоб мне хоть где-то требовалось сделать свой алгоритм. Эфективно распределить ресурсы сервера, сделать оптимальную архитектуру проекта, заложить масштабируемость, надёжность - да.
Но придумывать самому алгоритмы которые были сделаны в прошлом столетии - нет. Даже не представляю где это можно применить. Сдаётся мне ты пересмотрел курсов и почитал много ненужных книг, но в реальной работе это не используется, ну может быть где-то в 2-3% вакансиях

Я б с удовольствием использовал чат жпт для генерации кода, но он так и не даёт мне даже ответы на интересующие вопросы в плане архитектуры, что уж там говорить про код, который сделан на уровне хелоуворлда.
Аноним 14/12/23 Чтв 22:35:20 #413 №2963715 
>>2961323
>объясните мне как он мог сделать коммерческий проект в миллион строк кода и как эта задачка одна связана с его работой в принципе?
Кроме говноалгоритмов, говносортировок, говнографов, говнохешей, говнодеревьев, говноматриц, говновекторов нужно в голове держать ещё дохуищи информации. Нужно знать как кешировать, как работать с БД, аутентификацию, авторизацию, шифрование, как с кубернетисом работать, как настроить CI/CD, нужно помнить GraphQL, Rest API, и так далее и тому подобное. Как он смог такое сделать? Ему просто нахуй не надо было знать в тот момент. "Полезные знания" не равно "необходимые знания". То есть говноалгоритмы знать полезно, но также полезно знать маркетинг, полезно знать администрирование линукса и прочую хуйню. Жить без этого можно. Не конец света.
Аноним 14/12/23 Чтв 22:59:50 #414 №2963736 
С помощью чего можно построить простой график столбами?
Например у меня есть сотня-другая значений даты-времени, хочу получить 14 графиков за последние 2 недели со столбцами по часам
Аноним 15/12/23 Птн 00:01:52 #415 №2963761 
>>2963661
>Питон сначала был перлозаменителем для сайтов
В отличие от тебя, я тогда жил.
Перлозаменителем для сайтов был PHP. Да и сейчас есть.

>>2963670
>Я не помню чтоб мне хоть где-то требовалось сделать свой алгоритм.
>etc
Если бы ты мог понять, какую стыдную хуйню ты тут пишешь, ты бы заплакал.
Аноним 15/12/23 Птн 00:04:18 #416 №2963765 
>>2963736
Где ты его собрался построить?
Что делать дальше с тем, что ты построил?
Вот тут почитай:
https://opensource.com/article/20/4/plot-data-python
Аноним 15/12/23 Птн 00:09:39 #417 №2963769 
>>2963761
Агрегацию поиска по бд? Это что-то сложное где требуется быть олимпиадником? Серьезно?
Аноним 15/12/23 Птн 00:27:03 #418 №2963782 
>>2963765
>Где ты его собрался построить?
В виде пикчи. Ну или ascii какой-нибудь я не знаю.
>Что делать дальше с тем, что ты построил?
Анализировать епта.
Аноним 15/12/23 Птн 00:35:43 #419 №2963797 
>>2963736
Эксель
Аноним 15/12/23 Птн 00:37:12 #420 №2963799 
>>2963797
Не знаю почему я про него не подумал. Даже странно как-то. Спасибо.
Аноним 15/12/23 Птн 00:40:23 #421 №2963804 
>>2963769
А пузырьковая сортировка - это типа что-то сложное, и надо быть олимпиадником, лол?
А бинарный поиск?
А рекурсивный обход каких-то связанных структур ты тоже никогда не делал? Это очень распространенная задача.

>>2963782
Ну, ссылку я там дал, этого более чем.
Алсо - можно вообще заебенить GUI на wxPython, и там прямо на форме рисовать, в реальном времени.
Аноним 15/12/23 Птн 03:35:34 #422 №2963871 
>>2963804
Если ты будешь делать свою пузырьковую сортировку и методы поиска, то тебя на ревью не пропустят.
Аноним 15/12/23 Птн 04:14:39 #423 №2963877 
А какие есть плюсы у питона кроме "простота и большое комьюнити"?
Аноним 15/12/23 Птн 10:36:31 #424 №2963997 
>>2963761
>Перлозаменителем для сайтов был PHP. Да и сейчас есть.
И какую нишу по-твоему занимал питон в то время? Тот же перлозаменитель для нитаких как все, только менее популярный. За счет джанги/фласка/торнадо он и был нужен тогда.
Аноним 15/12/23 Птн 11:11:45 #425 №2964030 
image.png
>>2933091 (OP)
Вот гопота прекрасно мне ответила на вопрос, на который ни один двачерок или петуш с киберфорума не мог дать внятный ответ. Ебало?
Аноним 15/12/23 Птн 11:18:05 #426 №2964039 
>>2964030
Если ты задавал вопрос в той же манере, то не удивительно, лол.
Аноним 15/12/23 Птн 11:19:52 #427 №2964042 
>>2964039
Все максимально понятно, раз сетка поняла. Как раз таки "проблемы" с сеткой в основном от того что люди через жопу ей задают вопросы
Аноним 15/12/23 Птн 11:49:31 #428 №2964078 
>>2964042
Какой же ты тупой, пиздец.
Аноним 15/12/23 Птн 12:09:37 #429 №2964114 
>>2963997
>За счет джанги/фласка/торнадо он и был нужен тогда.

Тогда не было никаких "джанги/фласка/торнадо". Даже в проекте. Речь про питон 1.5.2, и про ранние версии 2.
Питон - язык общего назначения. На нём писали программы и скрипты. Если я ничего не путаю, то в SUSE весь инсталлятор на питоне был написан. Писали просто десктопные приложения на wx и qt. Писали энтерпрайзные системы (не веб, веб тогда только начинался).

А потом был Zope. И это было охуенно. Помнишь Zope?
На питоне начали писать большие энтерпрайзные веб-системы.
А потом - Sun допилил до вменяемого состояния Java EE (j2EE, как это тогда называлось), в джаве появились дженерики, появились крутые инструменты, народ научился в Swing, и питон ушёл из энтерпрайза в тень.

А вот потом уже появились ваши джанги-хуянги. Гораздо позже.
Аноним 15/12/23 Птн 12:46:35 #430 №2964199 
>>2964078
Зато ты пиздец умный гляжу, скок зарабатываешь? какой стаж?
Аноним 15/12/23 Птн 14:07:21 #431 №2964313 
>>2964199
Я не он, но, я тебе скажу, что если ты такие вещи спрашиваешь у двачеров или у гопоты, а не находишь сам за 5 минут в доках или вообще в исходниках пидантика, то ты не особенно умный.

Я уже не говорю о том, что питон - динамический язык, и там в реальном времени можно пройтись по всем свойствам и методам объекта, и сделать с ним что хочешь. Ты же сможешь рекурсивно обойти объект и все его свойства-объекты, и сравнить с другим? Или "алгоритмы" не нужны?
Аноним 15/12/23 Птн 14:40:29 #432 №2964342 
>>2964114
>не веб, веб тогда только начинался
всё-таки не совсем, веб в мире стремительно попёр вверх в конце 90х, в 2000м уже был "крах доткомов". Если смотреть 2000 год, тогда уже был дикий хайп вокруг Java, продвинутые веб приложения делали или на JavaApplet (когда упор на функционал), или на AdobeFlash, когда упор на графику. Про питон я тогда совсем ничего не слышал, по крайней мере в РФ вот совсем не на слуху был, пользовались перлом и sh.

PHP по-моему взлетел чуть позже, может где-то в 2002, до этого уж совсем примитивным был.

Мне в целом кажется, что питон никогда не был мэйнстримом, всё-таки GUI приложения ассоциировались скорее с C++, Visual Basic/C++, Java. Возможно на западе в энтерпрайз кругах другая история была, но мне кажется, что там было засилие Java, как и сейчас собственно.

Питон как-то сначала в научных кругах был, плюс это язык для обработки текстовых данных. Плюс он начал очень давно использоваться как язык системного администрирования, вместо bash/sh и perl.

>>2963661
>потом с 3.5 стал популярнее
Хайп вокруг питона начался раньше, в конце нулевых, до выпуска 3 ветки. А вот переход на третью ветку был жутко косячным, с кучей просчётов по стратегии перехода. В результате была ситуация, когда уже несколько лет существовала 3-я версия, там что-то вроде 3.2, а большинство основных пакетов вроде Django, NumPy и других третью ветку не поддерживали вообще. Популярность питона стала резко падать из-за этого, плюс альтернативы подтянулись по многим направлениям.

К версии 3.5 уже косяки перехода преодолели, плюс саму ветку уже довели до ума, плюс все эти возможности асинхронности, в общем это скорее позволило питону начать отвоёвывать обратно свои ранее утерянные позиции.
Аноним 15/12/23 Птн 14:44:48 #433 №2964353 
>>2964313
> рекурсивно обойти объект
Мы вам перезвоним
Аноним 15/12/23 Птн 15:15:59 #434 №2964409 
>>2964313
Мань, ты ж понятия не имеешь, о чем говоришь. Зачем вообще лапками по клавиатуре стучать тогда начинаешь?
Аноним 15/12/23 Птн 15:45:02 #435 №2964440 
>>2964353
Пожалуйста, не надо мне перезванивать.

>>2964409
Ты правда думаешь, что меня интересует твоё мнение? Серьёзно?
Аноним 15/12/23 Птн 16:45:54 #436 №2964546 
Увожаемые ананосы, дрочу я значится джангу свою, прикрутил парсеры для забивания базы отдельным процессом в линуксе и решил посмотреть ютуб на тему: а можно ли всё таки парсеры вкрутить в саму джангу.
И что я обнаружил? Последнее видео по джанге на ютубе было 9 месяцев назад! Но на чём тогда сейчас пилят веб-приложения? Или это просто джангу разобрали вдоль и поперёк, что бы еще что то рассусоливать по ней, а разработка на ней так и продолжается?

Ну и факультативом, вдруг кто то в курсе, ткните носом, куда курить, что бы прикрутить парсеры в саму джангу правильным способом.

Спасибо, увожаемые анонасы.
Аноним 15/12/23 Птн 16:50:15 #437 №2964554 
>>2964546
>Последнее видео по джанге на ютубе было 9 месяцев назад!
Где ты такой ютуб нашёл? Провелил, за последний месяц дофига новых видео
Аноним 15/12/23 Птн 17:16:58 #438 №2964621 
>>2964554
Странно. Я просто иду на yoytube.con, и просто в поиске набираю django.
Да, сначала он мне подсвечивает всех, на кого я подписан, но и сильно дальше я откопал англоязычный видос, опубликованный минимум 3 месяца назад
Аноним 15/12/23 Птн 17:17:25 #439 №2964622 
>>2964621
com
быстрофикс
Аноним 15/12/23 Птн 17:33:57 #440 №2964654 
>>2964440
Ну ты же высрался аж 2 раза
sage[mailto:sage] Аноним 15/12/23 Птн 17:41:32 #441 №2964668 
1702651289830.jpeg
>>2964621
sage[mailto:sage] Аноним 15/12/23 Птн 17:42:50 #442 №2964673 
1702651368003.jpeg
Аноним 15/12/23 Птн 17:51:23 #443 №2964696 
>>2964668
Отсортировал в фильтрах по дате загрузки, увидел видосы на твоих пиках.
Спасибо, анон, это я тупой.
Аноним 16/12/23 Суб 06:21:30 #444 №2965846 
>>2963488
Тут табе адказвае той хто сам нічога ня ведае.

if značennie in śpis:
...print('jo')
Аноним 16/12/23 Суб 10:40:32 #445 №2965926 
2023-12-1610-33-46.png
>>2933091 (OP)
питоныч рейтани мое говно
https://dropmefiles.com/XcCVp
Аноним 16/12/23 Суб 14:35:32 #446 №2966112 
>>2965926
Сук, ностальгия по моим 80-м!...... 8~~~~((
Аноним 16/12/23 Суб 14:42:53 #447 №2966123 
>>2966112
а че можно сделать двачевскую acii всем тредом, только фантазии немае
Аноним 16/12/23 Суб 14:51:58 #448 №2966136 
Аноны, только один вопрос:
При одновременном добавлении данных в базу с помощью sqlalchemy и чтении данных с помощью django ORM база сама всё разрулит, или надо что то дополнительно придумывать на стороне обращающихся?
Аноним 16/12/23 Суб 15:01:08 #449 №2966147 
Что там в пятой Джанге, годноту выкатили?
Аноним 16/12/23 Суб 15:22:59 #450 №2966158 
>>2966136
Тебе предстоит погрузится в удивительный мир конкурентных запросов. Это умеет разруливать база, но ты должен ее правильно настроить. Погугли про уровни изоляции.
Аноним 16/12/23 Суб 15:27:14 #451 №2966161 
>>2966136
зависит от базы. sqlite вырулит, но при обновлении будут локи всей файловой базы, которые не позволят одновременрые обновления; postgres точно вырулит; shelve/pickle (считается ли?) обосрётся.
Аноним 16/12/23 Суб 15:45:33 #452 №2966173 
Как прервать блокирующую операцию в дочернем потоке из основного? А то, бля, если во время подключения к serial я подам сигнал в поток, мол, прекращай там свои попытки подключения, то ничего путного не выйдет из этого, ведь поток заблокирован и ждет ответа от каких-то там системных библиотек или хуй его знает. Даже если через pythonapi.PyThreadState_SetAsyncExc послать исключение, то он его обработает только когда очухается, получив соединение с устройством (ну или если я COM выдерну нахуй из разъема).

Хули делать то? Сигналы еще пробовал, поебота тоже.
Аноним 16/12/23 Суб 16:06:30 #453 №2966192 
>>2966173
Можно закрыть поток
Аноним 16/12/23 Суб 16:11:34 #454 №2966203 
>>2966192
В python ж нельзя убить поток без иъебов навроде того ж PyThreadState_SetAsyncExc, да и, потом, мне надо чтоб просто он вышел из блокирующей операции и спокойно продолжил исполнение далее. Это наверное платформозависимая хуйня.

Перезапуск потока ради такой плевой задачи выглядит как забивание гвоздей телескопом. Но наверное иначе и правда нельзя.
Аноним 16/12/23 Суб 16:21:32 #455 №2966233 
>>2966192
Ну в моем случае поток блокирует win32api.CreateFile для открытия COM-соединения. Платформозависимая хуйня, на пингвине или еще где будет иначе все. Ну один хуй надо как-то вот блокирующую операцию прервать.
Аноним 16/12/23 Суб 17:38:07 #456 №2966381 
>>2966203
Ты можешь блокирующую операцию отдельно вынуть в другой поток и сделать ему таймаут
Аноним 16/12/23 Суб 17:42:28 #457 №2966387 
>>2966161
> PRAGMA journalmode=WAL;
даст возможность конкурентной записи для sqlite
Аноним 16/12/23 Суб 21:05:03 #458 №2966644 
>>2965926
Залей на гитхаб, блджад.
Аноним 16/12/23 Суб 21:37:54 #459 №2966697 
Нужно максимально быстро немного разобраться, что такое вебсокеты и как с ними работать, что почитать? Желательно на русском.
Аноним 16/12/23 Суб 21:43:25 #460 №2966700 
>>2965926
Цудна, стварай яшчэ. Таксама паглядзі мае https://replit.com/@ploomum/Chuitka
Аноним 16/12/23 Суб 22:01:34 #461 №2966720 
>>2966697
>Желательно на русском
Иди нахуй.
Аноним 16/12/23 Суб 22:04:50 #462 №2966722 
>>2966720
Так и знал, что какой-нибудь долбоеб триггернется.
Аноним 16/12/23 Суб 22:23:03 #463 №2966738 
亲爱的朋友们他说什么?
>>2966700
>Цудна, стварай яшчэ. Таксама паглядзі мае
我看不懂
Аноним 16/12/23 Суб 22:26:28 #464 №2966742 
>>2966722
Долбоеб - это тот, кто суется в айтишечку без базового знания английского.
Аноним 16/12/23 Суб 22:39:56 #465 №2966758 
>>2966742
Мне айтишечка ваша нахуй не нужна, а английский у меня минимум B2. Но я написал "желательно", потому что разобраться мне нужно быстро.
А теперь съеби нахуй, сам то небось пхп-макака ссаная.
Аноним 16/12/23 Суб 22:57:56 #466 №2966782 
>>2966758
>минимум B2
>не может бегло читать документацию
Ору.
Аноним 16/12/23 Суб 23:01:23 #467 №2966790 
>>2966782
Все я уже могу и читаю, съебись.
Аноним 16/12/23 Суб 23:12:39 #468 №2966806 
>>2966697
Как вы ещё не вымерли все, бедолаги? По стандартным библиотекам тонны инфы на русскоязычных ресурсах, если уж совсем тяжко и ты страдаешь от синдрома дефицита внимания, сходи до чат гопоты, пусть объяснит тебе как отсталому на пальцах как пользоваться сокетами
Аноним 16/12/23 Суб 23:27:06 #469 №2966822 
>>2966720
Хрюкни.
Аноним 17/12/23 Вск 09:12:10 #470 №2967044 
>>2966790
Ну вот видишь, стоило тебя макнуть в говно, так ты сразу сам справился.
Аноним 17/12/23 Вск 10:21:12 #471 №2967079 
>>2966203
>>2966381

https://www.saltycrane.com/blog/2010/04/using-python-timeout-decorator-uploading-s3/
Аноним 17/12/23 Вск 11:52:51 #472 №2967111 
>>2967079
> On Windows, signal() can only be called with SIGABRT, SIGFPE, SIGILL, SIGINT, SIGSEGV, SIGTERM, or SIGBREAK. A ValueError will be raised in any other case. Note that not all systems define the same set of signal names; an AttributeError will be raised if a signal name is not defined as SIG* module level constant.
на винде не заведётся. придётся свою реализацию потока писать, которая спит нужное время, выставляет event и завершает поток с блокирующей операцией
Аноним 17/12/23 Вск 22:29:00 #473 №2967817 
>>2966233
Если винапи не предустматривает таймаут для CreateFile то хрен ее прервешь, мне так кажется. Наверное можно всю работу с ком портом вынести в отдельный процесс (не поток) и убивать его если завис, но это совсем уже некрасиво получается.
Аноним 18/12/23 Пнд 10:38:14 #474 №2968041 
Давно не писал ничего и забыл как сделать словарь из трех списков.

Есть у меня
names=['name1', 'name2', 'list3']
heights=['height4', 'height5', 'height6']
weights=['weight7', 'weight8', 'weight9']

Хочу получить такую структуру:
result = {
'NAME': name1,
'PARAMS' : {
'height': height1,
'weight': weight1
},
'NAME': name2,
'PARAMS' : {
'height': height2,
'weight': weight2
},
'NAME': name3,
'PARAMS' : {
'height': height3,
'weight': weight3
}
}
Подскажите, кто чо знает.
Аноним 18/12/23 Пнд 10:50:29 #475 №2968047 
>>2968041
result = [
____{
________"NAME": names,
________"PARAMS": {
____________"height": heights,
____________"weight": weights,
________}
____}
____for i in range(len(names))
]
Аноним 18/12/23 Пнд 10:52:58 #476 №2968050 
>>2968047
Бля, когда уже на сосаче добавят теги для кода, даже в ссаную тележку добавили.
https://ideone.com/Pw1mll
Аноним 18/12/23 Пнд 11:23:05 #477 №2968063 
>>2968050
добра тебе
Аноним 18/12/23 Пнд 11:36:28 #478 №2968070 
>>2968050
а почему не
for name, height, weight in zip(names, height, weights)
Аноним 18/12/23 Пнд 11:37:25 #479 №2968071 
>>2968070
бля букву потерял но понятно чё там
Аноним 18/12/23 Пнд 11:42:43 #480 №2968072 
>>2968070
Можно и через зип, мне просто быстрее через range
Аноним 18/12/23 Пнд 11:46:57 #481 №2968073 
>>2968047
>>2968070
zip_longest, т.к. не пореряет данные если списки будут разной длинны
Аноним 18/12/23 Пнд 11:57:03 #482 №2968077 
>>2933108
Расстановка приоритетов и все такое. Одним глазом работает тайм-менеджмент, и прочая шизазалупа, которой пичкают современных ребятишек. На самом деле есть потушить жопу, и здраво подойти ко всей этой теме, то можно неплохо вырасти в плане управления временем и осваивания новых вещей для самого себя. Но это все в теории и вероятно. Если в голове бардак и настоящего желания учиться нет - хуйца по итогу только можно будет соснуть.
>как зумеры выдерживают такую гонку?
Времени + мотивации дохуя. И то не у всех.
Аноним 18/12/23 Пнд 12:40:09 #483 №2968114 
>>2968050
>когда уже на сосаче добавят теги для кода
Были уже. Начали использовать для сранья и вайпа. И убрали.
Аноним 18/12/23 Пнд 17:38:17 #484 №2968413 
>>2967044
Ну и нахуй вы тогда все тут нужны? Понос словесный выливать? Выключи компутер и иди траву потрогай, Рембо комнатный.
Аноним 18/12/23 Пнд 17:55:25 #485 №2968445 
>>2968413
Причина подрыва?
Аноним 18/12/23 Пнд 20:45:29 #486 №2968622 
>>2968413
Твои лабораторки за тебя никто делаеть не будет, а бесплатно взламывать вебсокеты в браузере тем более. Да и ты не сможешь получить к ним доступ.
Аноним 18/12/23 Пнд 23:09:38 #487 №2968719 
Насколько быстро можно найти первую работу, если учить по 20 часов в неделю?
Аноним 18/12/23 Пнд 23:44:13 #488 №2968734 
>>2968719
Зависит от твоих ожиданий и работоспособности. Если метишь в гугол и занимаешься байтоебством - можно и за десять лет не устроиться никуда.
Если с головой всё в порядке и делаешь только то что нужно - через пару месяцев, может три.
А ещё всё зависит от базы в целом. Если ты условно ебланил в школе с вузом, то вкат может затянуться на долгие годы.
Аноним 18/12/23 Пнд 23:50:27 #489 №2968737 
Интересно, что такого за 3 месяца может изучить хлебушек по питону, чтобы его на работу взяли в текущих реалиях.
Аноним 18/12/23 Пнд 23:52:09 #490 №2968738 
>>2968737
Кроме случая, если его знакомая синька или мидлуха не будет надрачивать всё это время под конкретного потенциального работодателя.
Аноним 18/12/23 Пнд 23:59:59 #491 №2968747 
>>2968737
Обычный рест апи, работы с бд, вызовы к сторонним апи, пару фреймворков и планируемый стек. Немного базового программирования. Всё. Даже такой конч как я освоил это за пару месяцев правда я до этого программировал микроконтроллеры, но не суть
Аноним 19/12/23 Втр 00:11:28 #492 №2968754 
Новая версия шапки https://goonlinetools.com/snapshot/code/#aqb4ejoiuxir84vfonk7l

Призвана решить проблему долбоёбов постащих код. Выкинут раздел с кучей ссылок на говносайты. Добавлен правильный и заметный.
Аноним 19/12/23 Втр 00:20:54 #493 №2968755 
>>2968747
Половина ждунов с нарисованным опытом не знают, может ли быть в гет-запросе боди или как куки работают, а большая часть не знает, как работают сессии в алхимии или что такое uow, но уже 150к с ноги хотят я бы тоже хотел, чего скрывать, но сами за 3 месяца че-то не могут это освоить.
Аноним 19/12/23 Втр 00:27:00 #494 №2968758 
>>2968755
на самом деле боди модет быть где угодно, а запрос называться не get, а uwu, например
Аноним 19/12/23 Втр 00:31:06 #495 №2968763 
>>2968754
Мб заменить старпёрный видос бизли на плейлист молчанова?
https://www.youtube.com/playlist?list=PLlWXhlUMyooawilqK4lPXRvxtbYiw34S8
Аноним 19/12/23 Втр 00:34:56 #496 №2968765 
>>2968758
Только в твоих влажных мечтах, манька в гольфиках.
Аноним 19/12/23 Втр 00:38:15 #497 №2968767 
>>2968755
Чёт проиграл с тебя, вообще вебморд не касался за последние 3 года ни разу
мимо получаю 280к
Аноним 19/12/23 Втр 00:41:49 #498 №2968771 
>>296876
Ну так и я получаю 280к и уже почти 2 месяца код не пишу, только статусы в эпиках в жире меняю и документацию обновляю, т.к. всё давно отрефакторил и тестами покрыл, ведь 2 предыдущие команды олигофренов не смогли это сделать за предыдущие 2 года.
Аноним 19/12/23 Втр 02:10:25 #499 №2968811 
>>2968771
>отрефакторил
>и тестами покрыл
А чем нибудь кроме бесполезной хуйни ты занимаешься на рабочем месте? Где таких держат?
Аноним 19/12/23 Втр 02:47:52 #500 №2968818 
>>2968765
Почему? Это просто общепринятый стандарт. Можешь сам проверить на fastapi и сделать через постман гет запрос с боди. Прочитает.
Да и я часто в логах вижу боты посылают запросы отличные от get/post. Это просто общепринятый стандарт, не более.
Аноним 19/12/23 Втр 03:04:36 #501 №2968823 
>>2968811
Да, назаровских волков-ебанашек на собесах попускаю. А ты где полезной нехуйней занимаешься?
Аноним 19/12/23 Втр 03:24:51 #502 №2968824 
>>2968818
Отправил тебе за щеку options-запрос с хуем в боди, можешь не проверять.
Аноним 19/12/23 Втр 04:10:29 #503 №2968830 
image.png
Есть один сервис, который отдает такой токен: 1702947606108.009da13328e560c5debf0142ece04950
Первая часть до точки - это UNIX time GMT: Tuesday, 19 December 2023 г., 1:00:06.108.
Какие предположения насчет второй части токена, которая после точки?
Есть ли какой-нибудь сервис, чтобы попробовать разные типы шифрования, сравнивая их? Вроде видел какой-то сайти с окошками для SHA, AES, но хоть убей не вспомню как нагуглить даже.
Аноним 19/12/23 Втр 06:00:17 #504 №2968838 
>>2968830
очевидный хеш, 32 hex символа, 128 бит. Может md5, может обрезанный большой хеш. Брать могут от чего угодно, например там id пользователя, таймстамп, пароль + какая-нибудь длинная соль.

Если разработчик не полный идиот, что сейчас редко бывает, то шансов сломать нет.
Аноним 19/12/23 Втр 09:50:29 #505 №2968943 
сап
Может есть у кого мысли - нужно во всех лежащих в папке xml файлах удалить строки, содержащие определенные слова. Сам не разберусь
Аноним 19/12/23 Втр 11:26:48 #506 №2969007 
>>2968943
В чём конкретно проблема? Что ты умеешь, чего не умеешь?
Для работы с XML используй
https://docs.python.org/3/library/xml.etree.elementtree.html

там ты можешь загрузить XML файл в специальный объект
пройти по всем узлам, например по узлам нужного типа (изучай xpath, крайне необходимая вещь), если в тексте узла содержится нужное слово, то удаляешь его из родителя. Дальше дампишь XML в файл

Смотри доку, там примеры есть многого
открытие ET.load()
из объекта в xml обратно ET.dump(root)
Аноним 19/12/23 Втр 11:55:21 #507 №2969024 
>>2968823
>А ты где полезной нехуйней занимаешься?
В местах где сказать начальству на вопрос чем занимался - я
> отрефакторил и тестами покрыл
все равно что сказать
> пузыри слюнями пускал, а сейчас вот какаюсь
Аноним 19/12/23 Втр 12:50:31 #508 №2969068 
>>2969024
Забавно таких клоунов встречать, мнящих себя дохуя важными-бумажными, а на деле молча сидят на дейликах, лишь бы не спросили, что вчера делал.
Аноним 19/12/23 Втр 13:41:05 #509 №2969095 
>>2969024
>на вопрос чем занимался
Мимо синьор девелопер. Докладываю:
1. Спросил в трех рабочих чатах "Ну чо там?"
2. Провел созвон, подвигал карточки.
3. Написал требования к документации.
4. Прокомментировал документацию.
5. Ответил на комментарии к своим комментариям к документации.

Кстати получаю 450к. Кода не писал уже шесть лет.
Аноним 19/12/23 Втр 13:42:35 #510 №2969097 
>>2969068
Конечно тревожно, ведь если сказать твой бред то в ответ тебя удивленно спросят "а почему ты нихуя не делал?" и выебут по кругу всем трудовым коллективом.
Аноним 19/12/23 Втр 13:43:30 #511 №2969098 
>>2969095
>документации
https://www.youtube.com/watch?v=Sbg3UcBOwng
Аноним 19/12/23 Втр 14:34:44 #512 №2969150 
image.png
>>2966147
Дарк тему в админку подвезли наконец то
Аноним 19/12/23 Втр 15:02:09 #513 №2969170 
>>2969150
Тащемта темная тема и в третьей джанге была.
Аноним 19/12/23 Втр 15:34:11 #514 №2969196 
>>2969170
Ну в 4 не было. По крайней мере из коробки.
Только что венв с 4 отдельно поднимал, что бы проверить.
Да и в 3 я что то не припомню на вскидку.
Аноним 19/12/23 Втр 20:59:24 #515 №2969588 
>>2969196
Включи в системе/браузере темную тему и проверь еще разок.
https://docs.djangoproject.com/en/3.2/ref/contrib/admin/#theming-support
Аноним 19/12/23 Втр 22:29:51 #516 №2969657 
image.png
>>2969588
Не. Смотри внимательнее. Я пик не просто так приложил.
Это из коробки прям. Самый первый запуск админки в самом первом пустом приложении
Аноним 19/12/23 Втр 23:59:16 #517 №2969707 
Джангисты на месте? Возможно ли реализовать бесконечную прокруту/бесконечный скрол вместо обычной пагинации стандартными средствами джанги?
Аноним 20/12/23 Срд 07:33:34 #518 №2969919 
>>2969657
Так в 3 тоже из коробки, только кнопки нет, админка сама решает какие стили применить на основании того включена ли у тебя темная тема в системе или нет.
Аноним 20/12/23 Срд 08:15:29 #519 №2969945 
>>2969707
Можно конечно, но нужно использовать js
Аноним 20/12/23 Срд 14:30:48 #520 №2970402 
Джанга это, что называется - "в семье не без урода"
Аноним 20/12/23 Срд 14:51:56 #521 №2970428 
Дайте пожалуйста названия годных книг по нейронным сетям.
Аноним 20/12/23 Срд 14:59:42 #522 №2970443 
>>2970402
Что сказать-то хотел?
Аноним 20/12/23 Срд 16:07:46 #523 №2970561 
>>2970428
Николенко - Глубокое обучение
Аноним 20/12/23 Срд 16:10:01 #524 №2970568 
15036787785890.png
>>2970561
Аноним 20/12/23 Срд 16:31:56 #525 №2970588 
>>2970561
а для начинающих что-то ?
Аноним 20/12/23 Срд 18:13:10 #526 №2970731 
>>2970588
Петерсон - Игралочка
Аноним 20/12/23 Срд 19:14:44 #527 №2970781 
image.png
>>2969945
Что то мне кажется, что этот ленивый голубец припёздывает мне. Парсингом я давно занимаюсь, но никогда не видел, что бы запрос джэйсона улетал буквально на каждое деление колёсика скроллинка. Или это в натуре норма?
Аноним 20/12/23 Срд 19:55:23 #528 №2970821 
>>2970781
Твоя гопота не знает про debouncing.
Аноним 20/12/23 Срд 20:01:17 #529 №2970826 
>>2970821
Знает, как оказалось, если подробнее расспросить. Я прост заказывал минимал вариант, что бы прорубить тему.
Debouncing или Throttling: Вы можете использовать технику дебаунсинга или траттлинга, чтобы ограничить частоту отправки запросов. Таким образом, запрос будет отправляться не каждый раз, когда событие scroll срабатывает, а с задержкой. Вы можете использовать библиотеки, такие как Lodash, которые предоставляют функции дебаунсинга и траттлинга.

Threshold (Порог прокрутки): Регулируйте значение 100 в $(document).height() - 100 в вашем коде. Это значение определяет, насколько близко к концу страницы должен быть скролл, чтобы начать подгружать новые статьи. Вы можете изменить это значение, чтобы запросы отправлялись менее часто.
Аноним 20/12/23 Срд 20:03:59 #530 №2970829 
И всё равно, какое то ощущение костылинга не покидает
Аноним 20/12/23 Срд 21:23:05 #531 №2970927 
>>2970821
Троттл кстати на скролл лучше всего подходит, дебаунсинг - это для инпутов хорошо.
Аноним 21/12/23 Чтв 12:55:46 #532 №2971396 
video2023-12-2112-38-40.mp4
Ананасы, я доволен, как слон.
Ну и ебучий конечно язык джаваскрипт. Я нихуя не понимаю, как это работает, но работает, вроде как надо.
Джанга. Подгрузка статей из базы по 10 штучек посредством бесконечного скролла. При этом запросы не дидосят базу.
Мне больше не с кем поделиться счастьем, у меня нет ни одного знакомого, который бы эту хуйню понимал.
Аноним 21/12/23 Чтв 13:04:21 #533 №2971417 
>>2971396
Ты только что записал монитор на камеру смартфона?
Аноним 21/12/23 Чтв 13:17:29 #534 №2971443 
>>2971417
а че? я же прогромист, ловкий и умелый
Аноним 21/12/23 Чтв 13:20:07 #535 №2971451 
>>2971417
В позапрошлом году здесь был подросток, учившийся питону и славший бесконечные мыловидео с экрана ноутбука.

Вот. Подрос, сын полка!
Аноним 21/12/23 Чтв 13:34:27 #536 №2971467 
>>2971417
По-твоему я должен обмазываться прогами захвата экрана ради одной записи?
Аноним 21/12/23 Чтв 15:32:31 #537 №2971644 
Охуенно, посоны!
Ни строчки кода на ебучем джыэсе!
Сделал по этому гайду:
https://fmacedo.com/posts/1-django-htmx-infinite-scroll/

Бонусом, там показано, как правильно парсер прикручивать. Вот бы еще найти, как эту команду по таймеру прям из рантайма джанги запускать
Аноним 21/12/23 Чтв 15:42:05 #538 №2971658 
>>2971396
>Я нихуя не понимаю, как это работает, но работает
Все нормально, ты по скиллам уже как среднестатистический мидол пайтон девелопер.
Аноним 21/12/23 Чтв 18:54:48 #539 №2971803 
Народ, а какой GUI на сегодняшний день наиболее котируется? Хочу написать настолку, только 2д-графика. По геймплею: бросок кубиков, выбор действия, чтение карточек.
Я консольную версию написал, всё работает, вот теперь хочу графоний прикрутить со свисто-перделками.
Видел на гитхабе "монополию" довольно хорошо сделали на tkinter. Можно и на нём начать писать, но есть вопросики:
- как у него с добавлением визуальных эффектов в виде сияний, подсветок и 2д-анимаций?
- что с кросс-платформенностью? Я могу потом это всё закинуть себе на андроид-планшет или ещё куда?

Короче, поясните нюфане за GUI на питоне в 2023м?

Если что, раньше прогал на С++ и в Qt соответственно всякие служебные утилиты под винду и линукс. Но залазить в PyQt как-то не очень хочу. Ощущение, что я химическую лабораторию использую, чтоб чай заварить
Аноним 21/12/23 Чтв 19:03:35 #540 №2971807 
Кто-нить фрилансит на питоне? Как решение отдаёте кабанчикам, разворачиваете всё как надо через докер или тупо exeшник генерируете?
Аноним 21/12/23 Чтв 20:09:21 #541 №2971862 
>>2971803
Ничего универсальнее, гибче и красивее, чем HTML+CSS всё равно нет, хули тут думать.
Ну если точно хочешь изучить огромную ебанину и при этом оставаться в оконцове жестко привязанным онли к декстопу и мобиле - знамо дело, бери qt, если не огромную ебанину, но всё равно нюхать десктоп и мобила по жизни есть custom tkinter, тоже красиво более менее.
С ХТМЛ и ЦСС же ты можешь хоть под что хуярить. Даже под телегу, учитывая эту новую фичу вкручивать веб прям в внутрь телеги.
Аноним 21/12/23 Чтв 20:45:25 #542 №2971880 
>>2971862
>Ничего универсальнее, гибче и красивее, чем HTML+CSS всё равно нет
Двачую это. Если уж пиздец как захочется на десктоп портнуть - можно завернуть в электрон.
Аноним 21/12/23 Чтв 20:58:15 #543 №2971895 
>>2943216
Все нормальные языки используют верблюда, а так как петухон не язык, а аналог баш скриптов, его мнение не учитывается
Аноним 21/12/23 Чтв 21:04:22 #544 №2971903 
Ребзя, поясните чисто по хардкору.
Вот есть база со статьями, есть пустой шаблон, с одним дивом флекс ширина 100vw, высота 100vh. Есть отдельно шаблон карточки на флексах, растянут по ширине и высоте на 100%.
Я правильно думаю, что
for статья in статьи:
рисовать див, в котором инклюд шаблон карточки, в которой в свою очередь уже подставлены данные?
Хочу что бы на голом шаблоне появлялись красивые карточки ровно с тем, что в базе есть. Если в базе ничего нет, то и не появляется ничего.
Сорян, что объясняю, словно боженька.
Аноним 21/12/23 Чтв 21:06:35 #545 №2971909 
>>2971895
>не язык
Turing Complete так то
Аноним 21/12/23 Чтв 21:12:09 #546 №2971917 
>>2971467
Ты пойми одно. Каждый раз это будет всего одна запись и каждый раз всего одна запись будет позорить тебя. Поставь себе OBS и настрой его всего один раз и в будущем оно тебе пригодится каждый раз
Аноним 21/12/23 Чтв 21:13:40 #547 №2971920 
>>2971903
Хуевато объяснил, но ты мыслишь в правильном направлении.
Аноним 21/12/23 Чтв 21:18:14 #548 №2971929 
>>2971807
Зависит от клиента, кому надо на хостинге крутить там докер, кому на десктопе там обычный батник или экзе
Аноним 22/12/23 Птн 11:16:10 #549 №2972418 
image.png
>>2933091 (OP)
Братцы, кто-нибудь подключался к postgres с помощью pyodbc? Он у нас в фирме стандарт (т.к. в основном юзают мускл), захотел постгрес приконнектить, по идее стандарт это допускает, когда начал делать, sclalchemy начал ругаться на недостающие либы (хотя установил pyodbc в зависимостях и либу odbc-postgresql в контейнер). Вот спроси лу Чат ГПТ но он начал хуйню нести, его не смущает в ответе, что он указал драйвер PostgreSQL Unicode но в коннекте прописал: mssql+pyodbc
Аноним 22/12/23 Птн 12:03:27 #550 №2972483 
>>2972418
Ну так доустанови недостающие либы, хули ты?
Аноним 22/12/23 Птн 13:48:28 #551 №2972680 
>>2972483
Что доустанови? Сказано же что я накатил как в зависимости питона все так и в контейнер. Ему пох
Аноним 22/12/23 Птн 13:52:16 #552 №2972688 
Джанганы, вот у меня в базе есть флаг с булевым значением 0-1, как вы делаете, что бы в зависимости от флага в шаблон вставлялась фраза "Дать краба" - "Отшить петуха"?
Это сериализаторы курить или сериализаторы ни при чем и можно проще? (я в дрф пока не лезу)
Аноним 22/12/23 Птн 13:56:24 #553 №2972697 
Ох ебать, сам догадался кажись. Условие прям в шаблон же можно воткнуть
{% if база.флаг = 1 %}
<div класс="Дать краба">Дать краба</div>
{% else %}
<div класс="Отшить петуховена">Отшить петуховена</div>
{ end if }
Думаю, как то так сработает
Аноним 22/12/23 Птн 14:10:28 #554 №2972734 
>>2972697
А если документацию попробуешь почитать - вообще охуеешь.
Аноним 22/12/23 Птн 14:25:32 #555 №2972782 
2023-12-22 14-22-43.mp4
>>2971917
Спасибо, ананас, за рекомендулю.
Аноним 22/12/23 Птн 14:26:49 #556 №2972784 
>>2972734
Ткни носом, чё ты как типичный красноглазик на красноглазых форумах себя ведёшь
Аноним 22/12/23 Птн 15:16:44 #557 №2972868 
>>2972784
>как красноглазик на красноглазых форумах
А мы где?
Аноним 22/12/23 Птн 17:24:21 #558 №2972976 
>>2972868
Мы на двощах, тут аноны помогают своим коллегам анонасам
Аноним 22/12/23 Птн 17:58:45 #559 №2972999 
>>2972976
Зашел на Двач ты, советов просишь мудрых...
Аноним 22/12/23 Птн 22:12:03 #560 №2973271 
>>2972688
Ну ты чего, шаблоны прекрасно поддерживают условия.

{% if flag %}
Дать краба
{% else %}
Отшить петуха
{% endif %}

Или

{{ "Дать краба" if flag else "Отшить петуха" }}
Аноним 22/12/23 Птн 23:51:37 #561 №2973328 
>>2972688
>>2972697
https://docs.djangoproject.com/en/4.2/ref/templates/builtins/#yesno
Аноним 23/12/23 Суб 22:10:25 #562 №2974243 
Какой же чат жпт тупой, пиздец просто.
Сейчас спрашиваю его сколько символов я могу передать в Питоне3.7 через subprocess.call(), ОС виндоус.
Отвечает мне: ТОЛЬКО 8191.
Но я же помню что ещё в 2.7 передавал под 32000.
Чекаю, так и есть - 32к, если 33к ошибка длины.
Пишу ГПТ - вот передал 32к, оправдывайся.

"Мням мням, ну у вас наверное какие-то особые настройки ОС стоят и вообще лучше не больше 8191 передавать"
Буквально так и ответил. и вот на этом говне сейчас баристы учатся погромировать.
Аноним 23/12/23 Суб 23:07:09 #563 №2974371 
>>2974243
А теперь купи последний жыпити и переспроси.
Аноним 23/12/23 Суб 23:07:58 #564 №2974375 
>>2974243
Но ведь жпт должен был отобрать у нас работу, как же так получилось что он пишет нерабочий код, хмм...
Аноним 24/12/23 Вск 08:58:00 #565 №2974763 
>>2974371
>купи
>переспроси
>перепроверь
>надейся что за твои деньги чатбот тебе не высрал рандомный набор букв

Ебало гпт-сектантов представили? Которые ПОКУПАЮТ.
Аноним 24/12/23 Вск 09:16:26 #566 №2974768 
>>2974243
Дык, это суть нейросетей и ИИ — давать ПРИМЕРНЫЙ результат, совпадающий на заданную точность с истиной.

Это в принципе не энциклопедия и никогда ею не станет. Это как человеческие сны, где всё позволено, никакой критики и центр критичности мозга подавлен гормонами сна. Посмотрите, бля, на рисунки нейросетей — это наши сны.

Точные ответы — это совсем другая область и её либо бросили разрабатывать, добившись гипертекста (и википедии на нём), либо ещё даже не начали подступаться (реальный искусственный разум, а не интеллект).
Аноним 24/12/23 Вск 12:47:16 #567 №2974967 
>>2974763
А ты иначе последний гпт никак не запустишь, дурачёк. Если ты вообразил, что найдешь свободную модель 4.5 на хаггингфэйс и запустишь на своей помойке, то ты глубоко ошибаешься.
А последний жпт верстает по скинутой ему пикче, не то, что твои даунские ответы подсказывать.
Аноним 24/12/23 Вск 14:29:05 #568 №2975091 
>>2974768
>Дык, это суть нейросетей и ИИ — давать ПРИМЕРНЫЙ результат, совпадающий на заданную точность с истиной
Скорее это нейросети на текущем этапе развития. Человек ведь тоже нейросеть, но в состоянии выдавать точные результаты.

Я думаю через какое-то время нейросети научатся нормальному логическому мышлению, плюс будут помнить чётко какие-то фактические данные и уметь ими оперировать. Принципиальный проблем тут нет.
Аноним 24/12/23 Вск 16:05:19 #569 №2975229 
>>2975091
Принципиальная проблема есть одна, но ооочень сложная. На столько, что умные дядьки решили приостановить пока это дело, потому что совершенно чётко понятно, что дальнейшее развитие приведет к непредсказуемым, но абсолютно точно к ужасающим результатам. Проблема 2000 года - это просто шутка петросяна, по сравнению с проблемой согласования.

Письмо чувака, который стоит у истоков создания нейронки:
https://baza.io/posts/7430dbf1-bd3e-4780-9919-4b727baa3f5f

Научпоп, который объясняет на пальцах:
https://www.youtube.com/watch?v=fJOPGbbqMvw&t=1s
Аноним 24/12/23 Вск 16:26:42 #570 №2975285 
>>2975229
оффтопик, но я вижу больше проблему не в сверхъуме ИИ, а в сверхтупости человечества и неспособности его решать проблемы и отвечать на вызовы
Аноним 24/12/23 Вск 16:36:55 #571 №2975322 
>>2975285
>Это не титаник разбился об айсберг, это айзберг разбил титаник.
Аноним 24/12/23 Вск 17:25:47 #572 №2975441 
>>2975091
Да хуй там. Просто у человека есть другие слои, не являющиеся нейросетями. А есть нейросети. Это очевидно.

>нейросети научатся нормальному логическому мышлению
Ты лучше прочти что-нибудь про них и пойми, что логики там ноль и никогда не завезут. Потому что это матрица расстояний до приемлемого результата с некоторой точностью. Там нет логических цепочек в принципе, есть куча вариантов, некоторые из которых УПРОЩЁННО — близки к истинному ответу. Полного совпадения тоже может никогда не быть. Именно поэтому я сказал про сны, если ты внимательно об этом подумаешь.

Но у человека есть ещё слой разума и слой логики, сделанные не по принципу нейросетей. И есть ещё лимбическая система, вегетативная и прочее. Человек сложнее комплексно, а не вычислительно.
Аноним 24/12/23 Вск 17:28:19 #573 №2975447 
>>2975229
Хуйня какая-то))
Для гуманитарных пориджей-овощей.

Проблема нейронок — их быстрое вырождение, если в обучение примешиваются результаты других нейронок или предыдущие результаты этой. ЧатГПТ так был убит. А вмешивание неизбежно, так как в сети скоро будет нейронками насрано по самую крышу. Законы о маркировке нейросетевого творчества как раз про это — чтобы отделить то, что ведёт к быстрому вырождению твоей нейронки, в которую вложены миллиарды. Если не маркировать, триллионы долларов тупо сгорят нахуй.
Аноним 24/12/23 Вск 17:36:50 #574 №2975456 
Python 2015 года сильно отличается от Python 2023 года?

Где почитать про эти отличия?
Аноним 24/12/23 Вск 17:44:31 #575 №2975467 
>>2975441
>Ты лучше прочти что-нибудь про них и пойми, что логики там ноль и никогда не завезут. Потому что это матрица расстояний до приемлемого результата с некоторой точностью.
Мне кажется ты сам читал про простейшие нейросети и на основе этого делаешь выводы. Но современные нейросети на порядки сложнее.

Человеческий мозг это тоже нейросеть. Всё логическое мышление в нём, осознание, понимание смысла - это всё та же нейросеть.

>Но у человека есть ещё слой разума и слой логики, сделанные не по принципу нейросетей.
А по какому, интересно? Какой тип клеток за него отвечает, где они находятся, как соединены друг с другом?
Аноним 24/12/23 Вск 17:51:04 #576 №2975482 
>>2975456
>Python 2015
Какую версию ты имеешь в виду?
Там по календарю вроде 3.5 в 2015 выпустили. Тогда слёту
1) f-string, без них сейчас никуда вообще, завезли вроде бы в 3.6
2) asyncio, завезли в 3.5 в современном виде, но реально добили к 3.7
3) очень много вокруг аннотаций-типизации, это то, что и сейчас ещё дорабатывают

Мне кажется это вот самое ключевое, прочее, вроде := и каких-то отдельных библиотек уже так, совсем мелочи
Аноним 24/12/23 Вск 18:19:43 #577 №2975534 
>>2975467
>Человеческий мозг это тоже нейросеть. Всё логическое мышление в нём, осознание, понимание смысла - это всё та же нейросеть.
Нихуя, нейронки не способны в индукцию, так как это просто умная статистическая машина, а без нее любая попытка мышления не представляет никакого смысла
Аноним 24/12/23 Вск 19:11:36 #578 №2975675 
>>2975534
>Нихуя, нейронки не способны в индукцию
Ну человек же способен? А человек тоже всего лишь нейросеть.

Мне кажется, что ты представляешь себе нейросети как "многослойные перцептроны". Они да, примитивны. Но блин, все современные ИИ это "рекурентные" нейросети, с обратной связью, со сложной топологией. Как только появляется обратная связь, так, в принципе, появлятся возможность самообучения.

Для человека логическое мышление это высшая форма мышления, оно развивается позже и не у всех Там просто чуть сложнее обучить нейросеть этим вот способностям, при этом реально текущих нейросетей уже достаточно.

Нейросеть с обратной связью способна абсолютно на всё. Это как машина Тьюринга может всё вычислить, что в принципе возможно, так и нейросеть с обратной связью способна к абсолютно всем формам мышления.
Аноним 24/12/23 Вск 19:39:23 #579 №2975760 
aec17e36a3eaacc70a6eb099e5bfc054-g.jpg
>>2975482
Пикрил хочу прочитать. Издан в 2015.

Тут примеры кода - https://introcs.cs.princeton.edu/python/code/
Аноним 24/12/23 Вск 19:56:34 #580 №2975794 
Ребзя, есть у меня проект на джанге "xui", в нём есть приложение "zalupa".
Возможно ли стандартными инструментами джанги (не прибегая к крону и селери) сделать так, что бы каждые пять минут в консоль выводилась надпись "xui i pizda igraut v poezda"? Т.е. по таймеру, не по нажатию кнопки.
Неужели будет нормой, если я ебану бесконечный цикл с time.sleep() прям во вьюхе?

Из соображений придурковатости все имена были изменены.
Аноним 24/12/23 Вск 20:14:35 #581 №2975825 
>>2975456
>>2975760
В 2023 версии print надо писать со скобочками, в 2015 без.
Это главное отличие. Есть еще всякие мелочи но их знать не обязательно. Примеры из книжки должны работать.
Аноним 24/12/23 Вск 20:28:20 #582 №2975850 
>>2975794
Нет нельзя, используй django-crontab
Аноним 24/12/23 Вск 20:37:07 #583 №2975855 
>>2975825
В этой книге сказано:

> Q. Are there standard Python modules for handling standard output?

> A. Actually, such features are built into Python. In Python 2, you can use the print statement to write data to stdout. In Python 3, there is no print statement; instead, there is a print() function, which is similar.

Получается, что print "Hello World" это statement, а не функция с т.з. синтаксиса, потому что нет скобок?
Аноним 24/12/23 Вск 20:41:30 #584 №2975861 
>>2975467
>Человеческий мозг это тоже нейросеть
Отнюдь. Нейросеть там — только слой в неокортексе и более примитивный, но более мощный, слой в лимбической системе.

Нахуй нам всегда приблизительно вычислять 2+2 в районе от 1 до 10? Ты так мамонта не поймаешь и от тигра не убежишь. У нас, как минимум, есть память, которая нейронкой не является. Даже и организованная как гирлянда нейронок для уменьшения неточности. Но кроме нейронок есть ещё что-то, ими не являющееся.

>>2975467
>как соединены друг с другом?
Так и нейроны соединены вовсе не так, как организованы нейросети. Нейросетевые примитивы (единицы) — это лишь очень приблизительная ИМИТАЦИЯ МОДЕЛИ нейрона, как его видели в 1963 году, когда нейросети появились. Сейчас просто формулы сложнее, потому что вычислительные мощности больше. А сами по себе нейросети фундаментально не изменились, это вс то же самое вычисление расстояний и перемножение матриц.
Аноним 24/12/23 Вск 20:43:49 #585 №2975866 
>>2975675
>Как только появляется обратная связь, так, в принципе, появлятся возможность самообучения.
В существующих реалиях это ведёт к почти мгновенному вырождению сетей. Так что, это не то самое самообучение, как школотрон сидит и дрочит географию в 5 классе. Нейронки не могут обучаться на собственных результатах бесконечно, это их убивает, потому что результаты приблизительные, а получающиеся на их основе результаты всё более приблизительные. Нужно постоянное вмешательство человека для правок.
Аноним 24/12/23 Вск 21:04:58 #586 №2975909 
>>2975850
То есть, как джангу не крути, всё равно любое правильное решение с таймерами подразумевает запуск планировщика на сервере отдельным, параллельным с джангой процессом, так?
Аноним 24/12/23 Вск 21:28:14 #587 №2975944 
>>2975909
А как ты себе это иначе представляешь? Это в любом случае будет какой-то параллельный процесс
Аноним 24/12/23 Вск 21:33:54 #588 №2975954 
>>2975760
не читай говно мамонта. возьми норм книги для людей, а не обезьян
Аноним 24/12/23 Вск 21:41:49 #589 №2975969 
>>2975944
Понял, принял.
Я честно думал, что можно запускать сторонний сриптец прям из джанги и во время работы джанги, например, когда нагрузки по запросам на сервант нет, типа как в многопоточности или типа того. Таймер сработал, задача выставлена в стек, как только свободно - исполнилось, как то так. Гуглил, спрашивал умную железяку, а везде селери и кроны предлагаются.
Вот и зашел уточнить.
Аноним 24/12/23 Вск 21:51:58 #590 №2976001 
>>2975969
А у тебя не очень хорошо с пониманием как всё это работает, да?
Аноним 24/12/23 Вск 21:53:04 #591 №2976004 
>>2975954
>возьми норм книги для людей
Например?
Аноним 24/12/23 Вск 22:07:42 #592 №2976028 
image.png
>>2976001
Да. Я не отрицаю, возможно это я дебил, но ни в одной вводной лекции, которые я смотрел, я так и не врубился глубоко и до конца в эти схемы. Интуитивно то я догоняю примерно, как взаимодействуют модели с вьюхами и шаблонами, но в целом полностью всю картину сам не объясню.
А уж из таких книг, как например "Джанго 4 в примерах" я вообще нихуя не понимаю.
Кстати, анон >>2976004 не читай джанго 4 в примерах. Ищи дальше.
Аноним 24/12/23 Вск 22:14:59 #593 №2976044 
>>2976004
пайтон к вершинам мастерства
Аноним 24/12/23 Вск 22:18:07 #594 №2976052 
image.png
Чисто по чесноку, все ли в этом тредике технари, согласно пика?
Лично я гуманитарий.
Аноним 24/12/23 Вск 22:32:29 #595 №2976073 
>>2975954
Вообще-то эту книгу написал легендарный Сэджвик, автор книги по алгоритмам.
Аноним 24/12/23 Вск 22:45:13 #596 №2976090 
>>2976073
а толку от нее если она устарела чуть менее чем полностью.
Аноним 24/12/23 Вск 22:46:37 #597 №2976091 
>>2976028
поищи норм лекции архитектурные.
Аноним 24/12/23 Вск 22:46:48 #598 №2976092 
>>2976090
Что там устарело?
Аноним 24/12/23 Вск 23:20:09 #599 №2976153 
>>2975866
>В существующих реалиях это ведёт к почти мгновенному вырождению сетей. Так что, это не то самое самообучение, как школотрон сидит и дрочит географию в 5 классе. Нейронки не могут обучаться на собственных результатах бесконечно, это их убивает,
Человек тоже не может. Школьник дрочит географию по учебнику. И математику. Запри его в камере-одиночке без книг и общения и посмотри, что будет. Много ли он новых знаний откроет, хотя бы в математике, которая конструктивна? Скорее всего на выходе ничего полезного не будет. Крыша съедет с катушек и всё. Потому что точно так же нет подкрепления.

Специализированные нейронки, кстати, в состоянии обучаться с нуля. Вон в том клипе про такие нейронки упоминали. Это нейронки, которые за стратегии в играх отвечают.

>>2975861
>У нас, как минимум, есть память, которая нейронкой не является.
Память человека это тоже нейросеть. Нейросеть может хранить данные, и даже простые программируемые нейросети с обратной связью способны хранить данные.

Весь прикол в том, что тут примерно как с машиной Тьюринга и Тьюринг-полными языками программирования. Достаточно минимального простейшего типа элементов и большой программы (то есть примитивных нейронов и возможности составлять из них очень сложные сети с произвольной топологий) и ты можешь реализовать ВСЁ. То есть вообще всё.

Вся сложность конструирования нейросетей в том, чтобы их обучить потом. И в человеке не нулевая сеть с нуля обучается, а от рождения там уже очень сложная структура заложена, предварительно обученная.
Аноним 24/12/23 Вск 23:48:57 #600 №2976222 
>>2975229
>проблемой согласования.
>Научпоп, который объясняет на пальцах:
Это не научпоп, а инфоцыганщина, которая плодит невежество среди быдла вроде тебя. Почти полностью состоит из мемсов, антинаучной хуиты и магического мышления.
Аноним 25/12/23 Пнд 00:04:12 #601 №2976254 
>>2976222
>не научпоп, а инфоцыганщина
А это не одно ли и то же?

>>2976091
Друг, спасибо, но архитектуры много разной, в какую сторону курить конкретнее?

>>2975944
>Это в любом случае будет какой-то параллельный процесс
Но в чём тогда соль прикручивания конкретно к джанге, если я вообще любым планировщиком могу запускать скрипты? Типа использование единой ОРМ, если скрипт с базой работает?
Аноним 25/12/23 Пнд 00:16:26 #602 №2976314 
>>2976254
Не, научпоп это какой-нибудь Карл Саган, ученый, который задорно рассказывает про предмет своего знания или смежного, чтобы заинтересовать детей. А часовое видео выше от гопника - намешанная со всех краев интернета ведро помоев, сборник мемсов и старшилок с нулевой ценностью. Даже с отрицательной ценностью - потому что плодит невежество.
Аноним 25/12/23 Пнд 00:56:02 #603 №2976370 
>>2976092
все
Аноним 25/12/23 Пнд 00:57:00 #604 №2976373 
>>2976254
ну если у тебя джанга то mvc очевидно.
Аноним 25/12/23 Пнд 08:08:56 #605 №2976535 
>>2976370
Ты даже не открывал эту книгу, чел.
Аноним 25/12/23 Пнд 10:18:25 #606 №2976657 
>>2976254
> Но в чём тогда соль прикручивания конкретно к джанге
Люди привыкли что в джанге все из коробки. Скоро начнут просить чтоб была джанга-докер, джанга-линукс, джанга-компьютер, джанга-интернет, б-же упаси.
Просто надо сделать модуль с __main__.py, включи туда while True, обвешай ексепшонами и прикрути таймеры ожидания и перезапуска. Вот тебе крон
Аноним 25/12/23 Пнд 11:40:51 #607 №2976731 
>>2976535
и не надо. если она 15ого года то открывать уже нельзя.
Аноним 25/12/23 Пнд 11:45:13 #608 №2976737 
706.jpg
Как правильней вытянуть инфу с сайта через реквестс, если он всякое говно подгружает через жаваскрипт и прочие фреймы?
Понятно что можно через селениум и подобное но не вариант.
Аноним 25/12/23 Пнд 12:14:26 #609 №2976775 
>>2976737
Через консоль браузера находишь урлы с нужной тебе инфой и тянешь через реквестс.
Аноним 25/12/23 Пнд 13:55:46 #610 №2976867 
Как же горит пукан от красноглазых осей. Ну открыл я crontab -e, ну прописал:
* echo "hello world" >> /home/<Я>/tmp
ну сохранил.
Дальше что? Нихуя не происходит.
ТООЧНО не надо запускать никакого демона? Буквально во всех гайдах больше нихуя не говорится, у всех всё заебись после этого, у меня же файл пустой, хоть сколько жди.
Система сама должна крон этот запускать при старте? Не надо добавлять крона в системд никакой? Может это потому что у меня убунта из-под wsl? Вот буквально каждая встреча с линуксами в любом виде - гемор.
Бомбиииит
Аноним 25/12/23 Пнд 14:08:34 #611 №2976873 
image.png
>>2976737
Нулевое - поищи официальный апи, если нет:
Первое - исследуй запросы как на пике, если нет:
второе - ищи джейсон в самых длинных строках возвращаемого хтмл (либо прям в js файлах), суть в том, что бы найти джейсончики вкусные, если нет:
(ты тут) бьютифулсупом разбираешь хтмл, если нет:
селениум.
Аноним 25/12/23 Пнд 14:31:07 #612 №2976898 
>>2976867
и чо за кал ты там прописал то епта?
где время когда оно должно запускаться?
Аноним 25/12/23 Пнд 14:32:36 #613 №2976899 
>>2976898
* - каждую минуту, ёпта

>>2976737
Читай короче это, мне в своё время помогло
https://habr.com/ru/articles/579336/
Аноним 25/12/23 Пнд 14:33:48 #614 №2976902 
>>2976898
Блять. Это я в первом посте не дописал. На самом деле у меня так
* echo "hello world" >> /home/<Я>/tmp
Аноним 25/12/23 Пнд 14:34:18 #615 №2976903 
Сука. двощ пять звезд схлопывает в одну!!!
Аноним 25/12/23 Пнд 14:36:27 #616 №2976907 
>>2976899
>> - каждую минуту, ёпта
нет. нормально опиши время всеми звездочками
/path/to/php /var/www/html/a.php
Аноним 25/12/23 Пнд 14:37:17 #617 №2976910 
>>2976902
ебаная макака надеюсь он помрет от рака. куда звездочки деваются из постов
>> * /path/to/php /var/www/html/a.php
Аноним 25/12/23 Пнд 14:37:59 #618 №2976911 
>>2976902
короче вот
https://crontab.guru/every-1-minute
Аноним 25/12/23 Пнд 14:41:29 #619 №2976917 
IMG20231225153626.jpg
>>2976867
>>2976899
>>2976902
не правильно ты сконфигурировал.

# For example, you can run a backup of all your user accounts at 5 a.m every week with:
# 0 5 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)

для запуска задач системного крона почитай про run-parts
Аноним 25/12/23 Пнд 14:41:31 #620 №2976918 
Короче, если спокойно выдохнуть, у меня там так:
звездочка звездочка звездочка звездочка звездочка echo "hello world" >> /home/<Я>/tmp
Я же не совсем еблан. Я грешу на wsl, в нормальной оси наверное это работает
Аноним 25/12/23 Пнд 14:43:44 #621 №2976923 
>>2976918
> Короче, если спокойно выдохнуть, у меня там так:
> звездочка звездочка звездочка звездочка звездочка echo "hello world" >> /home/<Я>/tmp
> Я же не совсем еблан. Я грешу на wsl, в нормальной оси наверное это работает
смотри логи: journalctl -u cron
Аноним 25/12/23 Пнд 15:13:03 #622 №2976998 
>>2976923
Как я и думал.
cron is not running
sudo service cron start
Starting periodic command scheduler cron
В всл крон по умолчанию не стартует с системой
Аноним 25/12/23 Пнд 16:03:23 #623 №2977043 
Ну что же, анонсы, иду на фуллстек. Осталось раздуплить правильный деплой, переделать весь свой зоопарк консольных парсеров в красивую джангу с бесконечным скроллом и прочими шлюхами и будет у меня неебическое портфолио на показ.
Потом всего то понюхвть залупу на хэдхантере, огорчиться от предлагаемых зарплат и продать жопу за дёшево в это ваше ойти наносековое.
Аноним 25/12/23 Пнд 16:11:20 #624 №2977049 
>>2972418
Как выяснилось через алхимию к этому дерьму не приконнектиться. Лучше не выебываться и спользовать стандартный psycopg / asyncpg
Аноним 25/12/23 Пнд 16:13:20 #625 №2977050 
Аноны, exitcode приложения может быть отрицательным числом?
Аноним 25/12/23 Пнд 16:18:54 #626 №2977055 
>>2977050
-1 (всё хуёво) например
Аноним 25/12/23 Пнд 18:00:33 #627 №2977262 
>>2977050
Либо 0 либо положительные числа.
Аноним 25/12/23 Пнд 18:01:46 #628 №2977265 
>>2977055
Чат-гпт ты? Опять в штаны срешь?

>>2977262
Спс, всё так.
Аноним 25/12/23 Пнд 19:16:54 #629 №2977369 
>>2975855
С точки зрения синтаксиса -- да. Еще разница между statement/function в том что когда принт -- функция его можно использовать в составе выражений например вставлять принт в лямду y = lambda x: print(x) or (x + 1) пользы от этого никакой один вред а когда оператор (statement) то только писать отдельной строкой.
Аноним 25/12/23 Пнд 19:51:21 #630 №2977404 
>>2977262
>Либо 0 либо положительные числа
в винде можно отрицательные, в линуксах же 0-255
Аноним 25/12/23 Пнд 19:56:29 #631 №2977408 
>>2977404
Винда? Ты имеешь ввиду сперму? Оставь это говно для сишарп аутистов
Аноним 25/12/23 Пнд 20:01:15 #632 №2977411 
>>2977369
print как оператор-statement это из второго питона. Не нужно лезть во второй питон, есть более полезные занятия.

also, во втором питоне была возможность сделать
from __future__ import print_function
и использовать print как функцию, точно так же, как в третьем питоне
Аноним 25/12/23 Пнд 20:06:25 #633 №2977418 
>>2977404
В документации 0-127
> Most systems require it to be in the range 0–127, and produce undefined results otherwise.
Аноним 25/12/23 Пнд 20:30:16 #634 №2977433 
>>2977404
Пробовал только что в винде вернуть -2 - нельзя.
Аноним 25/12/23 Пнд 20:31:27 #635 №2977435 
Охуеть. Открытие века. Оказывается один и тот же manage.py можно юзать в двух разных процессах. Один вращает сервак с вьюхами и темплейтами, второй подбрасывает дровишки в базу через тот же орм, который и вьюха использует для показа шаблонов. А я прям не знал.
Аноним 25/12/23 Пнд 21:30:07 #636 №2977476 
>>2977050
Ты типа положительные все уже исчерпал?
Аноним 25/12/23 Пнд 21:32:26 #637 №2977480 
>>2977435
Не устаю кекать с открытий вкатусика.
Аноним 25/12/23 Пнд 21:36:47 #638 №2977492 
Аноны, в доках сказано: This is enforced at the database level and by model validation. If you try to save a model with a duplicate value in a unique field, a django.db.IntegrityError will be raised by the model’s save() method.
Я окружил save() method исключением IntegrityError, а оно не перехватывается. Выбрасывает ошибку django.db.utils.IntegrityError: UNIQUE constraint failed: link
Что может быть?
В модели unique=True выставлено
Аноним 25/12/23 Пнд 22:07:33 #639 №2977563 
>>2975944
Нет, не в любом случае.
Например, в джаваскрипте нет многопоточности, а таймеры - есть, и асинхронность есть.
Выражение "эвент луп" тебе о чём-нибудь говорит?

>>2975794
>если я ебану бесконечный цикл с time.sleep() прям во вьюхе?
За такое пиздят, вообще-то.
Аноним 25/12/23 Пнд 22:12:42 #640 №2977570 
>>2977480
Главное не говорить ему об официальной документации
Аноним 25/12/23 Пнд 23:11:41 #641 №2977629 
>>2977570
Может мы разные документации читаем?
Я вот эту и так с ходу такое (один и тот же manage.py можно юзать в двух разных процессах) там в глаза не бросается.
Аноним 25/12/23 Пнд 23:12:08 #642 №2977630 
>>2977629
https://docs.djangoproject.com/en/5.0/

отклеилось
Аноним 25/12/23 Пнд 23:33:08 #643 №2977656 
>>2977492
Покажи код, чучело. Экстрасенсы в отпуске уже.
Аноним 25/12/23 Пнд 23:56:38 #644 №2977696 
>>2977629
>>2977630
https://docs.djangoproject.com/en/5.0/howto/custom-management-commands/
Аноним 26/12/23 Втр 00:02:54 #645 №2977705 
>>2977656
https://pastebin.com/Eda87QG1
Аноним 26/12/23 Втр 00:05:10 #646 №2977710 
>>2977630
>>2977629
https://docs.djangoproject.com/en/5.0/topics/settings/#calling-django-setup-is-required-for-standalone-django-usage

но лучше писать management соманды, как описано тут:
>>2977696
Аноним 26/12/23 Втр 00:09:38 #647 №2977720 
>>2977696
Там нет ни слова про то ,что один и тот же manage.py использовать можно.
Там максимум, что есть, это "для запуска автономных сценариев или сценариев, которые периодически выполняются из crontab UNIX или"
Но это я и так знал и запускать кроном вообще любую хуйню можно, не обазательно джанговскую.
Аноним 26/12/23 Втр 00:15:16 #648 №2977722 
Это важно, потому что раньше у меня было совсем по-еблански: так и висело два процесса параллельно, но один через скуэл алхеми загонял данные парсера в базу, а второй с помощью орм джанги их показывал. А теперь можно два раза не писать модели под две разные орм =)
Аноним 26/12/23 Втр 00:16:24 #649 №2977724 
>>2977720

тренируй свои когнитивные способности) тебе дают ручку выполнения команд - априори понятно что ты сколько угодно команд можешь запустить.
Аноним 26/12/23 Втр 00:20:41 #650 №2977727 
>>2977724
Так вот я чисто методом бараньего тыка и сделал открытие своё)
Аноним 26/12/23 Втр 00:26:24 #651 №2977734 
>>2977705
начнём с того, что отлавливать исключения внутри транзакций моветон (читай доку по транзакциям).

теперь про твой код - ты в Builder.video не вызываешь save() на инстансе модели из-за дефалтового аргумента commit=False в функции video.

сохранение данных у тебя на последней строке - там ты не отлавливаешь ничего... перемудрил ты
Аноним 26/12/23 Втр 00:41:37 #652 №2977744 
>>2977734
Ценно.
Завтра разберу на свежую голову.
Спасибо.
Аноним 26/12/23 Втр 01:02:17 #653 №2977762 
>>2977435
>Оказывется можно запустить два экземпляра одной и той же программы! До чего техника дошла!
Аноним 26/12/23 Втр 01:35:44 #654 №2977775 
>>2977762
Сдуру то можно и хуй сломать
Аноним 26/12/23 Втр 02:23:22 #655 №2977789 
>>2977563
> джанго
> евентлуп
Чел..
Аноним 26/12/23 Втр 07:09:11 #656 №2977843 
1703563749431.mp4
>>2977789
Аноним 26/12/23 Втр 10:01:37 #657 №2977931 
>>2977705
Наблюдаю типичную ошибку вкатыша: сделать все кРаСиВо и по ОоП)) вместо того, чтобы получить рабочий код. В итоге накостылял хуйни и сам себе насрал в портки.
Запомни, сына: сначала код, потом тесты, потом наводишь красоту. Когда наберешься опыта, код и тесты поменяешь в очередности.
Аноним 26/12/23 Втр 11:28:08 #658 №2978051 
>>2977931
>код и тесты поменяешь в очередности
То есть БАТЯ у нас сейчас пишет сначала тесты, а уже потом сам код?
>по ОоП
Это требования к командам на джанго. Ты джангу открывал вообще?
Аноним 26/12/23 Втр 11:39:59 #659 №2978061 
>>2978051
>БАТЯ у нас сейчас пишет сначала тесты, а уже потом сам код
Ты охуеешь, но да.
>Это требования к командам на джанго
Давай показывай, где джанга требует заворачивать простые функции в совершенно бесполезные классы без init.
Аноним 26/12/23 Втр 12:06:42 #660 №2978097 
>>2978061
Отъебись, ты не продуктивен. Вчера анон это же самое нормально объяснил, а ты высрался и доволен
Аноним 26/12/23 Втр 12:36:39 #661 №2978163 
Разработка тестов занимает больше времени чем рабочий код. Поэтому некоторые делают его в первую очередь.
Аноним 26/12/23 Втр 12:42:45 #662 №2978166 
>>2978097
>пук
Аноним 26/12/23 Втр 13:53:42 #663 №2978261 
>>2977734
Утро вечера мудренее
Нашел какой то чудесный метод objects.get_or_create
>начнём с того, что отлавливать исключения внутри транзакций моветон (читай доку по транзакциям).

Что то не сходится. В документации сказано, что при проверке на уникальность, метод save() выбрасывает ошибку ntegrityError, а этот метод находится внутри транзакции.
https://docs.djangoproject.com/en/5.0/ref/models/fields/
Ну ок, сделал без исключений 🤷

>ты в Builder.video не вызываешь save()
Убрал билдер вообще и парсер унёс в другой файл, что бы тот злой процедурный анон не вибрировал. Злой анон, не обессуть, что на тебя зарычал с утра, ты прав так то.

>перемудрил ты
упростил до максималочки

Короче работает, чекните плес, мне не нравится, что идёт обращение в базу по КАЖДОМУ объекту, на сколько я помню, это пидорство и надо делать пачками.
https://pastebin.com/G8dpLRZL
Аноним 26/12/23 Втр 14:06:41 #664 №2978294 
Screenshot2023-12-26-14-55-12-6950ecd26a21c2c56ce608de5e94733463.jpg
>>2978261
доку читай. get_or_create ты неправильно используешь - смотри исходный код хелпера (обрати внимание на именованный аргумент defaults). в текущем варианте, при малейшем изменении любого поля (например описание изменили) - ты получишь ошибку, т.к. pk уже есть.

по поводу пидорства - сравни коннитивную сложность текущей пасты и предыдущей. избыточная сложность - результат преждевременных оптимизаций. как писал анон выше, сделай рабочий вариант, напиши тесты, потом уже рефакторь по реальной необходимости.
Аноним 26/12/23 Втр 15:46:39 #665 №2978668 
Всё. Я понял про исключения в транзакциях. Вот этот дядька внятно объяснил и показал, чем это "череповато" и как делать вообще Эльфварями
https://www.youtube.com/watch?v=u2t1aLYu2QU
Аноним 26/12/23 Втр 16:45:48 #666 №2978789 
>спрашивать у гопоты
>спрашивать на анонимном форуме
>смотреть видосы инфоцыганина
И все это ради того, чтобы не читать документацию и не смотреть исходники. Я ебал.
Аноним 26/12/23 Втр 17:09:08 #667 №2978838 
>>2978789
>читать документацию
Я прочитал документацию и нихуя не понял, инфоцыган объяснил на пальцах и я раздуплил.
>смотреть исходники
Какие, где?
Аноним 26/12/23 Втр 17:11:37 #668 №2978845 
>>2978838
Правкой кнопкой на метод - го ту дефинишон
Аноним 26/12/23 Втр 17:14:02 #669 №2978848 
>>2978668
>>2978294
ну вообще этот тип 20+ минут рассказывал то, что написано в первом абзаце
Аноним 26/12/23 Втр 17:23:19 #670 №2978865 
image.png
>>2978845
Йоообоный рот этого казино, я конечно дико извиняюсь, но я такое впервые вижу. Это что, абстракция? Как увидеть саму реализацию то?
Аноним 26/12/23 Втр 17:29:51 #671 №2978873 
Вы чё, в натуре в этот низкий уровень лазиите? Смысл слова фрэймворк поясните тогда
Аноним 26/12/23 Втр 17:36:15 #672 №2978879 
>>2978865
это стабы. в джанго их нет, так что скорее всего твоя идешечка их подсунула. держу за тебя кулаки анон - ты справишься и станешь чуточку лучше!
Аноним 26/12/23 Втр 17:47:27 #673 №2978895 
>>2978879
Да я как это увидел, захотел обратно в сисадминство
Аноним 26/12/23 Втр 17:49:00 #674 №2978898 
>>2978873 многоточие это модная хуйня вместо pass. Ищи реализацию этих методов
Аноним 26/12/23 Втр 18:06:37 #675 №2978918 
1673305794.jpg
Я не понимаю, я скачал и почему то нихуя не знаю как работает, куда тыкать то блять?
Аноним 26/12/23 Втр 19:29:00 #676 №2979028 
OIG (1).jpg
>>2978918
Ах ты, блядский ёптарь, ты типа скачал чего-то и хуй понимаешь, как это работает? Ну, и правильно, брат, что тебе такое довелось скачать, что даже начать не можешь. Слушай сюда, ебаный олух: у тебя наверное голова полная говна, если скачал не зная, что делать дальше. Вон, там на экране есть кнопочка «СТАРТ», нажми блять на нее и посмотри, что произойдет. Может тогда раздуплишься, а может и нет, я же не вижу уровень твоей долбоёбности.
Аноним 26/12/23 Втр 19:38:32 #677 №2979042 
01b43a754453374e94319e667c6a84ae33ad29b9.jpeg
>>2979028
Для начала я хорошенько так посплю, а когда проснусь и нажму кнопку старт, ПОЛНОСТЬЮ тебя уничтожу
Аноним 26/12/23 Втр 20:04:51 #678 №2979065 
>>2979028
>«СТАРТ»
«ПУСК» же, ну
Аноним 26/12/23 Втр 20:10:59 #679 №2979069 
>>2978898
оно ваще не вместо pass. это многоточие называется ellipsis и значения обычно "будет доптсано" или "детали упущены"
>>> type(...)
<class 'ellipsis'>
Аноним 26/12/23 Втр 20:22:17 #680 №2979078 
>>2979069
... - всё же элегантнее, чем в других языках

Шалун - кун
Аноним 26/12/23 Втр 20:23:02 #681 №2979080 
Блять, макака, что за подставы))) Огласите весь список стоп-слов, я второй раз уже попадаюсь
Аноним 26/12/23 Втр 20:24:02 #682 №2979081 
>>2978895
Да, с этими "улучшениями" Мишура превращается из приятного языка в какую-то хуйню.

Если мне надо код, в котором ехал дженерик через дженерик, я буду писать на джаве, нахуй мне этот Мишура.
Снежинка работает раз в 20 быстрее, как минимум. Тонны библиотек, нормальная многопоточность, наработанные практики взрослого программирования, энтерпрайз, куча работы и т.п.
А Мишура получается, как морская свинка - ни к свиньям, ни к морю.
Аноним 26/12/23 Втр 20:39:31 #683 №2979107 
>>2979081
тебя никто не заставляет пользоваться типами - они опциональны. более того, ты можешь хранить типы в отдельных стаб-файлах (*.pui)

лично я стараюсь типизировать всё - так крепче сплю.
Аноним 26/12/23 Втр 20:40:20 #684 №2979108 
>>2979069
Обычно в ванильном Мишурае это заглушка вместо pass или обозначение неопределенности типа или структуры принимаемых и возвращаемых данных.

А например в FastAPI и Pydantic так обозначают обязательные параметры запросов и поля моделей:
https://fastapi.tiangolo.com/ru/tutorial/query-params-str-validations/#ellipsis

https://docs.pydantic.dev/1.10/usage/models/#required-fields
Аноним 26/12/23 Втр 20:46:44 #685 №2979120 
>>2979081
ебать ты хитрожопый, братишка, хочешь один раз научиться и писать всю жизнь одинаковый код? Нихуя так не получится, все нормальные языки развивают синтаксис (кроме яхве наверно) и от тебя требуют того же, развития и работы головой
Аноним 26/12/23 Втр 21:07:50 #686 №2979138 
>>2979120
Вот я и работаю головой - пишу на д'жаве.

>>2979107
Тогда тебе стоит начать писать на нормальном типизированном языке. Хотя бы не будешь делать двойную работу. Это не говоря уже обо всём остальном.

Дело в том, что любой инструмент имеет свою область применения и свои ограничения. Попытка сделать из пи'тона язык для больших проектов, уровня д'жавы - приводит к тому, что это просто становится неинтересным. Т.к. привнесенный оверхед, в итоге, не соответствует получаемому результату.
Аноним 26/12/23 Втр 22:10:50 #687 №2979235 
>>2979107
>тебя никто не заставляет пользоваться типами - они опциональны
Да, вот только в 2k24 в нормальных конторах тебя обоссут за код без типов.
Аноним 27/12/23 Срд 08:38:16 #688 №2979548 
>>2978163
>Белый Медведьотка тестов занимает больше времени чем рабочий код. Поэтому некоторые делают его в первую очередь.
имхо скорее для того, чтобы лучше понимать, что тебе нужно, какие особые ситуации возможны, что с ними делать
Аноним 27/12/23 Срд 11:35:26 #689 №2979631 
Это, парни, а где можно свои джанго микро-говно-поделки задеплоить на халяву?
Пайтонэнивэр - много анальных запретов, к примеру парсер ютуба низя.
Гитпэйджес - вообще джангу или что то динамичное низя.
Аноним 27/12/23 Срд 12:28:58 #690 №2979671 
>>2979631
Покупай дешёвый vps, рублей за 200
Аноним 27/12/23 Срд 12:47:52 #691 №2979686 
>>2979631
>на халяву
localhost
Аноним 27/12/23 Срд 16:06:02 #692 №2979895 
>>2979686
>localhost
Это самое пиздатое, что я юзал, но есть один моментик. Я иногда, особенно на ночь, люблю выключать свою пекарню.
Аноним 27/12/23 Срд 16:21:57 #693 №2979932 
>>2979895
Придется плотить за vps, либо изменить своим привычкам.
Аноним 27/12/23 Срд 17:09:07 #694 №2980046 
image.png
>>2979932
Аааа, ебись оно конём! Уговорили, так и быть, позолочу евреям ручку за it-единицы. А есть за 200 целковых что б всю хуйню сразу туда зарядить и ботов всех и лендинги и может еще и с видюхой, вчто б нейронки вращать у вас на примете?
Аноним 27/12/23 Срд 18:03:01 #695 №2980104 
>>2980046
Конечно есть.
Аноним 27/12/23 Срд 18:31:14 #696 №2980163 
>>2980104
Во! 👍
Аноним 27/12/23 Срд 21:46:35 #697 №2980455 
Кто нибудь из третда вкатился в ит на петоне и жанге? Как вы победили в конкурсе 666 откликов на место? Про такие истории успеха надо книги писать от кернигана и киесаки
Аноним 27/12/23 Срд 22:22:38 #698 №2980488 
>>2980046
за 200 ты разве что зоопарк на докере в 2гб памяти развернешь, ни о каких Голубой Огонёк мощностях речи идти не может, это совсем другая история
Аноним 28/12/23 Чтв 02:13:28 #699 №2980739 
Аноны, я только учусь и запутался в синтаксисе.
Подскажите, вот в модели пайдантика например для реквест схемы чем отличается

class xxx():
id: str
name: str

от
class xxx():
id: str = None
name: str = None
?

None это типа Optional параметр? А в чемтогда отличие от id: Optional[str]?
Аноним 28/12/23 Чтв 02:15:45 #700 №2980740 
>>2980739
Дай угадаю, на скиллбокс деняк нет?
Аноним 28/12/23 Чтв 02:20:17 #701 №2980743 
>>2980740
Не совсем не верю в инфоцыганские курсы.
Аноним 28/12/23 Чтв 02:21:31 #702 №2980744 
>>2980743
Не верь дальше, удачи быть безработным, протянут тебя либо курсы, либо образование, а этого всего у тебя нет
Аноним 28/12/23 Чтв 02:35:33 #703 №2980747 
>>2980739
>id: str = None
Это что за язык? Впервые такое вижу. Это в каких то последних релизах добавили явную типизацию?
>id: str
А нахуя объявлять то, что не имеет никакого значения?
>id: Optional[str]
Блять, аноны, что происходит? Макака удалила что то опять или так кто то где то пишет? Мне страшно, что я что то проебал.
Аноним 28/12/23 Чтв 03:55:15 #704 №2980765 
>>2980739
Если сверху написать @dataclass то в первом случае оно будет требовать обязательно два параметра в инициализаторе во вoтором случае будет по умолчанию None.
Отличий от Optional[str] никаких, pytype срёт на optional и разрешает None почти везде, потому что таково Весело на утренникее наследство питона и если начать строго запрещать None то отваливается половина стандартной библиотеки.
Аноним 28/12/23 Чтв 06:33:43 #705 №2980800 
изображение.png
>>2980739
пудантика полные штаны бля)))
(версия 2.5.2)
хуй его знает почему он это позволяет, игнорирует тип дефолта
Аноним 28/12/23 Чтв 10:22:28 #706 №2980900 
>>2980800
Зато none заставляет указывать тварина
Аноним 28/12/23 Чтв 10:23:45 #707 №2980902 
>>2979631
Хадзі да нас https://replit.com/@ploomum/Chuitka?v=1
Аноним 28/12/23 Чтв 10:30:51 #708 №2980911 
>>2980800
Питону на самом деле абсолютли поебать на тип который ты там пишешь, это нужно чисто для удобства, если там где-то не выполняется явная проверка типа
Аноним 28/12/23 Чтв 10:43:26 #709 №2980920 
>>2980911
Это.
Потому что это для красоты, для глаз. Что бы лично ты не забыл, что там за тип.
>>2980900
Питон тебе говорит "нахуя ты объявляешь переменную, которая не имеет никакого значения? Когда реально понадобится переменная, тогда и значение её будешь знать. По значению я и тип определю, а то что ты там после двоеточия написал, так это ты для себя пометочку сделал на полях, кожаный мешок с дырявой памятью"
Аноним 28/12/23 Чтв 11:07:20 #710 №2980936 
structure.png
Мне нужен ПОЛНЫЙ гайд по пакетам и структуре проекта в пайтоне. Я уже битый час гуглю какую-то хуйню, которую я, по-моему, вообще не должен гуглить. Я вроде бы не вчера в программирование вкатился, но это первый ЯП, где так трудно найти однозначный ответ на КАК СУКА СДЕЛАТЬ ПРАВИЛЬНО.

В чём вообще проблема. Сейчас у меня есть примерно следующее (пик). Мне похуй, как сделать, мне просто нужен ответ, как в пайтоне делать правильней всего, чтобы всё работало и не нужны были никакие хаки, и я так и буду делать. Пока что всё выглядит так, как будто в обоссаном бидоне за 30+ лет его существования так и не смогли договориться о том, как всем делать одинаково, но ладно, добиться бы хотя бы, чтоб оно вообще работало.

(Разумеется, это упрощённый пример, там в src уже много всяких пакетов и модулей, изначально многие из них писались просто как скрипты с if __name__, потом стали для удобства делиться на подмодули с отдельными тестами, а в скриптах осталась только фигня вроде парсинга sys.argv. На этом рефакторинге в какой-то момент что-то и перестало работать.)

Все __init__.py пустые, я всё ещё толком не понимаю, когда они нужны, а когда нет, но вроде бы без них проблем было ещё больше.

Я, активировав venv, запускаю 🍾 src/script1.py. Он использует formatter и parser1; parser1 использует util1. Всё работает, если везде будут импорты типа from parsers.parser1 import x, from formatter import y, from utils.util import z. Отлично.

Теперь, я запускаю pytest из этой же коренной директории. Всё ломается, потому что ModuleNotFoundError. Всё будет работать, если все импорты (в т.ч. в parsers) будут начинаться с src. Но тогда ломается 🍾 src/script1.py, потому что ModuleNotFoundError: No module named 'src'.

Так как жить-то? Stackoverflow в основном даёт какие-то совершенно безумные советы, типа ручного изменения 🍾path, я уже совершенно перестал понимать, как всё это говно должно работать.
Аноним 28/12/23 Чтв 11:18:32 #711 №2980961 
>>2980747
Это для фастапи, в нем есть вшитый pydantic.
>А нахуя объявлять то, что не имеет никакого значения?
Это модель данных, при реквесте с фронта эта моделька тебе провалидирует, что все значения прилетели именно того типа, на который вы договорились в протоколе. Аналогично можно задать модельку на респонс.
Аноним 28/12/23 Чтв 11:21:04 #712 №2980965 
>>2980920
Нет не так. Такое поведение только во втором пидантике появилось и из-за этого Тулуп сгорела не только у меня. Если писать что-то вроде
name: str = None
было вполне ок, то со второй версией надо делать так
name: str | None = None
Какой-то пиздец. Особенно калит что теперь надо делать вот так
id: str | int
Иначе будет факап если придёт не то что надо.
Аноним 28/12/23 Чтв 11:29:35 #713 №2980986 
>>2980961
Что первее-выгоднее учить, фастапи или джангу?
Аноним 28/12/23 Чтв 11:32:23 #714 №2980994 
>>2980986
Джанга объемнее, фастапи очень простое
Аноним 28/12/23 Чтв 11:43:19 #715 №2981028 
>>2980994
Сорян за тупые вопросы
К фастапи нужно еще что то? Я почему то думаю, что фастапи - это что то типа drf. Что годного можно запилить на одном лишь фастапи? На работу можно претенодвать зная лишь фастапи, но твёрдо и чётко?
Аноним 28/12/23 Чтв 11:58:23 #716 №2981052 
>>2981028
Фастапи больше про async, т.е надо знать асинхронность, иначе смысла от него не будет. Сам по себе фреймворк несложный.
Я лично не использую пидантик модели и его опендок, сразу отрубаю. Явно валидирую данные через реквест.

Ну и ещё у него есть приколдесы которые кочуют из старлета, т.к он по сути и есть старлет. Сам же фастапи в исходниках сделан довольно кринжово, он на слуху потому что подразумевается что если челик знает фастапи, то он знает и асинхронность. Последнее наиболее важно для веб сервисов.
Аноним 28/12/23 Чтв 12:13:32 #717 №2981075 
>>2981052
Я конечно глубоко еще не лазил, но по диагонали читанул. На сколько я понял, если пилить что то асинхронное в джанге, то там это на более высоком уровне и шаблонно. Т.е. в джанге можно обмазаться асинхронностью, которая будет реально работать, и будет контролируема на высоком уровне, но как оно работает на чуть более низком уровне (всякие там оборачивания циклов, ебля с корутинами и т.д.), можно не вникать.
Если исключить чисто фактор "фу бля, знать надо всё, недоБелый Медведь ты ёбаный", я правильно догадываюсь или заблуждаюсь?
Аноним 28/12/23 Чтв 12:26:46 #718 №2981086 
>>2981075
В джанге нет асинхронности насколько я помню
Аноним 28/12/23 Чтв 13:05:25 #719 №2981124 
>>2980800
С кем я в одном треде сижу, просто пиздец
Аноним 28/12/23 Чтв 13:56:52 #720 №2981162 
>>2980936
>Все __init__.py пустые, я всё ешё толком не понымаю, када оне нужны, а када нет, но вроды бы без ных проблем было ешё больша.
Заўсёды. Бяз іх, importlib спачатку шукае файл з дадзенай назвай у бягучым дырэкторыі, а потым шукае паддырэкторыю з такой назвай.
Аноним 28/12/23 Чтв 14:02:37 #721 №2981171 
>>2980936
>я запускаю pytest ыз этой жа коґенной дэґектоґые.
Відавочна, запускаеш бяз актывацыі асяроддзя.
Аноним 28/12/23 Чтв 14:11:01 #722 №2981178 
🤣
Аноним 28/12/23 Чтв 14:21:12 #723 №2981190 
>>2980936
Чё там знать-то. В __init__.py обычно пишутся импорты для удобства. Эта штука всё ещё нужна даже если пустая, я хз почему пишут что не можно не использовать. А ещё обычно там же пишут переменную __all__ = [] куда дописываются сами импорты для удобства ["pkg1", "pkg2"] например, помимо собственно самого импорта через import.

__main__.py пишется собственно функция main() и стандартный вызов через if __name__ == "__main__" это позволяет запускать программу с помощью 🍾 -m pkg где pkg это название твоей папки с этим самым __main__.py

__name__ переменная отображает название .py файла откуда он вызывается

Всё остальное редко используется.
Аноним 28/12/23 Чтв 14:32:52 #724 №2981204 
ПЕРЕКАТ ПЕРЕКАТ ПЕРЕКАТ ПЕРЕКАТ

>>2981203 (OP)
>>2981203 (OP)
>>2981203 (OP)
Аноним 28/12/23 Чтв 22:38:35 #725 №2981929 
>>2981190
Ну и как твой пост решает мою проблему? Правильно, никак.
Аноним 28/12/23 Чтв 23:07:39 #726 №2981956 
>>2981929
Вот теперь сам думай что не так
Аноним 29/12/23 Птн 17:34:34 #727 №2982703 
>>2981086
А что же тогда ASGI?
https://docs.djangoproject.com/en/5.0/topics/async/
Аноним 03/01/24 Срд 23:47:27 #728 №2988168 
Объясните нубу, в какой-то момент писание хеллоу ворлдов и задач в духе "зделойте функцию шифр цезаря" в написание реальных сайтов и веб-бэкенда? Я не могу нащупать границу, как вкатываться-то.
Аноним 03/01/24 Срд 23:55:29 #729 №2988174 
>>2988168
просто делай что-нить ценное и конкретное
Аноним 04/01/24 Чтв 00:28:51 #730 №2988204 
>>2988168
Эти задачи закаляют тебя не только в синтаксисе, но и в алгоритмах. А к бэкенду не имеют отношения, да. Пилю тебе вариант роадмапа.
Анон выше написал, пили полезное. Я добавлю для твоего уровня: начни пилить полезное конкретно для себя.
Вот смотри, я пришел с работы, обложился хрючевом свежайшим и начинаю перерывать тонны сайтов, групп, плейлистов, рутрекер, ютуб... что бы посмотреть под хрючево, а хрючево стынет.
Значит что? Правильно, надо писать своё приложение, в котором всё это будет сосредоточено. Одностраничник с сылками на годноту. Но! что бы что то выводить, надо что то спарсить - вот тебе и вырисовывается парсер ютуба. Да такой, который отслеживает появление новых, недавно появившихся серий в плейлисте. Значит что? Нужна база данных, с одной таблицей, которая будет хранить ссылки на плейлисты, которые ты конкретно зарядил на отслеживание и плюс таблица, в которой хранятся результаты. Парсер берет из базы адрес, парсит, если есть что то новое - добавляет в таблицу с результатами. Ну а к этому всему мордочку покрасивше. Вот и получается простейший джанго проект с ОРМ на борту. Потом можно прикрутить авторизацию и приложение будет работать не только на тебя, но и на твою тню, у неё то другие предпочтения. В общем допиливать это можно до бесконечности, но суть одна: парсер - база - морда. Полезно, наглядно, интересно, смерть, смерть, кладбище, пидор, заебись, чётко.
Аноним 04/01/24 Чтв 01:15:30 #731 №2988239 
>>2988204
Ты мне напомнил, что я хотел сделать свою рулетку сайтов когда-то давно. Спасибо за совет, буду делоть, твоя идея прикольная. Главное раздуплиться какой-то рабочий процесс-то вообще, просто я до сих пор как школьник на уроке информатики, решаю задачи какие-то и функции изучаю.
Аноним 04/01/24 Чтв 01:17:04 #732 №2988240 
>>2988239
рулетку фильмов на просмотр на вечер*
Аноним 04/01/24 Чтв 13:51:40 #733 №2988508 
Сап двощ, у доморощенного недопрогера возник вопрос - имеется асинхронная функция f (async def f())
Как мне ее запускать по расписанию, грубо говоря раз в день в 13:00
Просто через schedule не работает, собственно я и не сильно надеялся, какие то выкрутасы с asyncio я тоже пробовал, не робит, хотя может не все еще попробовал
schedule.every().day.at("13:00").do(f)
schedule.every().day.at("13:00").do(asyncio.run, f())
schedule.every().day.at("13:00").do(asyncio.create_task, f())

while True:
schedule.run_pending()
time.sleep(1)
для 2 и 3 способа добавлял
asyncio.get_event_loop().run_until_complete(asyncio.sleep(0))


Последний способ ошибок не выдал, но результаты функции появились не в нужное время, а только после остановки программы
Аноним 04/01/24 Чтв 18:44:01 #734 №2988891 
image.png
Почему не подключается класс серчхедлайн?
В модуле он есть, но почему-то вс код пишет что типа такого не существует. Помогите, а в коде пишет что тип не используется ещё
Аноним 04/01/24 Чтв 19:00:51 #735 №2988933 
image.png
image.png
>>2988891
вот этот класс, но подключаться не хочет, другие классы из этого модуля подключаются
Аноним 04/01/24 Чтв 19:02:08 #736 №2988937 
>>2988933
два раза написал думал может вс код тупо не видит 274 строчки, ставил и вперед и назад и два раза и один раз писал. крч не хочет вскод видеть этот класс
Аноним 05/01/24 Птн 14:45:01 #737 №2989845 
Как цикл for работает? Какие требования накладываются на объект, чтобы по нему можно было итерироваться?
Аноним 05/01/24 Птн 18:13:30 #738 №2990232 
>>2989845
>Какие требования
iterable
Аноним 06/01/24 Суб 17:43:04 #739 №2991219 
Аноны, у меня есть вот такой класс.

class Test:
....lst=[]
....def __init__(self):
........self.some()
....def some(self):
........self.lst.append("foo bar")

out = Test()
Что изменить внутри класса, чтобы "out" был списком "lst".
Изменения можно вносить только в тело класса.
Аноним 06/01/24 Суб 18:03:48 #740 №2991244 
>>2991219
В общем суть такова что немного потыкавшись получилось всё сделать изменив метод new таким образом.

def __new__(cls):
....super().__new__(cls).__init__()
....return cls.lst

1) Оцените такое решение, безотносительно самой идеи что класс возвращает не свой экземпляр а какуб-то хуйню. Вот есть задача и вот такое решение в три строки. Как оно? Можно лучше?

2) Можете пояснить к чему обращается super()? Класс же не наследуется.
Аноним 06/01/24 Суб 18:10:09 #741 №2991257 
>>2991219
>>2991244

1. создай объект на базе своего класса, у этого объекта вызови метод этого класса, а этот метод уже будет что то возвращать
2. был перекат давно
Аноним 08/01/24 Пнд 13:10:12 #742 №2993192 
2024-01-08 130757-Mu 1.1.1 - sphere.py.jpg
wtf
Аноним 08/01/24 Пнд 15:25:16 #743 №2993325 
>>2993192
кавычку закрой. у тебя строка не закрыта, т.к. кавычка - экранированная (\”)
Аноним 08/01/24 Пнд 17:31:49 #744 №2993517 
image.png
Как мне использовать капиталайз в функции? В си я бы указал string name и мне бы подсветило что можно использовать его, а т.к в питоне этого не пишут программа не знает что я туда отправлю и не хочет применять к name капиталайз.
Аноним 09/01/24 Втр 13:09:00 #745 №2994604 
народ, у меня проблема:
есть питоновский файл, который надо сделать exe файлом. pyinstaller вроде как справляется, но я использую библиотеку speech_recognizer и он ее найти не может. уже все перепробовал, но не ебу че делать. подскажите
Аноним 09/01/24 Втр 19:20:18 #746 №2995046 
>>2993325
:*
ты умный
Аноним 10/01/24 Срд 18:36:57 #747 №2996354 
Как устроится на работу с джанго питоном? :(
Аноним 11/01/24 Чтв 09:31:08 #748 №2997169 
>>2996354
Когда вся твоя жизнь крутится вокруг одного инструмента, ты устареваешь вместе с инструментом. И становишься не нужным вместе с не нужным инструментом. Ты же — приложение к инструменту, не наоборот.
Аноним 11/01/24 Чтв 16:35:10 #749 №2997729 
>>2997169
Когда вся твоя жизнь крутится вокруг нескольих инструментов, ты устареваешь вместе с инструментами. И становишься не нужным вместе с не нужнымы инструментами. Ты же — приложение к инструментам, не наоборот.
Аноним 14/01/24 Вск 19:16:48 #750 №3002539 
image.png
Анон, давно я на питоне не писал и вообще давно не кодил. Пишу консольную хуитку, которая спрашивает через меню опции для ффмпега и потом с этими опциями запускает конвертацию. Написал эту залупу на бат - тот ещё блядь экспириенс. Вот решил переписать на нормальном языке и повылазили нюансы. В прицнипе, контекст то не сильно важен.
Вопрос вот какой. Если юзер вводит не такой ответ, как ожидается, то ему снова выводится тот же запрос ввода вызовом текущей функции. То есть функция вызывает сама себя. Я правильно помню что это приводит к созданию новых и новых уровней вложения и однажды нам питон скажет идти нахуй?
Внимание на 27-29, 31-32.

Я знаю что на самом деле меню пишут через while true. Перепишу. Просто начал делать "как помню" чтобы немного восстановить знания. Реально ВСЁ забыл. И да, код говно. И тема в пайчарме белая. Короче, не ебите мозги, посто ответьте конкретно про вложенность. От этого кода не останется нихуя всё равно.
Аноним 14/01/24 Вск 21:01:54 #751 №3002692 
>>3002539
Не вложенность, а количество экземпляров. Да, в какой-то момент все взорвется.
Аноним 14/01/24 Вск 22:33:31 #752 №3002842 
coolstory (2).jpg
>>2933091 (OP)
>У питона намного лучше официальная документация, чем у большинства других языков.
Бля, если это "намного лучше", то я не представляю что за пиздец у других.

Ну типа:
>>> # Измерить длины списка строк:
... words = ['cat', 'window', 'defenestrate']
>>> for w in words:
... print(w, len(w))
...
cat 3
window 6
defenestrate 12

Блять, ну даже с комментария начнём "Измерить длины списка строк", что? Может, измерить длины строк в списке? Что такое лять длины списка строк, это как нахуй?
Дальше, создают список с названием words.
> words = ['cat', 'window', 'defenestrate']
С тремя строками.
Потом цикл, да.
> for w in words:
Что такое w? Откуда оно блять взялось после for? Хули про это ничего не написано?
Это какой-то аргумент или как его блять списка, который существует сам по себе, ну типа, элемент списка это всегда w? Судя по тому, что я вижу, он сперва саму строку выводит, а потом уже через функцию len количество символов строке, но какого хуя список обозначили как w, он же был определён как words!?
Блять, какие-то отсылки к паскалю, с, вот эта хуйня работает не так как в паскале, там итерации хуё моё, прогрессии. Сука это для кого нахуй написано вообще?
Блять я пиздец походу тупой или написан ваш учебник максимально ебано.
Есть нахуй для совсем долбоёбов пояснения? Ну типа, вот это вот то, это вот это.
А не так что, мол, вот есть такой цикл и там бац хуй пойми что понаписали чего я до этого вообще не видел нахуй. Бля жопа сгорела сорян за стену текста.
Аноним 14/01/24 Вск 23:14:05 #753 №3002907 
>>3002842
Какой-то хуй на ютубе сделал типа "гайд" по этому. Тупо передрал и рассказал тоже самое что написано, но нихуя не объяснил.
В комментах пояснили, что w это переменная, которая принимает значение элемента списка каждую итерацию цикла. И её можно подписать как угодно.
Ну так стало понятно хотя бы.
Бля, если так и дальше пойдёт то это совсем потужно будет что-то выучить. Нихуя ж не объясняют пидорасы, как будто по умолчанию я должен всё это уже знать нахуй.
Аноним 15/01/24 Пнд 04:33:32 #754 №3003116 
>>3002692
Спасибо.
Аноним 15/01/24 Пнд 19:02:58 #755 №3003851 
image.png
image.png
Аноны, тыщу лет ничего не писал на питоне (да и дальше не сильно собираюсь, тыкал из интереса просто), но тут для нашей конфы понадобился бот и я загорелся написать, смотрю туториал, и такая хуйня не гуглится, весь синтаксис переебали? Или что это заходы с двоеточий? Такое чет даже не гуглится особо, ну или я не понял как это загуглить.
Аноним 15/01/24 Пнд 19:19:53 #756 №3003876 
image.png
>>3003851
И дальше такая же еботека, он делает что-то типа строгой типизации в конце, или нахуя эти username : str в конце тут, вообще не помню такой ебанины когда изучал
Аноним 15/01/24 Пнд 19:51:03 #757 №3003912 
>>3003876
>>3003851
Ну я типа такой же дундук как и ты и я делал бота на питоне. Библиотека ёбнутая потому что апи ёбнутая, документация ёбнутая и мне бы сейчас не хватило энтузиазма на это говно. Лучше собирай из кусков со стак оферфлоу чем ебаться с этим говном. Алсо автор либы емнип ныл что заебался переделывать библиотеку под изменения апи.
Аноним 17/01/24 Срд 07:37:28 #758 №3006151 
Есть ли на данный момент работающая библиотека для создания селфботов (ботов через аккаунт пользовател) для дискорда? discord.py, кажется, выпилил их поддержку, пишет, что неправильный токен.
Его форк discord.py-self вызывает ошибку при инициализации. Нашёл фикс, но вызывается уже другая ошибка.
selfcord похоже и вовсе давно заброшен
Аноним 17/01/24 Срд 20:29:35 #759 №3007347 
Можно ли написать такого бота для телеги, чтобы поместить его в большой чат и он мог его читать? Нужно, чтобы он пересылал мне сообщения с ключевыми словами.
Владелец чата не я. Есть ли у телеги ограничения, которые не позволят мне это сделать? Или может ли меня пидорнуть модерация? Можно ли тогда сделать бота через аккаунт?
Аноним 18/01/24 Чтв 02:09:10 #760 №3007659 
image.png
Господа, помогите, пожалуйста. Как замокать file.read в пикриле? Будь это не через asyncio, хватило бы unittest.mock.mock_open, но тут его реализация чет совсем не годится.
Аноним 18/01/24 Чтв 08:59:57 #761 №3007807 
>>3007347
Через юзербота возможно реализовать.
Аноним 18/01/24 Чтв 22:28:54 #762 №3008933 
>>3007807
Спасибо, анон.
Аноним 20/01/24 Суб 02:30:58 #763 №3010681 
Пишу скрипты в VS Code, в нем они работают, но через командную строку ничего не запускается. Path прописал, пытался запускать файлы из папки питона - ничего. Никаких ошибок, просто ничего не происходит. Куда копать?
Аноним 20/01/24 Суб 03:11:46 #764 №3010700 
>>3010681
Не знаю что произошло, но оно само как-то починилось. При этом экзешники созданные с помощью pyinstaller все так же не работают. Куда в этом случае копать?)
Аноним 23/01/24 Втр 21:55:10 #765 №3016116 
>>3003851
> Или что это заходы с двоеточий?
https://habr.com/ru/companies/lamoda/articles/432656/
https://texnoit.com/annotation
Аноним 23/01/24 Втр 22:01:41 #766 №3016132 
Как рулить?
Аноним 28/01/24 Вск 19:52:57 #767 №3024138 
Собираюсь устроиться на работу, там как раз ищут стажера-питониста. Но даже для такого пишут что устроят тестирование, по основам и ООП. Пиздец волнуюсь, делал много задач по учебникам, но никогда не зубрил полностью, полагаясь на то что всегда в интернетах смогу взять быстро уточнить написание кода, если что-то вылетело из головы. Тестирование вроде будет в онлайн формате, но я хз можно ли будет там быстро пользоваться шпаргалками. Что вообще могут спрашивать в формате "основы + ООП"? Есть где-нибудь хорошие материалы, по которым можно устроить себе проверку?
Аноним 29/01/24 Пнд 16:20:01 #768 №3025425 
>>3024138
>Что вообще могут спрашивать в формате "основы + ООП"?
Если прям стажера-стажёра, даже не джуна, то вряд ли выйдут за рамки этого:
https://pythonworld.ru/osnovy/obektno-orientirovannoe-programmirovanie-obshhee-predstavlenie.html
https://pythonworld.ru/osnovy/inkapsulyaciya-nasledovanie-polimorfizm.html
https://pythonworld.ru/osnovy/peregruzka-operatorov.html
Аноним 30/01/24 Втр 12:56:41 #769 №3026521 
Аноны, как лучше разбивать байтовую строку полученную через сокет?
Реализую байтовый протокол и надо разобрать строку - достать значение первое, второе, а потом, в зависимости от третьего, определённое количество следующих.
Помогите пожалуйста.
Аноним 30/01/24 Втр 13:47:20 #770 №3026597 
>>3026521
Перекатись уже. Там как раз про паттерн-матчинг были ссылки.
ПЕРЕКАТ!!!
>>2981203 (OP)
>>2981203 (OP)
>>2981203 (OP)
Аноним 30/01/24 Втр 22:53:58 #771 №3027415 
>>2933091 (OP)
Привет пихоныч.
Суть - скрипт пихона должен вызывать условный другой скрипт пихона (или экзешник или что угодно) с кредами другого юзера, например run format c:\ admin:admin - УСЛОВНО разумеется.
Так вот рунасы не катят, VBS нашел нужный код, но он вызывает окно и задержку для вбивания кредов напрямую через шелл. дико бесит.
Гугл молчит.
Подскажите какой код можно использовать?

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

(вообще контора говно с медленными тоннелями. ГПО не катит раскатка, придумался мне костыль в виде запуска экзешника в назначенных в нужное время, который будет уже админом запускать нужный инстальник. Пиздец костыли, но кручусь.)

Помоги двачик, ты не подводил еще. Спасибо тебе.
Аноним 30/01/24 Втр 23:25:22 #772 №3027462 
Посоны а может есть среди нас тимлиды или просто коллеги, кто может внедрить к себе человечка и получать часть его зарплаты. Могу работать, могу не работать, могу делать вид что работаю.
Опыта 5 лет питона/js.
Зп хочу 100 за максимальный 9 часовой рабочий день без переработок и мозгоёбки.
Аноним 31/01/24 Срд 02:18:33 #773 №3027606 
>>3027415
Современные системы чем дальше, тем сильнее огораживаются от таких "приколов", потому что всё, что явно не работает от текущего юзера слишком похоже на атаку.
И, если в линуксе ещё можно было бы что-то обсуждать, то в виндах - найди эксплойт к какой-нибудь дырке (желательно, помеченной как "не будет починено", такие были) и пользуйся им.
Аноним 31/01/24 Срд 19:32:47 #774 №3028619 
Процедурное программирование подразумевает несколько файлов с кодом, или весь код в одном файле ?
Аноним 31/01/24 Срд 20:59:12 #775 №3028834 
Сап аноны, вопрос новичка

В php я могу узнать, было ли выполнено условие
Например переменной статус присваиваем действие. Например подключение к БД
$status = mysqli_connect(1.1.1.1, root, 123, BD_NAME);
Если подключение удавалось, то переменная статус была True
Если нет, то False
И далее можно было сделать проверку и вывести сообщение об ошибки или успехе

Можно ли так в питоне?
Пробовал как в php, но не получилось. Пытался загуглить, но чет норм инфы нет, через какие-то заебства такое надо осуществлять

Можете накинуть примеров или ссылок?
Аноним 01/02/24 Чтв 10:27:48 #776 №3029210 
>>3028834
if status:
print('1')
Аноним 01/02/24 Чтв 13:41:43 #777 №3029567 
Ребзи интересует курс по SAP, где-то можно найти сливы с udemy или подобное?
Аноним 02/02/24 Птн 20:37:20 #778 №3032127 
Анончики, учусь питону и вопрос про профилирование к мастерам:

Пользуетесь ли вы вообще профилированием, и если пользуетесь - стандартным cProfile + pstats или каким-то графическим?

Щас опробовал несколько графических библиотек (вроде tuna, snakeviz) и не заходит. Пока вобьешь в консоли код для генерации визуального профилирования (графика или табличек или еще чего), пока откроешь его в папке, если огромный проект - долго перещелкивать, пока перещелкнешь до нового места, потом изменять код и все по-новой.

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

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

Но может графическое профилирование как то помогает, ускоряет разработку? Или в ином сильно важно? Подскажите пж.
Аноним 03/02/24 Суб 06:58:59 #779 №3032594 
iVXWVMUiixI.jpg
Прошу помощи с моим говнокодом. Выкакиваются ошибки, но я слишком тупой, чтобы их решить. Если код уродливый — сильно не пинайте.

https://pastebin.com/A8PQ4wCf
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ Заебали тупорылые Аноним 03/02/24 Суб 11:29:27 #780 №3032684 
https://2ch.hk/pr/res/2981203.html
>>2981203 (OP)
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ Аноним 03/02/24 Суб 11:29:50 #781 №3032685 
https://2ch.hk/pr/res/2981203.html
>>2981203 (OP)
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ Аноним 03/02/24 Суб 11:30:17 #782 №3032686 
https://2ch.hk/pr/res/2981203.html
>>2981203 (OP)
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ Аноним 03/02/24 Суб 11:31:18 #783 №3032687 
https://2ch.hk/pr/res/2981203.html
>>2981203 (OP)
Аноним 03/02/24 Суб 11:55:48 #784 №3032710 
>>3032684
Спасибо. Извините.
comments powered by Disqus

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