Этого треда уже нет.
Это копия, сохраненная 9 марта в 13:49.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
python.png87 Кб, 1024x1024
Питон тред №166 /python/ 2933091 В конец треда | Веб
Тред, посвящённый языку программирования Питон, #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
2 2933108
Я всё забыл и скакал по пхп, вба и мразотных павершеллах.
Везде платят деньги.
Как вернуться обатно и стать чотким питонистом с вскодами, гитами и венвами? Первым в очереди Бидон Дип Дайв в четырех частях, может ещё полирнуть книгой флюент питон.
При этом я хочу очень выучить жабаскрипт, почти к каждому сайту, который я регулярно посещаю, у меня есть юзерскрипт, у меня куча оплаченных работ на жс, но я его нихуя не знаю.
А ещё очень хочу выучить голенг, чтобы быть чотким стендэлон кодером.
Как всё это совместить?
И это я старый дид, как зумеры выдерживают такую гонку? Или у них такого нет?
3 2933127
>>2933108
Это какая-то шизопаста?
4 2933296
Нихуя не понял, уже весь мозг сломал.
В первом случае коллбек видит переменную из верхней области видимости.
Буквально такая же хуйня во второй функции, там блять коллбек не видит переменную.
Какого хуя?
image15 Кб, 567x113
5 2933299
>>2933296
С nonlocal заработал. Только, блять, остался маленький вопрос... Какого хуя тогда в первом случае мне не пришлось nonlocal указывать?
image28 Кб, 566x183
6 2933302
>>2933299
Блять, я ВООБЩЕ нихуя не понял.
Почему title не требует указания nonlocal, а buffer требует?
7 2933306
>>2933296

>args: InputArgs = ...


Анон, а для чего этот синтаксис нужен?

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

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

>>2933302
Может потому что меняешь одну переменную, а другую нет.
1700697779249.jpg81 Кб, 1280x720
8 2933315
>>2933306

> Для чего это вообще?


никто_не_использует_типизацию_в_питоне.тхт

Чел, это указание типа переменной. InputArgs - это мой класс.
9 2933394
Аноны подскажите новичку как код тестить, в плане что именно использовать, есть юниттест, пайтест и какие то ассерты, что из этого
мне надо? Я не в тестировщика иду а так, для общего развития.
10 2933641
>>2933394
Можно unittest, можно pytest. Не настолько велика разница. pytest типа современнее и прогрессивнее, но не так сильно на самом деле. unittest в коробке.

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

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

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

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

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

И вообще полезно, понимание улучшает очень сильно.
14 2934357
Двач, помоги
Хз по адресу ли я, но проблема с тем что я на питоне накалякал, так что почему бы и нет.

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

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

Но у меня нет подобного опыта. Как это проворачивать? Как подтягивать код из удаленного репозитория и собирать его в "либу" которая будет юзаться у меня? Я всегда подтягивал код при помощт команд pip install / poetry install где в конфиг-файле я прописывал название либы и версию, но это ж только в случае если либа лежит в pypi, это не мой случай
20 2935527
https://onecompiler.com/python/3zufku8n8

Какого хуя тут происходит? Если убрать " -> tuple[int, int]", то работает, а с ним нет. Синтаксис вроде верный.
21 2935536
>>2935527
В иде всё работает, наверное на сайте косяк.
22 2935546
>>2935527
Ну кстати даже если убрать только "[int, int]" но оставить "-> tuple", так тоже работает.
Снимок экрана от 2023-11-24 23-25-56.png33 Кб, 1407x377
23 2935550
24 2935570
>>2935527
У них старая версия питона, где для таких штук нужно было импортировать Tuple из модуля typing
25 2935576
>>2935536
>>2935546
>>2935550
По-видимому, это связано с версией питона на этих сайтах. Тайп-хинты с 3.5 поддерживаются, хз че они падают. Видимо, не все виды тайп-хинтов во всех версиях поддерживаются.
26 2935883
>>2935576
Потому что до 3.10 нельзя было для коллекций писать типы элементов.
27 2936490
>>2935883
>>2935576
В старых версиях питона надо было через
from typing import Tuple

https://docs.python.org/3.8/library/typing.html#typing.Tuple
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 секунд.
30 2936811
>>2936802
DLSDDDS*DLDDS (это последовательность аминокислот если что, звездочка означает аминокислоту с фосфатной группой).
31 2936893
>>2936802
Там при нажатии кнопки запросов нет, скорее всего это ЖС либа у них написана, которая все вычисляет
Можно заюзать селениум, но у них может стоять защита от такого и возможно, что придется ее обходить (а может и нет)
А ты либы на питоне пробовал искать?
32 2936912
>>2936802
Ты нормально написать можешь, биохимик-докторант, ёб твою мать.
Просто написать: есть страница вот ссылка. Нужно выдернуть вот это говно: прикладываю скриншот.
Просто пиздец. Я 2 раза прочитал, ничего не понял. Киназы какие-то.
Вы там все такие?
33 2936931
>>2936802
Там под таблицей кнопка "скачать результат". Можешь скачать результирующую таблицу как файл, открыть обычным образом в питоне как текстовый файл и посмотреть в ней любые данные.
34 2936944
>>2936931
Можно наверно даже не сохранять файл на диск, а прямо из полученной переменной реквеста смотреть. Но сохранить временный файл проще всего для нюфани. Мозги себе не конефолить, за одно бэкап полученных данных делать удобнее, на будущее, для отладки.
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 на официальном сайте можно по русски с ним общаться.
kinases.png139 Кб, 1915x960
36 2937033
>>2936893
>>2936912
>>2936931
>>2936944

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

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


Я и планировал использовать selenium и pandas

>Вы там все такие?


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

>>2937012
Спасибо за наводку, буду пытаться разбираться
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

Всё.
38 2937057
>>2937042

>Тебе приходит питоновский словарь.


Или json
39 2937146
>>2937033
Держи дружок

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

Из онлайн сервиса реквест не делается, просто код оттуда скопируй.
40 2937232
Я там для вас кое-что спрятал
https://dropmefiles.net/ru/wc5CQTy
image.png155 Кб, 701x252
41 2937369
По этому уроку https://youtu.be/1quKqf47V6s?si=G_TR2Ng3cYTbxqag натренил свою нейросеть по распознанию объектов на картинке, все работает, но проблема в том, что он детектит только один объект. Как сделать, чтоб выдал список всех найденных объектов?
Вот код: https://colab.research.google.com/drive/120nbtB3ywlPM0b-4QlcVVW_UmJdZacY4?usp=sharing
42 2937466
>>2937369
Зайди на канал в раздел "About", там будут контакты. Пиши туда.
43 2937483
>>2937042
>>2937146
Спасибо большое!
44 2937524
>>2937369
он детектит 5 объектов
image2,3 Мб, 1280x813
45 2938070
Да как вкатиться в этот ваш питон???
46 2938408
>>2938070
Не лучшее решение в конце 2023.
47 2938434
>>2938408
А что лучше?
image56 Кб, 1254x889
48 2938458
>>2938408
Да ладно?
49 2938505
>>2938458
Ок, вкатываюсь в html.
50 2938529
>>2937524
Не, я не про это. Мне надо чтоб детектил одновременно несколько объектов на одной картинке.
51 2938727
>>2938529
это другая задача, у тебя код на classification
тебе нужно на object detection
всякие yolo, RCNN
16943339524530.png472 Кб, 640x716
52 2938780
>>2938458
Питономакак уже настолько много, что за одно рабочее место бьются десятками, если не сотнями. По году и два работку найти не могут. Херки на таких вакансиях ахуели от спроса настолько, что ссут на головы кандидатам уже почти буквально.
53 2938781
>>2938780
>>2938458
К тому же, Питон - это часто вспомогательный язык. Также, как HTML/CSS или SQL на твоем же графике.
54 2938782
>>2938434
Смотря к чему душа лежит. Сишные языки дадут тебе намного больше. Макакить в Питоне - это конечно хорошо, но это уровень владения тем же Excel или Word. Не будешь же вкатываться в Excel и Word, этот вспомогательные инструменты для работы.
sage 55 2938792
>>2936691
Друг, это настраивает количество строк скажем так "на первом уровне" админки. То есть можно настроить количество выводимых строк экземпляров одной модели.
Но моя проблема в другом:
Когда проваливаюсь в модель joeflow, открывается кастомная админка, которую поставляет joeflow. Так вот в ней уже, в самом низу, есть поле Tasks, по умолчанию скрытое. Оно сразу содержит вообще все таски без пагинации из-за этого может очень долго грузиться страница, поэтому хочу настроить пагинацию именно в этом поле
sage 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
57 2938831
>>2938458
Пчел, это работает, если ты не-джун, график для мидлосенек.
sage 58 2938851
>>2938811
Добра тебе, анон, получилось
59 2938919
>>2938780
То ли дело джаваскриптизёров-верстальщиков не хватает, да?
60 2938927
>>2938781
Мм полноценный бэкенд-язык называть вспомогательным, в таком случае джава и шарпы тоже вспомогательные.

>сотня бьётся за вакансию


99 из которых окончили курс "бекенд-розрабочек за 6 месяцев" где они как макаки повторяя за преподом пилили телеграм-ботов и туду-лист на жанге, даже не понимая нахуя они ту или иную кнопку нажимают.
61 2938993
Вкатываюсь в бэкэнд.
Жанга или БыстраАПИ?
Жанка олдовая, уже скуфом потягивает, а БыстраАПИ быстрый, модный, молодежный.
Пока что склоняюсь к жанго, т.к. там наверняка кучу легаси накодили, а значит работы больше.

Интересует только с точки зрения вката, мне без разницы на чем views пилить.
62 2939011
>>2938993
Смотри по вакухам в твоем городе, я бы фастапи учил. Но учти, что там еще дохуя всего есть помимо взаимодействия с фронтом. Я в этом году максимум пару часов гейтвей для других сервисов трогал.
63 2939018
>>2938927

>99 из которых окончили курс "бекенд-розрабочек за 6 месяцев"


Утрируешь. Сейчас питон учат в каждой школе и пихают даже на гуманитарные направления каким-нибудь психологам.
64 2939032
>>2939018
Там его учат на очень примитивном уровне, буквально для задачек ЕГЭ.
65 2939048
>>2939032
А больше и не надо. Это же питон, а не жава. Нахуя тут сложность
66 2939070
>>2939011
Django и FastAPI сильно отличаются? Просто будет на FastAPI перекатиться, если уже +- хорошо знаешь Django?
sage 67 2939114
>>2939070
Да не особо, просто в джанге много чего под капотом уже есть, а в фастапи будешь библиотеки подключать
68 2939189
>>2938927

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


java/c#/c++/c это языки системного программирования, там куча проектов, где немеряный объём кода, который функционал реализует.

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

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

Это не делает подготовку разработчика на питоне более лёгкой, скорее наоборот.
69 2939208
>>2939189

>объёмный код на питоне не делают


Что и нинужно. 2023 год на дворе, кто не может в микросервисы, тот идет нахуй в свою ынтыпрайз легаси помойку работать за еду.
image.png132 Кб, 811x473
70 2939267
>>2939208

>микросервисы


>scalable


>microfrontend


>distributed


>DB per service


Ребенок, ты хоть работал где-то?
71 2939299
>>2939189

>достаточно знать джаву, а питон прикладной


Чем бэк на жаве принципиально отличается от любого другого языка-нейм? Тебе точно так же надо знать фреймворк, базы данных и ещё какую-нибудь хуйню которую вы используете в проде.
72 2939361
>>2939299

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


классический бэк и не нужно на джаве делать, на джаве можно делать тяжеловесный системный софт, где вся логика внутри кода
73 2939593
>>2938780
Утиные истории.

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

>>2938831
Это проблема не питона, а в целом рынка труда в РФ, где обнаглевшие мрази хотят себе тиму синьоров за бесценок получить.
74 2939711
>>2939593

>Питон полноценный яп для


>датасаенса, прототипирования


>ДЛЯ


>ДЛЯ


Ты сам-то понял, что сказал? Питон - это инструмент. Задачи датасаенса, например, куда шире, чем знания и скиллы по Питону, хотя Питон в состоянии решить почти все задачи, стоящие перед датасаентистом. Поймаешь смысл или разжевать и между ушей затолкать?
75 2939792
>>2939711
Дружище, я прекрасно русский язык знаю. Учись интерпретировать обобщенные формулировки.
76 2940116
>>2938782

>это конечно хорошо, но это уровень владения тем же Excel или Word. Не будешь же вкатываться в Excel и Word, этот вспомогательные инструменты для работы.


Хорошо, а какой тогда вспомогательный инструмент у тех, кто работает в проектах на джанге, фастапи?
77 2940117
>>2940116

>тогда основной инструмент


фикс
78 2940196
>>2938782

>Смотря к чему душа лежит. Сишные языки дадут тебе намного больше.


Что могут дать "сишные языки" (JavaScript что-ли?) из того, чего не может дать питон? Они беднее на самом деле. Особенно если смотреть на голый Си.
79 2940220
>>2940196
А на чем твой путон написан, богатый ты наш?
80 2940251
>>2940220
На вопрос ответь. Чем Питон беднее, чем JS или C.
81 2940321
Есть async функция, внутри которого есть if then else. В одном случае запускается await функция, во втором - возвращается None. Надо ли во втором случае использовать asyncio.sleep(0)? Прошарился по форумам, документациям, везде пишут что надо, но в репозиториях такое я видел очень редко. Если его надо использовать, значит ли это, что его надо вставлять во всех async функциях, где может не ввполниться await по какойлибо причине? Это же пиздец как сильно загрязняет код.
82 2940326
>>2940321

>Прошарился по форумам, документациям, везде пишут что надо


Нахуя?
Ну вот ты сам-то сможешь объяснить - нахуя? В чем профит?
83 2940349
>>2940326
В противном случае функция становится синхронной со всеми вытекающими.
84 2940352
>>2940349
Добавлю, асинхронная функция становится синхронной. Это запутывает её поведение при использовании. Когда ожидается что она будет передавать управление циклу - она этого делать не будет. asyncio.sleep(0) позволяет вернуть управление циклу и высвободить ресурсы.
85 2940370
https://github.com/numba/numba/issues/5903

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

>Когда ожидается что она будет передавать управление циклу - она этого делать не будет


"Переключение контекста" произойдет в момент когда ты эту функцию вызовешь через await, ничего там блокироваться не будет
87 2940391
>>2940374
await не гарантирует передачу управления эвент лупу

>>2940321

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


что именно пишут

если весь этот путь, возвращающий None, не занимает большое количество времени, то не нужно
отдав управление обратно в луп, ты ведь можешь отложить исполнение корутины которая вызвала эту, не?
88 2940499
>>2940374
Да я просто хочу как лучше, чё ты накинулся-то сразу. Разве плохо делать хорошо?
>>2940391
Вот я как раз и про то что await не гарантирует передачу управления, если внутри async функции нечего ожидать.
Нет, не занимает много времени, я разницы по крайней мере не увидел, но и когда именно следует использовать asyncio.sleep(0) тоже не очень понимаю.
89 2940510
>>2940499

>но и когда именно следует использовать asyncio.sleep(0) тоже не очень понимаю


Когда есть жирная функция, которая блокирует выполнение других корутин дольше чем нужно, тогда и надо вставлять.
90 2940647
>>2940510
Жирные функции запускаются в executor-е по известному интерфейсу
Кот идет.mp41015 Кб, mp4,
480x854, 0:09
91 2940713
Питоняши, подскажите начальный стек для веба на Питоне. Именно начальный.

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

Вообще по вакансиям смотри что требуют. Если уж хотят древнюю джангу, то что ж поделать, к нему тоже целый букет фреймворков идёт, загуглишь.
Сразу сходу на фулстек идея не очень как по мне. Выбери один стул и сиди пока на нём.
96 2940749
>>2940741
Алсо про всякие DI пока не думай, не засоряй себе голову раньше времени. И смотри другие репы на гитхабе кто как структуры проектов делает, чтоб иметь представление.
И да, на гитхабе с кучей звёзд тоже много говнокодеров сидит, так что это не истина последней инстанции. Я когда смотрел исходники fastapi очень много раз кринжанул на отличненько.
97 2940758
>>2940741

>fastapi


Получек, знаю Django

>pydantic


Не было необходимости его использовать

>aiohttp


Не щупал

>фреймворки для бд


Нет, ну джанго ОРМ щупал, чек

Остальное анчек. Пиздос, а я думал, что с моим стеком Python/Django/DRF можно уже вкатываться начинать.
11.jpeg216 Кб, 1600x1200
98 2940775
>>2940741
>>2940749
Спасибо тебе, анон. Держи красную панду.
99 2940896
Для треда не нужна никакая сериализация
100 2940897
101 2940931
>>2940758
Используй пидантик. Очень удобно валидировать данные и делать структуры. На его основе как раз и использую связь с монго через motor. Ответы запросов, сами запросы и тд.

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

Просто посмотри как деплоятся проекты и как они поддерживаются потом, как обновляются и тд. Много инструментов есть. Знать вот прям всё до точки не надо, только самое основное. Остальное в процессе.
Забыл ещё про uvicorn упомянуть и uvloop. Тоже полезно.
102 2941250
>>2940741
Питон, получается — это расширенный скриптовой язык... То есть, скрипт. Как Bash.
103 2941255
>>2940758
Все так лихо перечисляют какие-то стеки, на деле, применив пару функций и часами лазая по мануалу. Знание — это когда ты без мануала пишешь, без ползания по документации. Ну и физически невозможно знать больше 7–8 продуктов хорошо. Это будет уровень «гуглоинтеллекта» — чё нашёл на СО, то, типа, твоё.
104 2941320
>>2941255
Но ведь каждый обязан вызубрить алгоритмы и паттерны чтобы получить оффер на перекрашивание кнопочек.
105 2941382
>>2941250
Баш который по производительности работает на уровне голанга, при этом еботни с деплоем меньше, лучше поддержка и кодовая база.
106 2941389
>>2941255
Сейчас не 90е чтоб знать все либы наизусть. Они меняются и обновляются каждый день. Гораздо более полезный скилл - уметь разобраться в них как млжно быстрее и понимать где можно применить новые фичи.

А все эти заучки-зазубрички до сих пор пишут на втором питоне, потому что в голове не осталось места для чего-то нового.
107 2941394
>>2941320
А ещё написать свою ос, без этого никак
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
109 2941676
До весны надо написать приложение для студентов и элективных курсов (чтобы преподаватель мог круд курсы, студент записываться на курсы) и по критериям получался список. До этого с Джанго не работал, справиться шансы есть? Как должны реализовываться разный функционал для преподавателя и студента? Разные виды сайтов?
110 2941679
>>2941676
Фронт тоже ты пишешь?
111 2941681
>>2941679
Вроде нет, фигматочно уже готовая есть
изображение2023-11-28234556922.png83 Кб, 1024x546
112 2941683
Здравствуй, доргой анон, я рушил вкатиться в python,
скачал pycharm и при открытии круглых скобок вылезает какая-то херня.
Подскажите пожалуйста как эту херню пофиксить?
sage 113 2941701
>>2941683
толсто. это сигнатура функции print.
114 2941711
>>2941683

>скачал pycharm


Зачем он тебе?
sage 115 2941712
>>2941683
ставь Gentoo Linux, на Microsoft Windows это не фиксится
116 2941737
>>2941683
Ахах
20d99e6fe5d771d7e3fa13aef1591ec4.jpg9 Кб, 274x274
117 2941767
ААААААААААААААААА БАШКА ПУХНЕТ
Выучил основы Питона, а там оказывается всякие comprehensions, decorators, generators.
Ладно, вроде разобрался с декораторами, можно уже какой-нибудь фреймворк для работки выучить.
Написал говно на голой Джанге с темплейтами. Получилось конечно же говно, нужно писать API и делать интерфейс для этого API, а для этого нужно:
1. Выучить DRF
2. Выучить JS/React
3. Хочешь аутентификацию? Ну на тебе несколько способов, ебись с ними. Хочешь грузить картинки и видосики в БД? Кек, ну на еще говнеца поешь, инфу покури.

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

А бросать пет не хочу, т.к. он наполовину готов, осталось совсем немного.
Как же я завидую челам, которые вкатывались лет 7 назад, тогда говна в разы меньше было.
118 2941772
>>2941767

>Выучил основы Питона, а там оказывается всякие comprehensions, decorators, generators.


Т.е. ничего не выучил.
ясмог.png511 Кб, 458x612
119 2941776
>>2941767

> а там оказывается всякие comprehensions, decorators, generators


это основа, база так сказать
120 2941777
>>2941772
Да выучил я это все уже, в доке питона внезапно все годно расписано.
Другое дело, что нужно еще кучу дерьма выучить и конца этому не видно.
121 2941787
>>2941382

>по производительности работает на уровне голанга


Это тебя кто-то обманул)
Библиотеки, написанные на С/С++, может, и работают на таком уровне, сам питон работает на уровне скрипта шелла по скорости.
122 2941788
>>2941389
Так и вижу сутулого подонка, который «нилюблю в этай вашый легаси капацца, мне нужна каждый день новая бебелеотека!»
image.png48 Кб, 428x535
123 2941814
Это какой-то позор
124 2941821
>>2941814
И, сука, мажорный баг у них на это висит с 2020 года

С радостью бы перешел на вскод, но делаем в пч потому что он проще для планктона. Которому эти хинты и варнинги и предназначаются, собственно.
125 2941828
>>2941814
весь питон - сплошной позор
15593828654730.png48 Кб, 193x260
126 2941842
>>2941777

> учить наизусть

127 2941846
>>2941788
Ну кто ж виноват что у тебя голова что-то дальше легаси не может осилить.
128 2942025
>>2941842
А как правильно? Просто знать как работает и всё?
129 2942091
>>2942025
Правильно соблюдать баланс, а не уходить в крайности.
130 2942154
>>2942025

>Просто знать как работает и всё?


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

Я так принципы боевого пилотирования знаю — за два десятка лет отточил на симуляторных игорях. Я — пилот-асс.
131 2942228
>>2942154
Слово "выучил" какое-то неправильное, неуместное. Звучит так, как будто выучил стих, или названия какие-нибудь.

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

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

И вообще надо уметь разбираться в логике программ, написанных на питоне.
132 2942360
>>2942228

>понимать


Как бы книжки тем и отличаются от документации, что поясняют принципы и задачи, а не просто перечисляют набор лексем. Следовательно, выучить книжку синонимично пониманию, а не просто зазубриванию.
133 2942481
>>2942360
Но тут речь как раз идёт о зазубривании. Челик выучил какой-то набор и не понимает что делать дальше. Так не бывает. Значит он просто заучил методы, но не понял их смысл.
134 2942541
>>2942481
ХЗ чего там чел >>2941767 имел в виду

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

Реально ведь многие думают, что вот я сейчас "выучу питон" и смогу работать.
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", если есть еще что-то свежее и интересное - пишите здесь или на почту.
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 137 2942947
>>2942866

source = input()

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

b = [
word
for word in a
if 'e' in word
]
print(
','.join(b)
)
138 2942955
>>2942866
проблема только с именованием

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

использовал телебот и аиограм. телетон во всем выигрывает.
sage 144 2943216
>>2933296
Кэмлкейс в питоне, ну ты и мразь. Не, ну вы видели?
145 2943296
>>2943212
Ты меня, наверное, за умного принял, я не такой
А можешь для дебилов обрисовать, чем телетон лучше? Ну, какой-нибудь кейс не особо вычурный.

> возможность авторизации как пользователем так и ботом.


Я планировал прикрутить авторизацию, чтобы бот считал некоторые данные для каждого пользователя, но он может это делать на основании message.from_user.username
Видимо, тут что-то сложное, и мне пока это не нужно.

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

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

P.S. пока писал ответ, заметил ссылку на доку. Видимо, нужно было сначала изучить)))
Посмотрю. В любом случае, за наводку спасибо.
146 2943298
>>2943216
А это осуждается обществом?)
147 2943314
На го можно делать пакаджи и импортить их, просто сделав репу.
А как на питоне делать?
148 2943323
Как же заебался делать плохо, что я за человек
149 2943324
Как перестать говнокодить
150 2943372
>>2933091 (OP)

> http://composingprograms.com


Не открывается с впн и без
151 2943400
>>2943114
>>2943121
через sam meta можно сделать
image.png59 Кб, 782x445
152 2943509
>>2943157
Появилась другая проблема, не работает вход, в базе данных есть юзер, но конкретно его не видит
при корректном логине/пассе как в бд выводит пользователь не найден
мнения?
153 2943669
Аноны, памагите!!
есть dt=datetime.date() # например 01.02.1970
нужно добавить (или удалить) года,месяцы, дни (y,m,d) от этой даты. Но поля же могут быть пустые (нули)!!
получаю ошибки типа месяц не бывает = 0
sage 154 2943726
>>2943669
dt - timedlta(month=1, day=7) + timedelta(hour=5)
sage 155 2943728
>>2943669
dt.replace(month=5)
156 2943735
>>2943726
>>2943728
спасибо! Но как с годами разницу-то сделать?
157 2943786
>>2943298
Да. Очень. В названиях функций можно только нижнее подчеркивание использовать. Верблюда только в самых исключительных случаях в названии классов можно. Это общепринятый платиновый положняк питонского уклада. Срочно переделывай, если кто увидит сразу пизды даст и пидором назовет. А это... ну это хуже всего в общем.
159 2943809
>>2943792
читал ртфм.
тут dt2 = datetime(year=y, month=m, day=d)
если m=0 или d=0 или m=0 - то ошибка!! Как победить-то??
160 2943818
>>2943792
хреново я описал.
Есть dt1 = datetime()
Есть y, m, d= int (это delta year, delta month, delta day). Но эти значения могут быть нулями

Нужно найти разницу дат dt (сложить или вычесть)
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)
Screenshot2023-11-30-16-47-47-80ba3aec4ff8fbbf3afd3d812a15c2144f.jpeg403 Кб, 1080x2209
sage 162 2943865
>>2943809
хуёво ты прочитал
163 2943898
>>2943865
ты немного не понял, или я хреново объяснил задачу, или ты тупенький.
Задача в нахождении НЕ разницы Datetime, а в отнимании года, месяца, дня.
Уже без твоих советов разобрался.
Timedelta нельзя использовать.
164 2943924
>>2943786
неправда, святые документы позволяют, более того, даже в стандартных библиотеках используются иногда
sage 165 2943931
>>2943898

>>> datetime.now() - timedelta(days=34)


datetime.datetime(2023, 10, 27, 17, 39, 50, 729253)

свое решение покажи)
166 2943937
>>2943924
потому что с явы лекала брали
image.png3 Кб, 256x50
167 2943959
>>2943937
Всё так, просто сам по себе нейминг такой допускается и даже иногда используется. Причём для имён классов это стандарт, так и положено MyClassName, тогда как для функций-модулей настоятельно рекомендованы подчёркивания

В принципе это разумно, потому что ад, когда смешение стилей, часть методов, скажем, с подчёркиваниями, а другие верблюжьи
168 2944352
>>2943931
хуйня у тебя решение.
Ты учёл високосный год, если чуваки введут?
169 2944369
>>2943931
я вообще сначала думал итерироваться (виртуально само собой) по дням исходя из (y,m,d) с учётом isleap() от календаря, чтобы подсчитать все дни. И эту хрень скормить интервалу в datetime..
170 2944550
>>2944352
>>2944369
ну пиздец.

юзай relativedelta из dateutil, будет тебе учёт високосного года https://dateutil.readthedocs.io/en/stable/relativedelta.html
171 2944558
>>2944352
а ты учёл выходные и праздничные дни?
172 2944693
>>2944550
умничка!
Я так и дошёл до этого через пару часов гугла
>>2944558
праздники и выходные не влияют на "физику" календаря и их дат )
173 2944695
>>2944550
жалею, что в пистоне пип инсталл это нужно делать.
Ну почему его не интегрировали-то?? Хотя бы в модуль calendar хотя-бы... Дни можно добавлять, а года и месяцы с учётом високоски - уже нет ((
174 2944712
>>2944695
Ну посмотри как в либе это реализовали и сделай так же.
175 2945012
Как же заебали эти контекстные менеджеры, просто костыль нахуй. Как это говно вообще выпустили в продакшн? Почему нет асинхронного деконструктора? Алло бля. Куку. Сколько лет прошло, где нахуй? Вместо того чтоб юнионы встраивать лучше б с действительно полезными вещами разобрались, например, нормальной асинхронностью и ебучим gil-ом.

Бесит.
176 2945022
>>2944695

>Дни можно добавлять, а года и месяцы с учётом високоски - уже нет ((


Что ты имеешь в виду, поясни подробно на примере.
177 2947002
Вот, никогда не понимал восхваление Питона.

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

Как язык - отстой.
178 2947273
>>2947002
Быстрое развертывание, удобочитаемый синтаксис. Доступная и легкая асинхронность без мутексов и прочей еботни. Все преймущества скриптового языка с динамической типизацией.

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

И не совсем понял фразу что он отстой как язык. Чел, если бы он реально был бы отстойным, на нём бы никто не писал и не делал столько прекрасных библиотек.
179 2947398
>>2947273

>он понемногу переходит на си


Кто на С переходит? Протык твой?
Библиотеки в Питоне изначально на С написаны (высокопроизводительные, понятное дело, а не хуйня для чатботов).
180 2947400
>>2947273
Вся математика, нейронка, датасатан и машобуч — на С/C++, без исключений. На голом петоне сам ебись.
181 2947428
>>2947002
Ну так и пиздуй в свой байтоёбский загон, хуле ты тут забыл? Пичот, что мартыханы говнокодят на штангах/фляжках/фистапи, не ебутся с указателями и памятью, импортируют готовые библиотеки и зарабатывают на этом неплохое бабло? Ничего себе! Бизнес внезапно порешал деньгами завистливых додиков-алгодрочеров, превратив разработку сервисов и приложений в "импорт слесарьфлоу эс сф; сф.ран(заебись=True)"
182 2947479
>>2947428

>зарабатывают на этом неплохое бабло


Каждый раз проигрываю с перевода любой неудобной для макаки темы на её копейки.
183 2947508
>>2947479

>неудобной для макаки темы


В чём неудобство, проигрыватель? Кроме пука "язык - отстой" что-то дельное будет или очередные "яскозал"?
184 2947521
>>2947002
Вот, никогда не понимал хейтеров Питона.

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

Как язык - заебись.
185 2947540
>>2945022
Если ты добавишь +365 дней - то это неправильно (не для всех годов) же )))
186 2947543
>>2944712
ну в стандартном же нет!
187 2947549
>>2944712
>>2947543
блин. Только дошло. Я исходники этого модуля не тырил ещё )))
Спасибо, Анончик !
188 2947555
>>2947549
Бочку нефти к подъезду. И СРОЧНО!
(Предварительно позвонить.)
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))
190 2947616
Ещё один олимпиадник пожаловал... Ты работал хоть? Сколько коммерческих проектов сделал, байтоеб?
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

Ошибка !
192 2947669
>>2947616
я ваши байты ебал пистручковые. Когда делал эмулятор ядра zx на асме, паскале, си. И это без говнокода. Усосал?
193 2947673
>>2947668
Я тебя спросил подробно описать задачу с примером, ты написал что надо дни прибавлять "+365 дней". Теперь какие-то новые условия появились с високосным годом. Ты не можешь даже сформулировать что тебе надо.
194 2947681
>>2947673
было dt=datetime(день_хэ)
стало:
dt+ (y,m,d)
так понятно??
195 2947682
>>2947681
Задача в нахождении года, месяца, дня.
или dt- (y,m,d)
Если год високосный - deltatime - сосёт.
196 2947684
>>2947669
Вкатунец сравнивающий языки для плк с бэкенд разработками и выясняющий какой из них круче...
Чел, тебе потом очень стыдно будет за свои посты.
197 2947687
>>2947684
тебе же, дед, стыдно должно быть.
1) не понял задачу мозгом
2) не решил
Я решил гуглом за 2 часа
И кто тут обосрался-то?
198 2947688
>>2947684
нинавижу вас, отребьев, онлайновских.
У меня проект - оффлайн.
199 2947689
>>2947687
это не сюда..
200 2947696
>>2947682
Год и месяц это не фиксированные отрезки времени.
С годами работай натурально:
2004 - 1 = 2003 год
С месяцами итерируйся по календарю.
11 + 3 = 2 месяц

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

Работаю в кал-центре банка. В принципе время есть на изучение. Но пугают многие, что сейчас уже шансов вкатится нет.
202 2947714
>>2947428

>зарабатывают на этом неплохое бабло


Ну, вообще-то, питонисты - это дно по заработкам. По сравнению с С/С++/Java-господами или программистами редких языков.

Чтобы быть высокооплачиваемым питонистом, надо быть очень сильным математиком, не меньше кандидата м.н. А это сам понимаешь, за две недели на скилбоксе не окучивается. Остальные - это уровень разметки данных или формоёбов.
203 2947793
>>2947696
не. Так ты вакансии не получишь. Тебе я сказал есть год. А нужно добавить/убавить какое-то кол-вод дней/лет/месяцев.
Чего тут ты не догнал-то??
204 2947794
>>2947712
это ты мне, падла, всё время звонишь???
205 2947821
>>2947793
Мы находимся в позиции 2004.01.31.
В следующем месяце 29 дней. Команда "двигаемся вперед на месяц". Где оказываемся?
Прибавляем к дате 31 день оказываемся в 2004.03.02?
Прибавляем к дате 29 день оказываемся в 2004.02.29?
206 2947975
>>2947688
Так сколько ты заработал-то? К примеру есть два моих проекта, которые в сумме приносят доход по 3 ляма деревянных в месяц (компании, не мне)
А у тебя сколько?
207 2947980
>>2947714
А вахтовик на севере получает ещё больше. Давай дальше сравнивать несравниваемое, говна кусок.
208 2947998
Подскажите, игра в слова.
Создаю список, состоящий из такого же количества, как в слове, которое загадано. Буква вводится с клавы, при угадывании буквы, она записывается в список с и выводится answer в формате кк

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

а это нет:
name=list(keyword) #загаданное слово
answer=[0]
len(name)
Список из 0 создаётся, но в него не записывается угаданная буква.
209 2948005
сука звёздочка не отображается.
Список из звёздочек
210 2948016
Хочу сделать, чтоб загаданное слово рандомно подсасывалось из файла, нужно освоить несложный парсинг какого нить словаря и завернуть игру в бота тг.
211 2948182
Вот бы мне кто-то рандомно подсосал..
212 2948199
>>2947975
а у меня только пет-проект )))
213 2948205
>>2947821
Одновременно 1 год 3 дня - в минус от даты, и добавить 4 месяца ещё.
Сложно как-то, и не уверен, что ты не нарвёшься на високосный год. Не проверял такое решение.
214 2948206
>>2947980
Тупой высерог гонорейной свиньи, речь конкретно про то, что питонисты всасывают по зарплатам, как им и положено у своего места под шконарём. Потому что это кодеры скриптов, а не программисты.
215 2948209
>>2947821
Работа с добавлением/убавлением дат НЕ КАТИТ. Это школьник уже мог бы понять.
216 2948218
>>2948206
взял и обидел меня. У меня вообще проект с ГУИ, БД оффлайновский. Типа, рабочее место специалиста некой сферы )
217 2948222
>>2948218

>ты кусок говна, не смей меня обижать


Я тебя понял, сын борделя рядом со свинарником. Жопа не болит?
218 2948326
>>2948222
ах тыж пидарок, всё на жопы засматриваешься. Папа так воспитал или мамка-шлюха?
219 2948437
>>2948326

>мамка-шлюха


Ага, твоя.
220 2948467
>>2948437
я думал уже, что ты сдох. Так долго свой вареник не открывал..
221 2948503
>>2948467

>Так долго свой вареник не открывал..


Зачем ты открыл свой вареник? Мне не нужно.
222 2948517
>>2948209
Я хотел его наводящими вопросами к этому подвести, а то он уже три дня усирается в треде, хотя там решение на 7 строчек всего или даже меньше.
223 2948539
>>2948503
Пись, у тебя ума не хватает, или просто школота ёбаная? Чего моими же фразами отвечаешь?
224 2948543
>>2948517
анончик. ты попутал кто-кому-куда отвечает.
Я и есть кто спрашивал решение, но там реально 1 строчка кода вообще-то..
sage 225 2948758
>>2948517
>>2948543
интрига прям
226 2948813
>>2948543
Покажи эту одну строчку.
227 2949230
>>2948813
main()
228 2949233
datetime и timedelta же учитывают високосные года
229 2949244
Всё, понял. Используй dateutil и не еби мозг. Если это ещё одна олимпиада "только стандартные либы", то делай ведосипед сам.
Питон дал им requirements.txt, а они жалуются, пиздец
230 2949450
>>2949233
я думаю, что timedelta не подошла, т.к. максимально можно неделями оперировать. поэтому и порекомендовали relativedelta из dateutil, т.к. там уже и месяца есть и годами можно оперировать. всё-таки интересно какое решение за неделю обсуждения было реализовано.
231 2949499
>>2949450
Олимпиадники, лаборанты и вкатуны занимаются хернёй как обычно, пытаясь сложить 2+2 самым эффективным по их мнению способом и создавая себе челленджи.
232 2949687
В FAQ Java-треда наткнулся на такую годную майнд мапу.
У кого-нибудь есть такая же, только для Питона?
https://coggle.it/diagram/WqgTTNMJtPiHph_q/t/java-development-in-2018
233 2949766
>>2949687
Питон и так простой, как дойдешь до параллелизма, асинхронности, вот этого всего, считай что прошёл.
234 2950251
>>2949766
Не так уж много такого, что есть в Джаве, но нет в Питоне (зато наоборот - дохуя). Джава так-то сама по себе - один из самых простых языков.
235 2950342
>>2950251
Если смотреть на возможности языка, то в принципе нет чего-то такого. Основные концепции всё равно общие. Всякие DI и прочая хтонь
236 2950480
>>2950251
Так это во многом делает язык сложнее, тебе какие-то простые вещи нужно реализовывать сложно. Причём много инженерной магии, которую или надо понимать, или запоминать. Что сильно-сильно мешает вкату.
237 2950499
Правильно я понимаю, что когда я импортирую скрипт-1 в скрипт-2, все библиотеки из скрипта-1 так же импортируется и больше их импортировать в скрипт-2 не нужно?
238 2950559
>>2950499
Да + весь исполняемый код из скрипт-1 также запускается.
239 2950607
>>2950499
Да, но лучше явно импортировать в том файле, где ты будешь это юзать, что бы при выпиливании импортов из скрипта-1 не забыть, что ты заюзал это в скрипте-2
240 2950685
>>2950607
Иногда бывает удобно импортировать именно из скрипта1, а не заново, особенно если указать его в __all__, особенно либы наподобие енкодеров, декодеров джона или пидантика где надо всё равно делать базовую модель. Очень удобно потом делать изменения, например, когда эта поебень решит обновиться до версии v2 и чтоб ты потом не сидел как даун и не чекал весь свой говнокод.
241 2950737
>>2950685
эту проблему решают самые базовые юнит-тесты. хотя бы создание объекта чекать и основные ручки. явное - лучше неявного
242 2950789
>>2950737
Да причём тут юнит тесты, так просто удобнее менять либу и изменить логику обертки в одном месте, чем менять импорты везде. Да и это вполне себе явно, используемые модули и функции явно указываются в __all__
243 2950811
>>2950789
Неявный полный импорт в основное пространство имён само по себе дурной стиль. Обычно делают from module import(func_1, func_2, ..., func_50), такую дикую простынку. Потому что явно. А уж вложенный неявный импорт совсем дурная вещь.
244 2950812
>>2933091 (OP)
Пробую numba, у меня много числодробилок на проекте, по идее декоратор numba.jit или numba.njit должен бустить производительность, но судя по всем бенчам наоборот - происходит отсос по производительсности где-то на 50% а порой и вдвое. Втф?

питон 3.11
numba 0.58.1
245 2950816
>>2950812
Покеж код
246 2950851
>>2950816
https://pastebin.com/2RQUeFkQ
Первый - без нихуя
Второй - с jit
Третий - с njit

Там немного видоизмененная функция outer из исходного сурс-кода, там тоже идет перебор с if-elif-else а затем происходит какой-то дрочевный расчет на голом питоне. На моей машине показано какое время исполнения. Все у 1го сосут
247 2950885
>>2950851
Как видно, я не просто пускаю цикл из 100к записей считаться, перед ним я прогоняю измененную функцию чтоб jit смог ее скомпилить, на это обычно достаточно времени тратится - оно не учитывается в итоговом бенче
image.png11 Кб, 585x159
248 2950906
>>2950851
Вот такой вариант (цикл целиком в numba) работает за 1 мс даже с учетом генерации args. Видимо если юзать numba то надо это делать по полной программе, при частых вызовах из питухона только отсосешь. Почему - хз. Я ожидал что не будет особой разницы, но то что я отсосал в 2 а то и в 8 раз это конечно сюрприз

П.С. декоратор с аргументом fastmath=True ни на что не влияет кстати
249 2950963
>>2950906

>при частых вызовах из питухона только отсосешь


Как бы это странно не звучало, но в питоне вызов функции это дорогое удовольствие, так как каждый раз генерируется и удаляется фрейм
250 2950979
>>2950811
Убирать обратную совместимость и не менять название модуля - вот действительно дурная вещь. И вместо from module import ты вполне себе можешь написать import module, особенно если тебе надо использовать с десяток функций, классов оттуда. Перечислять их все - тоже дурная вещь и гораздо сильнее снижает читаемость.
251 2950987
>>2950979

>Убирать обратную совместимость и не менять название модуля - вот действительно дурная вещь


Если ты не залочил мажорную версию, то сам себе буратино
252 2951036
>>2950987
Я всё залочил. Просто хотел обновить либу, т.к она быстрее стала
253 2951312
Помогите понять вложенные списковые включения

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

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

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

вот тут идентичный ответ и тут понятно как
представить как цикл.
abu = [x[1] for x in en]
254 2951314
>>2951312

>буква r


буква b
быстрофикс
255 2951328
>>2951312
СПАСИБО АБУ
я разобрался))))
очень счастлив
256 2951339
>>2951312

> [


> value


> for index, value


> in enumerate(masiv)


> ]

257 2951351
>>2951339
а в виде цикла?
sage 258 2951362
>>2951351
не способен увидеть запись?

> lol = []


> for index, value in enumerate(masiv):


> lol.append(value)

259 2951378
Как выучить программирование?
260 2951398
>>2951378
Начни с английского, нужен уровень B2. Когда выучишь английский - приходи, скажу что делать дальше.
261 2951408
>>2951398
А если нету В2? Есть только А0, но при этом разумию что написано когда читаю? Ну и слышу что говорят когда видосики про кодинг индийцы рассказывают
262 2951429
>>2951378
Риторический вопрос, чечил. Многие наносеки так и не научились программировать, например.
ojosasishort.mp410,3 Мб, mp4,
854x480, 2:08
263 2951576
>>2951408
Начинай с испанского, не прогадаешь. Херки будут течь
264 2951750
>>2951378
Зависит от того что ты хочешь. Работать или олимпиады делать
265 2951751
>>2951429
Зато зарабатывать научились. А остальные пусть изобретают свой транзистор. Не спаял комп - не программист.
266 2951835
Кто из треда работает, в какой у вас сфере Python используется?
267 2951861
268 2951878
>>2951835
От 3.6 до 3.12 в зависимости от древности проекта.
269 2951905
>>2951835
Гемблинг
270 2951943
>>2951835
на дваче
271 2952010
>>2951835
Сравниваю с ассемблером
272 2952089
>>2951835
Буллинг
273 2952250
>>2950906

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


Потому что всё время занимает сам вызов функции, а не исполнение кода. JIT в таких случаях просто не может разогнаться.
274 2952395
275 2952546
>>2952395
Олег, ты? Узнал тебя по твоему чатику с философствованиями
276 2952790
Мне стало интересно, а в чём преимущество питона перед другими языками? Скажем, в бэкенде, не только рест апи, но и всякие сервисы.
А то чёт я смотрю бенчмарки в сравнении с го и мне кажется что я несколько лет занимаюсь не тем чем надо.
277 2952874
>>2952790
1. Нулевой порог вхождения
2. Дохуя соискателей с низкими ожиданиями
Достаточно.
278 2952960
>>2952790

>сравнении с го


На питоне по сравнению с го просто дохуища батареечек, сахарка и удобных абстракций типа итераторов с генераторами. Писать бизнес-логику на порядок приятнее. Го нужен когда тебе надо много-много байтов гонять.
279 2953118
>>2952960
Если го нужен для байтов, зачем его позиционируют как бэкенд язык, где в основном надо ждать ответы на запросы?
280 2953121
>>2953118
Потому что многопоточный рантайм с ожиданием этих самых байтов там на порядок лучше чем в питоне
281 2953124
>>2953118
Хайлоад хорошо на го писать.
282 2953126
>>2953118

>зачем его позиционируют как


Не обманешь - не продашь
283 2953135
>>2953121
>>2953124
А питон не может в многопоточность?
284 2953137
>>2953135
Может, но с костылями и подпорками.
285 2953138
>>2953137
Там же есть библиотеки для этого. Получается, они не работают?
286 2953144
>>2953138
Многопоточные - не особо, многопроцессорные - да, но из-за IPC при определенных ситуациях может быть медленнее чем синглтред.
287 2953149
>>2953138
Вернее так, при определенных ситуациях мультрипроцессинг может сильно ускорить выполнение, но нужно знать триггеры на смену контекста. Отдельный тред для отправки агрегированных метрик, который просыпается раз в секунду это пример хорошего использования.
288 2953160
Аноны, что в хэдере гет запроса requests написать, чтобы в ответ от сервера пришло поле Content-Disposition ?
289 2953225
>>2953138
питон может в многопоточность, и она даже работает, просто в случае чистого питон кода ты не получишь прироста производительности. Но в каких-то случаях получишь, если у тебя, например, идёт работа с БД, или с тяжеловесными си-функциями из разных библиотек.
290 2953231
>>2953225
и вообще не устаю напоминать, что многопоточность придумали ещё в те времена, когда компьютеры были однопроцессорные и одноядерные. То есть придумывали её не для ускорения, а для реализации логики одновременного исполнения, чтобы не было блокировок и т.п. Необходимо, например, для GUI. И для сети, хотя тут есть альтернативы. Ускорение на многоядерных системах это уже более поздняя вкусная фишка.
291 2954365
Правильно ли я понимаю, что композиция в программировании это когда в конструкторе класса создаются объекты другого класса. Исходя из этого является ли следующий пример композицией?

class SomeClass:
__init__(self, a, b):
self.a = 1
self.b = 2
292 2954391
>>2954365
в твоём случае нет композиции.
композиция в ооп, это наличие в классе объектов другого класса и взаимодействие с ними.

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

если передавать объекты созданные вне бочки - это уже агрегация (более слабое связывание, в сравнении с композицией).
295 2954658
>>2948813
не, не main() - это шутка же )
импорт модуля. И реально в 1 строку кода решение задачи.
296 2954663
>>2949499
Зато пиструны-онлайнеры дрочат на жанго и фласк. Фу, бля, не отмыться теперь от такого говна...
297 2954729
>>2954663
На жангу дрочат работодатели, потому что с большой вероятностью это будет нормальный чел, а не "фу, я не буду на этом писать"
298 2954731
Куда вкатываться - Python, Node.js, Go?
300 2955047
>>2954731
Все 3 раза мимо
301 2955231
>>2955047
Объясни, почему.
302 2955236
>>2955231
Питон - ебейшая конкуренция среди джунов, херки ахуевают от количества резюмех и сбрасывают их сразу в Корзину
Нода - и так была не шибко популярна в СНГ а после 2022 и подавно
Го - после 2022 число вакух сильно схудно + вкатунов в Го не берут
303 2955245
>>2955236
И все таки из этих трех, какой лучше остальных подходит для вката в бэкенд-разработку в РФ?
304 2955246
>>2955245
Пыха
305 2955398
Он пиздит, нормально берут всех. Даже на го вакансии есть для джунов.
Просто он говорит про всякие известные конторы с зп 300к, туда естественно не буду брать сходу, лол. Да и сам боится что будет конкуренция. Других мелких фирм для него не существует считай.
306 2955400
А вообще сам смотри на hh что тебе больше надо и какие ожидания
307 2955403
Так в питоне ебейшая конкуренция и у мидлов/синек, я с начала ноября уже был на 10 собесах и везде отвалился на 1 или 2 этапе, т.к. "вы нам понравились, но мы приняли решение в пользу другого кандидата".
308 2955421
>>2955403
10 мало, надо больше. Да и смотрел поди на жирные зарплаты. Джуны с универа без опыта обычно от 100к ищут. По хорошему надо сначала работать за еду, набраться опыта, а дальше уже метить куда ещё.
309 2955425
>>2955403
На счёт мидлов они взяли скорее всего того кто меньше запросил. Скиловые обычно не работают в рф.
310 2955426
>>2955421
Реально собесов было больше, около 20, просто с половины я сам слился, т.к. не хочу идти в контры, типа сбер/втб/вк, а они основные засиратели рынка вакухами
311 2955431
дополню >>2955426
>>2955421
Так я не джун, а за еду даже на дейлики подключаться не буду
312 2955530
>>2955403
А у меня наоборот, примерно с 80% собесов выходил с оффером. В основном мелкосредние компании, но и относительно большие типа циана попадались.
313 2955554
>>2955398
Ты из ПР-отдела гикбрейнс? Ты сам-то подавал в последнее время резюмехи свои на джуна?
314 2955574
>>2955530
Какие вилки предлагали и сколько по итогу давали?
315 2955655
>>2955574
250-350, но я получил контроффер на 350 в моей компании
316 2955670
>>2955655
Ну я на такую же вилку собесился, где-то даж 400 было, но везде соснул, а на текущем 280 получаю и выше вряд ли дадут.
317 2955801
>>2955670
>>2955655
Это вы на мидловые позиции собесились? сами-то себя кем считаете?
А то большинство вакансий, которые вижу для бэкенда на питоне, какие-то нищие по сравнению с автоматизацией на джаве
ну типа в вакансиях авто-куа на джаве хотят опыт год-два и дают до 250, а для петухонистов-бекендеров - 3года+ и дают в районе 200
//мимо перекатился из авто-куа в бекенд
Пепе-клоун.mp43,4 Мб, mp4,
854x480, 0:17
318 2956041
Ананасы, какую ширину строки используете?
Как завещал PEP8 в 79 символов или на похуях 120 по PEP8 E501?
319 2956066
>>2936802
не там смотришь. Результат возвращается по другому запросу, а именно: https://kinase-library.phosphosite.org/api/scorer/score-site/DLSDDDS*DLDDS/Homo%20sapiens%20(Human)/OCHOA/true/false
320 2956092
>>2956041
Ты ведь знаешь откуда взялось ограничение в 79 символов?
321 2956096
>>2956092
Матричные принтеры
Перфокарты
Терминалы
322 2956109
>>2956096
Молодец. Собственно риторический вопрос: в 2k24 выдерживать длину строки в 79 символов чтобы что?
323 2956121
>>2956109
Открыть одновременно 2-3 окошка с кодом и АНАЛизировать?
1702063858686.jpeg379 Кб, 1080x2340
324 2956127
>>2956109
чтобы комфортно работать в termux🍄
325 2956130
326 2956139
>>2956121
На 27" мониторе влезает два окошка с кодом с крупным шрифтом, слева даже остается место для дерева проекта.
327 2956140
>>2956139
С длиной строки 120, конечно же.
328 2956164
>>2956109
Чтобы зрение не посадить
329 2956289
>>2956109
Чтобы детектить молодых зумеров-петушков, которые на ruff сидят, или олдовых петухов с закалённым очком, которые ещё на 2 питоне писали с pylint2 сидели.
330 2956309
>>2956289
Ты наверное код в виме пишешь?
331 2956422
>>2956309
vim умер вместе с Брамом... neovim.
#другой анон
332 2957367
>>2956041
79 символов. Я за традицию, за традиционные ценности так сказать
333 2957392
>>2956041
Конечно 79 и не забудь юзать тайпинг.
334 2957506
>>2957392
можно выносить в pyi файлы - раз, задавать каждый аргумент функции на новой строке - два. 79 символов хватит всем!
335 2957613
Погодите блять, а стандартный обычный бесплатный Pycharm не поддерживает что ли визуализации через matplotlib и любые другие графические библиотеки?
336 2958441
>>2957613
пользуйся vs code обмазавшись плагинами как белый человек
337 2958573
>>2957613
Скачай кряку, дело 5 минут же
338 2958602
>>2956096

>Перфокарты


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

>Терминалы


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

>>2956139

>На 27" мониторе влезает два окошка с кодом с крупным шрифтом, слева даже остается место для дерева проекта.


А потом в один момент ты пакуешь чемодан с съёбываешь. И разрабишь на своём ноуте, где 14-15-16 дюймов.
339 2958617
>>2958441
Только там легко гавном обмазаться, особенно конда недавно новый pylance вышел, а до этого autopep просто пенестал работать. Хорошо что есть ruff вместо этого старого говна.

Алсо, есть какой-нибудь плагин, который проверяет импорты в файлах?
340 2958684
>>2958602

>А потом в один момент ты пакуешь чемодан с съёбываешь. И разрабишь на своём ноуте, где 14-15-16 дюймов.


Делаю так регулярно, в чем проблема? Ну да, на 14" не влезает два окна, и хуле с того? Так даже если строчки будут по 79 символов - один хуй не влезут с вменяемым шрифтом. Или ты просто так решил нахрюкнуть?
341 2958778
Есть пчелы, шарящие в django?
Как в drf сериализовать значение, которое возвращает метод модели?
Например, у нас есть есть модель Блюдо, в ней поля название и ингредиенты, также в этой модели есть метод блюдоВеганское(), который возврашает либо истину, либо ложь.
Как в сериализаторе вызывать этот метод, чтобы потом записать в json что-то вроде {dishIsVegan: true}
В доке чет ничего нет.
342 2958802
>>2958778
Если "блюдоВеганское()" это "@property" то можно так:

from rest_framework.serializers import BooleanField, Serializer

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

Если не проперти то как вариант можно SerializerMethodField сделать
343 2958810
>>2958802
Спасибо огромное, анон.
344 2959291
>>2933091 (OP)
Охуел с количества книг. С какой посоветуете начать на русском?
345 2959334
>>2959291
Бля ты думаешь тут клуб книголюбов или внеочередное собрание библиотечных червей? Я хуй знает какое у них содержание. Могу чисто по заголовкам и датам судить.

Изучаем python + введение в системы баз данных - выглядит норм. Всё остальное - ну такое себе.
20231111194001.jpg157 Кб, 1024x1024
346 2959573
>>2959291
конечно же с той, что про джангу и базы данных, параллельно вершины мастерства читай чтобы не скучать.

Читай Лутца какого-нибудь, если тяжко документацию читать.
347 2960040
>>2959334
С документации
348 2960041
349 2960551
Нужно найти в тексте слово определенной длины, и если оно там есть, что-то с ним сделать дальше (отправить его в телегу)
Бью текст на слова, нахожу нужное итерацией по всем словам, но как сделать проверку "нашлось/не нашлось" не понимаю
Пока код такой:
text="Тут дохуя текста"
for word in text.split():
____if len(word) == 25:
_______x=str(word)
Что делать дальше не понимаю, как задать дальнейшую вилку, отправлять дальше этот х куда-то или нет?
350 2960573
>>2960551
Пока сделал через try-except, но мне кажется за такое пиздят
Типа дальше
try:
____#работаем дальше с х
except:
____#если х не существует вместо ошибки
____print("В тексте не было слова с нужной длиной")
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)
352 2960587
>>2960574
О, да, так гораздо элегантнее, спасибо.
image.png11 Кб, 541x176
353 2960899
>>2960587

>элегантнее

image150 Кб, 735x190
354 2960915
>>2960899

>элегантнее

355 2960945
>>2960915
Понадусёровый джаваскриптовый карась, ты?
356 2960950
>>2960945
Ты еблан?
357 2960965
358 2960971
>>2960965
Вопросов больше не имею.
359 2961246
>>2960899
>>2960915
первое и второе ок. с reduce уже не читаемо.

>>2960945
что не нравится-то?
360 2961258
>>2960915
filter медленнее for и менее читаемее.
361 2961307
>>2960915
>>2960899
Вы бы хоть попробовали запустить свой код в случае, если слова подходящего под запрос нет
362 2961310
>>2933091 (OP)

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


https://www.composingprograms.com/
363 2961323
Смотрю собеседование на ютубе.

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

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

объясните мне как он мог сделать коммерческий проект в миллион строк кода и как эта задачка одна связана с его работой в принципе? у меня ощущение как будто я схожу с ума когда смотрю эти собесы
за кадром все ебучие биллы гейтсы а в кадре какая-то странная хуита
364 2961325
>>2951398
Я выучил на С1, как зарабатывать хотя бы 40 тыщ и не сойти с ума?
365 2961330
>>2961323
В принципе может быть и в реальной жизни так, если ты не надрачиваешься на проходы собесов. Ты привык делать одно, большой проект, в спокойной обстановке, в привычном редакторе.

Тут же тебя собеседуют, это стресс большой, когда каждое твоё действие оценивают, пишешь другую задачку, в другом редакторе, чем обычно. Тут как раз нормально тормозить и тупить, причём особенно если ты не джун.
366 2961334
>>2961330
Я не совсем программист и я в принципе понимаю психологический аспект, но просто как факт, чел по сути довел до конца коммерческий проект с системами, подсистемами и кучей всего, и по сути на собеседовании его силы проверяют какой-то одной задачкой на логику которую он ещё и решает с огромными усилиями. Мне это кажется странным каким-то, неестественным. Может быть я переоцениваю количество усилий которые нужны чтобы сделать пет проект и их будучи и подпивасом можно сделать гугля 99% решений?
367 2961338
>>2961334
А что ты хочешь услышать? Может быть чел всё придумал про свой опыт, приукрасил, просто механически реализовывал проект по инструкциям. А может быть на фоне стресса затупил. Это вообще обычное явление, когда адски тупишь.

Откуда мне-нам знать, что там было?
368 2961342
>>2961323
Кто-нибудь на работе пользовался матрицами при работе с веб-проектами? Или каким-нибудь граф деревом или что там спрашивают некоторые тупые эйчары.
369 2961344
>>2961334
Ну блин, смотри. Есть такая профессия - врач. Челик приходит на новую работу, до этого он долго был стоматологом, а тут его внезапно начинают спрашивать про нейрохирургию.
370 2961667
>>2961344

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


Ну ты сравнил... Это примерно как разработчик на 1С придёт устраиваться на разработчика драйверов сетевых карт для линукса.

Скорее вот придёт нейрохирург устраиваться на работу, а ему предложат рассказать про этапы формирования нервной системы у эмбрионов. Если ты вчерашний студент или занятия ведёшь, то легко ответишь, если же ты врач, то легко зависнуть можешь. А тот, кто недавно учебник прочитал может возмущаться, как так, врач таких базовых вещей не знает, как ему диплом вообще выдали.
371 2961699
>>2961323
Подозреваю там не смогли в смалтолк на собесе.
Кандидат может был архитектором и код давно не пишет, жонглирует готовыми кубиками. Или он тех.менеджер, давно конвертнувшийся. Надо потратить 5 минут не на пересказ резюме, а на выяснение какими конкретно задачами чел занимался на последнем проекте и в какой роли и готов ли он свичнуть роль, если она не совпадает с ожиданиями в вакансии.
372 2961715
>>2961699
Вот. То ли эйчар тупой, то ли он тупо все проекты на аутсорс кидал и не может ничего сказать о себе.
Мне прост смешно становится когда вкатуны на серьезных щщах учать граф деревья, сортировки и матричную хуйню вместо инструментов, архитектуры и подходов к разработке. Информатику, математику, булеву алгебру етц и, собственно, само программирование надо отделять друг от друга, это вопросы образования, а не самого навыка.
373 2961912
СУпер тупой вопрос, но я прошерстил всё что можно, но так и не нашел способа.
Пользуюсь либрой telebot

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

Это вообще реально сделать?
374 2962011
>>2961912
Тебе нужно хендлеры на нажатия повесить, читай документацию лучше. Вот даже ебучий пример для даунов сделали: https://docs.python-telegram-bot.org/en/v20.7/examples.inlinekeyboard2.html
375 2962175
>>2962011
Перечитай еще раз вопрос, а потом "советуй"
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("Нажали на твой кал пальцем и он провалился")
377 2962280
>>2962274
callback_data быстрофикс
378 2962337
>>2962175
А ты лучше бы глазки от мочи протер.
379 2962609
>>2961323
Интернет-магазин собирается из готовых кусков. Или полу-готовых.
Ни программирования, ни собственных архитектурных решений там нет, есть написание простейшего кода для склеивания, хотя его там и много.
Естественно, такой вася даже пузырьковую сортировку не напишет. И, иногда, даже не поймёт что от него вообще требуется.
380 2962663
>>2962609
Кто представляет бОльшую ценность для работодателя: челик, который может быстро реализовать бизнес-задачу, или олимпиадник, который пишет сортировку на Си?
381 2962701
Можно ли как-нибудь поставить pip и Tkinter на python-embedded? Комп рабочий, прав администратора у меня нет. Могу использовать только портативную сборку.
382 2962881
>>2962663

> Кто представляет бОльшую ценность для работодателя: челик, который может быстро реализовать бизнес-задачу, или олимпиадник, который пишет сортировку на Си?


Первый на должность продакт манагера, второй на должность разработчика
383 2962910
>>2962881
Хуже нет олимпиадника на должности разработчика. Он вместо быстрой реализации фич ебет мозги с алгоритмической сложностью.
384 2963071
>>2962910
Олимпиадник сможет всё, справиться с любой сложной задачей. А вот "быстро реализующий бизнес задачу" всё завалит, как только работы выйдет за рамки чего-то шаблонного, что уже сто раз написано, разобрано на айти курсах и т.п.
385 2963106
>>2963071

>Олимпиадник сможет всё, справиться с любой сложной задачей


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

>как только работы выйдет за рамки чего-то шаблонного


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

мимо ходил в кружок по спортивному программированию в вузе
386 2963128
>>2963106
Чтобы решать олимпиадные задачи нужны мозги и ясность ума. При их наличии освоить индустриальные техники не такая большая проблема. Главное, что человек понимает что и зачем он делает.

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

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


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

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

Но суть в том, что потолок олимпиадника очень высокий потолок, из него может получиться нереально крутой спец. А "решатель бизнес задач" большого потенциала не имеет.
387 2963129
>>2963071

>Олимпиадник сможет всё


Ага, да. Вот только я лично этих чмонделей собеседовал и знаю на что они способны, а ты нет.
388 2963150
>>2963129
Я никого не собеседовал, хотя когда-то мне предлагали поучаствовать.

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

Но уметь решать сложные олимпиадные задачи ценно.
389 2963167
>>2962910

>Он вместо быстрой реализации фич ебет мозги с алгоритмической сложностью.



Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.
Это решатели задач со временем начинают закладывать х10 эстимейт на покраску кнопки и грызть всех, кто работает слишком быстро
390 2963182
>>2963167

>Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.


Им нравится такие же аутистические задачи делать, а не кнопки красить, когда ты ожидаешь чего-то особенного, то быстро выгораешь. Вне RnD нахуй не нужно.
391 2963193
>>2963182
Вот этого двачну. Додики наполучают медалей и грамот, звезду поймают и думают о себе хуй пойми что. И задачи им интересные подавай и мотивируй постоянно. А говно вилкой чистить не хотят, баги фиксить - не царское дело, в легаси ковыряться - выше их достоинства.
392 2963374
>>2962881
я думаю, что timedelta не подошла, т.к. максимально можно неделями оперировать. поэтому и порекомендовали relativedelta из dateutil, т.к. там уже и месяца есть и годами можно оперировать. всё-таки интересно какое решение за неделю обсуждения было реализовано.
393 2963393
>>2962609
А зачем писать свою сортировку?
394 2963399
>>2963374
Решение одно. Остальное придумали местные олимпиадники.
Ты подожди, скоро они тебе на ассемблере код напишут. Может свой микропроцессор сделают.
395 2963403
>>2963167
Проблема олимпиадников в том что они те самые велосипедники, которые потом просто выгорают. Обычно такие люди пишут какие-то библиотеки на гитхабе, а потом жалуются что у них нет времени и они едва сводят концы с концами. Им проще написать свою либу чем работать с существующими.
Это максимально вредно для работодателя, потом этот хер уволится, а остальным ещё разбираться в его отсебятине.
396 2963413
>>2963167

>Лоооол олимпиадники как раз и въебывают как папы Карлы и овертаймят, потому что увлеченные аутисты.


>увлечённые



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

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

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

А дальше — думой сам, как с этим теперь жить.
397 2963444
>>2963413
Есть аутизм, есть СДВГ, хотя у них там родственная внутренная природа и они часто сочетаются. Для айти свойственно.

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

СДВГ это когда ты бросаешься на то, что тебе интересно, реально в это вгрызаешься, можешь перформить, придумывать что-то интересное, что другим не под силу. Это "гиперфокус". Но одновременно ты хуй чего будешь делать из того, что не интересно, не можешь заставить себя сесть даже за простые задачи, пока совсем дедлайн не подходит, и редко готов разбираться с легаси-говном. В плане отдачи хуже, чем аутизм, в плане выстраивания совместной работы лучше, отдача может быть, если хорошо организована совместная работа, плюс ты можешь придумывать что-то очень полезное, особенно в сложных ситуациях.
398 2963449
>>2963413

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


Всё-таки в айти тебе в любом случае надо напрягать мозг, с чем-то разобраться, что-то придумать. За описанных заводах мозг надо отключать.

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

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

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

Чаще надо что-то поддерживать и дорабатывать, что уже давно есть. Тут главное разобраться в проекте, что та ещё история. В те моменты, когда надо что-то сделать, ты работаешь. В другие ничего не делаешь, но ты нужен потому, что за тобой проектные знания.
403 2963473
>>2963464

>И нет, это не про олимпиадников.


>Олимпиадники/математики на самом деле хуёвые программисты, чаще всего.


Вообще скорее близко к математике.
У олимпиадников другая проблема, их скиллы заточены на спорт, чтобы сделать максимально быстро, быстрее, чем соперники. "качество кода" в принципе отсутствует. Код небольшой, всё про алгоритмы.

В то время как в работе не важно, если ты на что-то сложное потратишь четыре дня вместо двух.
404 2963488
Проверить есть ли какое-то значение в списке можно только через итерацию по всем элементам или есть какая-то специальная функция?
405 2963498
>>2963488
value in some_list
some_list.index(value) # выбросит исключение, если нет
some_list.count(value) # перебор в любом случае

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

Если бы не ебучий дата-сайенс, про питон сейчас бы уже и не помнил никто, после эпичного-то фейла с несовместимой 3-й версией. Он так отчётливо тогда начал становиться легаси-технологией, а'ля Perl.
vibelol.mp4315 Кб, mp4,
360x202, 0:06
409 2963655
>>2963586

>вместо человеческого -1

410 2963657
>>2963488
Если список не отсортированный то только перебор всех элементов, да
411 2963661
>>2963586
Есть, только реализуется через магические методы, для того же листа достаточно сделать так
item in my_list

>Да ещё и исключение выбрасывает, вместо человеческого -1.


Выдавать результатом на проверку вхождения число вместо тру/фолс это по твоему по человечески?

>Если бы не ебучий дата-сайенс


Питон сначала был перлозаменителем для сайтов, потом с 3.5 стал популярнее из-за нормальной асинхронщины из коробки, датасаенс потом подтянулся
412 2963670
>>2963464
Кому показать? Ты работал вообще хоть где-нибудь?
Я не помню чтоб мне хоть где-то требовалось сделать свой алгоритм. Эфективно распределить ресурсы сервера, сделать оптимальную архитектуру проекта, заложить масштабируемость, надёжность - да.
Но придумывать самому алгоритмы которые были сделаны в прошлом столетии - нет. Даже не представляю где это можно применить. Сдаётся мне ты пересмотрел курсов и почитал много ненужных книг, но в реальной работе это не используется, ну может быть где-то в 2-3% вакансиях

Я б с удовольствием использовал чат жпт для генерации кода, но он так и не даёт мне даже ответы на интересующие вопросы в плане архитектуры, что уж там говорить про код, который сделан на уровне хелоуворлда.
413 2963715
>>2961323

>объясните мне как он мог сделать коммерческий проект в миллион строк кода и как эта задачка одна связана с его работой в принципе?


Кроме говноалгоритмов, говносортировок, говнографов, говнохешей, говнодеревьев, говноматриц, говновекторов нужно в голове держать ещё дохуищи информации. Нужно знать как кешировать, как работать с БД, аутентификацию, авторизацию, шифрование, как с кубернетисом работать, как настроить CI/CD, нужно помнить GraphQL, Rest API, и так далее и тому подобное. Как он смог такое сделать? Ему просто нахуй не надо было знать в тот момент. "Полезные знания" не равно "необходимые знания". То есть говноалгоритмы знать полезно, но также полезно знать маркетинг, полезно знать администрирование линукса и прочую хуйню. Жить без этого можно. Не конец света.
414 2963736
С помощью чего можно построить простой график столбами?
Например у меня есть сотня-другая значений даты-времени, хочу получить 14 графиков за последние 2 недели со столбцами по часам
415 2963761
>>2963661

>Питон сначала был перлозаменителем для сайтов


В отличие от тебя, я тогда жил.
Перлозаменителем для сайтов был PHP. Да и сейчас есть.

>>2963670

>Я не помню чтоб мне хоть где-то требовалось сделать свой алгоритм.


>etc


Если бы ты мог понять, какую стыдную хуйню ты тут пишешь, ты бы заплакал.
416 2963765
>>2963736
Где ты его собрался построить?
Что делать дальше с тем, что ты построил?
Вот тут почитай:
https://opensource.com/article/20/4/plot-data-python
417 2963769
>>2963761
Агрегацию поиска по бд? Это что-то сложное где требуется быть олимпиадником? Серьезно?
418 2963782
>>2963765

>Где ты его собрался построить?


В виде пикчи. Ну или ascii какой-нибудь я не знаю.

>Что делать дальше с тем, что ты построил?


Анализировать епта.
419 2963797
>>2963736
Эксель
420 2963799
>>2963797
Не знаю почему я про него не подумал. Даже странно как-то. Спасибо.
421 2963804
>>2963769
А пузырьковая сортировка - это типа что-то сложное, и надо быть олимпиадником, лол?
А бинарный поиск?
А рекурсивный обход каких-то связанных структур ты тоже никогда не делал? Это очень распространенная задача.

>>2963782
Ну, ссылку я там дал, этого более чем.
Алсо - можно вообще заебенить GUI на wxPython, и там прямо на форме рисовать, в реальном времени.
422 2963871
>>2963804
Если ты будешь делать свою пузырьковую сортировку и методы поиска, то тебя на ревью не пропустят.
423 2963877
А какие есть плюсы у питона кроме "простота и большое комьюнити"?
424 2963997
>>2963761

>Перлозаменителем для сайтов был PHP. Да и сейчас есть.


И какую нишу по-твоему занимал питон в то время? Тот же перлозаменитель для нитаких как все, только менее популярный. За счет джанги/фласка/торнадо он и был нужен тогда.
image.png132 Кб, 544x723
425 2964030
>>2933091 (OP)
Вот гопота прекрасно мне ответила на вопрос, на который ни один двачерок или петуш с киберфорума не мог дать внятный ответ. Ебало?
426 2964039
>>2964030
Если ты задавал вопрос в той же манере, то не удивительно, лол.
427 2964042
>>2964039
Все максимально понятно, раз сетка поняла. Как раз таки "проблемы" с сеткой в основном от того что люди через жопу ей задают вопросы
428 2964078
>>2964042
Какой же ты тупой, пиздец.
429 2964114
>>2963997

>За счет джанги/фласка/торнадо он и был нужен тогда.



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

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

А вот потом уже появились ваши джанги-хуянги. Гораздо позже.
430 2964199
>>2964078
Зато ты пиздец умный гляжу, скок зарабатываешь? какой стаж?
431 2964313
>>2964199
Я не он, но, я тебе скажу, что если ты такие вещи спрашиваешь у двачеров или у гопоты, а не находишь сам за 5 минут в доках или вообще в исходниках пидантика, то ты не особенно умный.

Я уже не говорю о том, что питон - динамический язык, и там в реальном времени можно пройтись по всем свойствам и методам объекта, и сделать с ним что хочешь. Ты же сможешь рекурсивно обойти объект и все его свойства-объекты, и сравнить с другим? Или "алгоритмы" не нужны?
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 уже косяки перехода преодолели, плюс саму ветку уже довели до ума, плюс все эти возможности асинхронности, в общем это скорее позволило питону начать отвоёвывать обратно свои ранее утерянные позиции.
433 2964353
>>2964313

> рекурсивно обойти объект


Мы вам перезвоним
434 2964409
>>2964313
Мань, ты ж понятия не имеешь, о чем говоришь. Зачем вообще лапками по клавиатуре стучать тогда начинаешь?
435 2964440
>>2964353
Пожалуйста, не надо мне перезванивать.

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

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

Спасибо, увожаемые анонасы.
437 2964554
>>2964546

>Последнее видео по джанге на ютубе было 9 месяцев назад!


Где ты такой ютуб нашёл? Провелил, за последний месяц дофига новых видео
438 2964621
>>2964554
Странно. Я просто иду на yoytube.con, и просто в поиске набираю django.
Да, сначала он мне подсвечивает всех, на кого я подписан, но и сильно дальше я откопал англоязычный видос, опубликованный минимум 3 месяца назад
439 2964622
>>2964621
com
быстрофикс
440 2964654
>>2964440
Ну ты же высрался аж 2 раза
1702651289830.jpeg314 Кб, 1080x2340
sage 441 2964668
1702651368003.jpeg314 Кб, 1080x2340
sage 442 2964673
443 2964696
>>2964668
Отсортировал в фильтрах по дате загрузки, увидел видосы на твоих пиках.
Спасибо, анон, это я тупой.
444 2965846
>>2963488
Тут табе адказвае той хто сам нічога ня ведае.

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

Хули делать то? Сигналы еще пробовал, поебота тоже.
453 2966192
>>2966173
Можно закрыть поток
454 2966203
>>2966192
В python ж нельзя убить поток без иъебов навроде того ж PyThreadState_SetAsyncExc, да и, потом, мне надо чтоб просто он вышел из блокирующей операции и спокойно продолжил исполнение далее. Это наверное платформозависимая хуйня.

Перезапуск потока ради такой плевой задачи выглядит как забивание гвоздей телескопом. Но наверное иначе и правда нельзя.
455 2966233
>>2966192
Ну в моем случае поток блокирует win32api.CreateFile для открытия COM-соединения. Платформозависимая хуйня, на пингвине или еще где будет иначе все. Ну один хуй надо как-то вот блокирующую операцию прервать.
456 2966381
>>2966203
Ты можешь блокирующую операцию отдельно вынуть в другой поток и сделать ему таймаут
457 2966387
>>2966161

> PRAGMA journalmode=WAL;


даст возможность конкурентной записи для sqlite
458 2966644
>>2965926
Залей на гитхаб, блджад.
459 2966697
Нужно максимально быстро немного разобраться, что такое вебсокеты и как с ними работать, что почитать? Желательно на русском.
460 2966700
>>2965926
Цудна, стварай яшчэ. Таксама паглядзі мае https://replit.com/@ploomum/Chuitka
461 2966720
>>2966697

>Желательно на русском


Иди нахуй.
462 2966722
>>2966720
Так и знал, что какой-нибудь долбоеб триггернется.
463 2966738
亲爱的朋友们他说什么?
>>2966700

>Цудна, стварай яшчэ. Таксама паглядзі мае


我看不懂
464 2966742
>>2966722
Долбоеб - это тот, кто суется в айтишечку без базового знания английского.
465 2966758
>>2966742
Мне айтишечка ваша нахуй не нужна, а английский у меня минимум B2. Но я написал "желательно", потому что разобраться мне нужно быстро.
А теперь съеби нахуй, сам то небось пхп-макака ссаная.
466 2966782
>>2966758

>минимум B2


>не может бегло читать документацию


Ору.
467 2966790
>>2966782
Все я уже могу и читаю, съебись.
468 2966806
>>2966697
Как вы ещё не вымерли все, бедолаги? По стандартным библиотекам тонны инфы на русскоязычных ресурсах, если уж совсем тяжко и ты страдаешь от синдрома дефицита внимания, сходи до чат гопоты, пусть объяснит тебе как отсталому на пальцах как пользоваться сокетами
469 2966822
>>2966720
Хрюкни.
470 2967044
>>2966790
Ну вот видишь, стоило тебя макнуть в говно, так ты сразу сам справился.
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 и завершает поток с блокирующей операцией
473 2967817
>>2966233
Если винапи не предустматривает таймаут для CreateFile то хрен ее прервешь, мне так кажется. Наверное можно всю работу с ком портом вынести в отдельный процесс (не поток) и убивать его если завис, но это совсем уже некрасиво получается.
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
}
}
Подскажите, кто чо знает.
475 2968047
>>2968041
result = [
____{
________"NAME": names,
________"PARAMS": {
____________"height": heights,
____________"weight": weights,
________}
____}
____for i in range(len(names))
]
476 2968050
>>2968047
Бля, когда уже на сосаче добавят теги для кода, даже в ссаную тележку добавили.
https://ideone.com/Pw1mll
477 2968063
>>2968050
добра тебе
478 2968070
>>2968050
а почему не
for name, height, weight in zip(names, height, weights)
479 2968071
>>2968070
бля букву потерял но понятно чё там
480 2968072
>>2968070
Можно и через зип, мне просто быстрее через range
481 2968073
>>2968047
>>2968070
zip_longest, т.к. не пореряет данные если списки будут разной длинны
482 2968077
>>2933108
Расстановка приоритетов и все такое. Одним глазом работает тайм-менеджмент, и прочая шизазалупа, которой пичкают современных ребятишек. На самом деле есть потушить жопу, и здраво подойти ко всей этой теме, то можно неплохо вырасти в плане управления временем и осваивания новых вещей для самого себя. Но это все в теории и вероятно. Если в голове бардак и настоящего желания учиться нет - хуйца по итогу только можно будет соснуть.

>как зумеры выдерживают такую гонку?


Времени + мотивации дохуя. И то не у всех.
483 2968114
>>2968050

>когда уже на сосаче добавят теги для кода


Были уже. Начали использовать для сранья и вайпа. И убрали.
484 2968413
>>2967044
Ну и нахуй вы тогда все тут нужны? Понос словесный выливать? Выключи компутер и иди траву потрогай, Рембо комнатный.
485 2968445
>>2968413
Причина подрыва?
486 2968622
>>2968413
Твои лабораторки за тебя никто делаеть не будет, а бесплатно взламывать вебсокеты в браузере тем более. Да и ты не сможешь получить к ним доступ.
487 2968719
Насколько быстро можно найти первую работу, если учить по 20 часов в неделю?
488 2968734
>>2968719
Зависит от твоих ожиданий и работоспособности. Если метишь в гугол и занимаешься байтоебством - можно и за десять лет не устроиться никуда.
Если с головой всё в порядке и делаешь только то что нужно - через пару месяцев, может три.
А ещё всё зависит от базы в целом. Если ты условно ебланил в школе с вузом, то вкат может затянуться на долгие годы.
489 2968737
Интересно, что такого за 3 месяца может изучить хлебушек по питону, чтобы его на работу взяли в текущих реалиях.
490 2968738
>>2968737
Кроме случая, если его знакомая синька или мидлуха не будет надрачивать всё это время под конкретного потенциального работодателя.
491 2968747
>>2968737
Обычный рест апи, работы с бд, вызовы к сторонним апи, пару фреймворков и планируемый стек. Немного базового программирования. Всё. Даже такой конч как я освоил это за пару месяцев правда я до этого программировал микроконтроллеры, но не суть
492 2968754
Новая версия шапки https://goonlinetools.com/snapshot/code/#aqb4ejoiuxir84vfonk7l

Призвана решить проблему долбоёбов постащих код. Выкинут раздел с кучей ссылок на говносайты. Добавлен правильный и заметный.
493 2968755
>>2968747
Половина ждунов с нарисованным опытом не знают, может ли быть в гет-запросе боди или как куки работают, а большая часть не знает, как работают сессии в алхимии или что такое uow, но уже 150к с ноги хотят я бы тоже хотел, чего скрывать, но сами за 3 месяца че-то не могут это освоить.
494 2968758
>>2968755
на самом деле боди модет быть где угодно, а запрос называться не get, а uwu, например
495 2968763
>>2968754
Мб заменить старпёрный видос бизли на плейлист молчанова?
https://www.youtube.com/playlist?list=PLlWXhlUMyooawilqK4lPXRvxtbYiw34S8
496 2968765
>>2968758
Только в твоих влажных мечтах, манька в гольфиках.
497 2968767
>>2968755
Чёт проиграл с тебя, вообще вебморд не касался за последние 3 года ни разу
мимо получаю 280к
498 2968771

>>296876


Ну так и я получаю 280к и уже почти 2 месяца код не пишу, только статусы в эпиках в жире меняю и документацию обновляю, т.к. всё давно отрефакторил и тестами покрыл, ведь 2 предыдущие команды олигофренов не смогли это сделать за предыдущие 2 года.
499 2968811
>>2968771

>отрефакторил


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


А чем нибудь кроме бесполезной хуйни ты занимаешься на рабочем месте? Где таких держат?
500 2968818
>>2968765
Почему? Это просто общепринятый стандарт. Можешь сам проверить на fastapi и сделать через постман гет запрос с боди. Прочитает.
Да и я часто в логах вижу боты посылают запросы отличные от get/post. Это просто общепринятый стандарт, не более.
501 2968823
>>2968811
Да, назаровских волков-ебанашек на собесах попускаю. А ты где полезной нехуйней занимаешься?
502 2968824
>>2968818
Отправил тебе за щеку options-запрос с хуем в боди, можешь не проверять.
image.png2,8 Мб, 1779x688
503 2968830
Есть один сервис, который отдает такой токен: 1702947606108.009da13328e560c5debf0142ece04950
Первая часть до точки - это UNIX time GMT: Tuesday, 19 December 2023 г., 1:00:06.108.
Какие предположения насчет второй части токена, которая после точки?
Есть ли какой-нибудь сервис, чтобы попробовать разные типы шифрования, сравнивая их? Вроде видел какой-то сайти с окошками для SHA, AES, но хоть убей не вспомню как нагуглить даже.
504 2968838
>>2968830
очевидный хеш, 32 hex символа, 128 бит. Может md5, может обрезанный большой хеш. Брать могут от чего угодно, например там id пользователя, таймстамп, пароль + какая-нибудь длинная соль.

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

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

Смотри доку, там примеры есть многого
открытие ET.load()
из объекта в xml обратно ET.dump(root)
507 2969024
>>2968823

>А ты где полезной нехуйней занимаешься?


В местах где сказать начальству на вопрос чем занимался - я

> отрефакторил и тестами покрыл


все равно что сказать

> пузыри слюнями пускал, а сейчас вот какаюсь

508 2969068
>>2969024
Забавно таких клоунов встречать, мнящих себя дохуя важными-бумажными, а на деле молча сидят на дейликах, лишь бы не спросили, что вчера делал.
509 2969095
>>2969024

>на вопрос чем занимался


Мимо синьор девелопер. Докладываю:
1. Спросил в трех рабочих чатах "Ну чо там?"
2. Провел созвон, подвигал карточки.
3. Написал требования к документации.
4. Прокомментировал документацию.
5. Ответил на комментарии к своим комментариям к документации.

Кстати получаю 450к. Кода не писал уже шесть лет.
510 2969097
>>2969068
Конечно тревожно, ведь если сказать твой бред то в ответ тебя удивленно спросят "а почему ты нихуя не делал?" и выебут по кругу всем трудовым коллективом.
511 2969098
image.png11 Кб, 496x392
512 2969150
>>2966147
Дарк тему в админку подвезли наконец то
513 2969170
>>2969150
Тащемта темная тема и в третьей джанге была.
514 2969196
>>2969170
Ну в 4 не было. По крайней мере из коробки.
Только что венв с 4 отдельно поднимал, что бы проверить.
Да и в 3 я что то не припомню на вскидку.
515 2969588
>>2969196
Включи в системе/браузере темную тему и проверь еще разок.
https://docs.djangoproject.com/en/3.2/ref/contrib/admin/#theming-support
image.png12 Кб, 496x392
516 2969657
>>2969588
Не. Смотри внимательнее. Я пик не просто так приложил.
Это из коробки прям. Самый первый запуск админки в самом первом пустом приложении
517 2969707
Джангисты на месте? Возможно ли реализовать бесконечную прокруту/бесконечный скрол вместо обычной пагинации стандартными средствами джанги?
518 2969919
>>2969657
Так в 3 тоже из коробки, только кнопки нет, админка сама решает какие стили применить на основании того включена ли у тебя темная тема в системе или нет.
519 2969945
>>2969707
Можно конечно, но нужно использовать js
520 2970402
Джанга это, что называется - "в семье не без урода"
521 2970428
Дайте пожалуйста названия годных книг по нейронным сетям.
522 2970443
>>2970402
Что сказать-то хотел?
523 2970561
>>2970428
Николенко - Глубокое обучение
15036787785890.png67 Кб, 200x200
524 2970568
525 2970588
>>2970561
а для начинающих что-то ?
526 2970731
>>2970588
Петерсон - Игралочка
image.png29 Кб, 589x370
527 2970781
>>2969945
Что то мне кажется, что этот ленивый голубец припёздывает мне. Парсингом я давно занимаюсь, но никогда не видел, что бы запрос джэйсона улетал буквально на каждое деление колёсика скроллинка. Или это в натуре норма?
528 2970821
>>2970781
Твоя гопота не знает про debouncing.
529 2970826
>>2970821
Знает, как оказалось, если подробнее расспросить. Я прост заказывал минимал вариант, что бы прорубить тему.
Debouncing или Throttling: Вы можете использовать технику дебаунсинга или траттлинга, чтобы ограничить частоту отправки запросов. Таким образом, запрос будет отправляться не каждый раз, когда событие scroll срабатывает, а с задержкой. Вы можете использовать библиотеки, такие как Lodash, которые предоставляют функции дебаунсинга и траттлинга.

Threshold (Порог прокрутки): Регулируйте значение 100 в $(document).height() - 100 в вашем коде. Это значение определяет, насколько близко к концу страницы должен быть скролл, чтобы начать подгружать новые статьи. Вы можете изменить это значение, чтобы запросы отправлялись менее часто.
530 2970829
И всё равно, какое то ощущение костылинга не покидает
531 2970927
>>2970821
Троттл кстати на скролл лучше всего подходит, дебаунсинг - это для инпутов хорошо.
video2023-12-2112-38-40.mp424,9 Мб, mp4,
1280x720, 1:16
532 2971396
Ананасы, я доволен, как слон.
Ну и ебучий конечно язык джаваскрипт. Я нихуя не понимаю, как это работает, но работает, вроде как надо.
Джанга. Подгрузка статей из базы по 10 штучек посредством бесконечного скролла. При этом запросы не дидосят базу.
Мне больше не с кем поделиться счастьем, у меня нет ни одного знакомого, который бы эту хуйню понимал.
533 2971417
>>2971396
Ты только что записал монитор на камеру смартфона?
534 2971443
>>2971417
а че? я же прогромист, ловкий и умелый
535 2971451
>>2971417
В позапрошлом году здесь был подросток, учившийся питону и славший бесконечные мыловидео с экрана ноутбука.

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

Бонусом, там показано, как правильно парсер прикручивать. Вот бы еще найти, как эту команду по таймеру прям из рантайма джанги запускать
538 2971658
>>2971396

>Я нихуя не понимаю, как это работает, но работает


Все нормально, ты по скиллам уже как среднестатистический мидол пайтон девелопер.
539 2971803
Народ, а какой GUI на сегодняшний день наиболее котируется? Хочу написать настолку, только 2д-графика. По геймплею: бросок кубиков, выбор действия, чтение карточек.
Я консольную версию написал, всё работает, вот теперь хочу графоний прикрутить со свисто-перделками.
Видел на гитхабе "монополию" довольно хорошо сделали на tkinter. Можно и на нём начать писать, но есть вопросики:
- как у него с добавлением визуальных эффектов в виде сияний, подсветок и 2д-анимаций?
- что с кросс-платформенностью? Я могу потом это всё закинуть себе на андроид-планшет или ещё куда?

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

Если что, раньше прогал на С++ и в Qt соответственно всякие служебные утилиты под винду и линукс. Но залазить в PyQt как-то не очень хочу. Ощущение, что я химическую лабораторию использую, чтоб чай заварить
540 2971807
Кто-нить фрилансит на питоне? Как решение отдаёте кабанчикам, разворачиваете всё как надо через докер или тупо exeшник генерируете?
541 2971862
>>2971803
Ничего универсальнее, гибче и красивее, чем HTML+CSS всё равно нет, хули тут думать.
Ну если точно хочешь изучить огромную ебанину и при этом оставаться в оконцове жестко привязанным онли к декстопу и мобиле - знамо дело, бери qt, если не огромную ебанину, но всё равно нюхать десктоп и мобила по жизни есть custom tkinter, тоже красиво более менее.
С ХТМЛ и ЦСС же ты можешь хоть под что хуярить. Даже под телегу, учитывая эту новую фичу вкручивать веб прям в внутрь телеги.
542 2971880
>>2971862

>Ничего универсальнее, гибче и красивее, чем HTML+CSS всё равно нет


Двачую это. Если уж пиздец как захочется на десктоп портнуть - можно завернуть в электрон.
543 2971895
>>2943216
Все нормальные языки используют верблюда, а так как петухон не язык, а аналог баш скриптов, его мнение не учитывается
544 2971903
Ребзя, поясните чисто по хардкору.
Вот есть база со статьями, есть пустой шаблон, с одним дивом флекс ширина 100vw, высота 100vh. Есть отдельно шаблон карточки на флексах, растянут по ширине и высоте на 100%.
Я правильно думаю, что
for статья in статьи:
рисовать див, в котором инклюд шаблон карточки, в которой в свою очередь уже подставлены данные?
Хочу что бы на голом шаблоне появлялись красивые карточки ровно с тем, что в базе есть. Если в базе ничего нет, то и не появляется ничего.
Сорян, что объясняю, словно боженька.
545 2971909
>>2971895

>не язык


Turing Complete так то
546 2971917
>>2971467
Ты пойми одно. Каждый раз это будет всего одна запись и каждый раз всего одна запись будет позорить тебя. Поставь себе OBS и настрой его всего один раз и в будущем оно тебе пригодится каждый раз
547 2971920
>>2971903
Хуевато объяснил, но ты мыслишь в правильном направлении.
548 2971929
>>2971807
Зависит от клиента, кому надо на хостинге крутить там докер, кому на десктопе там обычный батник или экзе
image.png76 Кб, 751x509
549 2972418
>>2933091 (OP)
Братцы, кто-нибудь подключался к postgres с помощью pyodbc? Он у нас в фирме стандарт (т.к. в основном юзают мускл), захотел постгрес приконнектить, по идее стандарт это допускает, когда начал делать, sclalchemy начал ругаться на недостающие либы (хотя установил pyodbc в зависимостях и либу odbc-postgresql в контейнер). Вот спроси лу Чат ГПТ но он начал хуйню нести, его не смущает в ответе, что он указал драйвер PostgreSQL Unicode но в коннекте прописал: mssql+pyodbc
550 2972483
>>2972418
Ну так доустанови недостающие либы, хули ты?
551 2972680
>>2972483
Что доустанови? Сказано же что я накатил как в зависимости питона все так и в контейнер. Ему пох
552 2972688
Джанганы, вот у меня в базе есть флаг с булевым значением 0-1, как вы делаете, что бы в зависимости от флага в шаблон вставлялась фраза "Дать краба" - "Отшить петуха"?
Это сериализаторы курить или сериализаторы ни при чем и можно проще? (я в дрф пока не лезу)
553 2972697
Ох ебать, сам догадался кажись. Условие прям в шаблон же можно воткнуть
{% if база.флаг = 1 %}
<div класс="Дать краба">Дать краба</div>
{% else %}
<div класс="Отшить петуховена">Отшить петуховена</div>
{ end if }
Думаю, как то так сработает
554 2972734
>>2972697
А если документацию попробуешь почитать - вообще охуеешь.
2023-12-22 14-22-43.mp41,8 Мб, mp4,
1920x1080, 0:17
555 2972782
>>2971917
Спасибо, ананас, за рекомендулю.
556 2972784
>>2972734
Ткни носом, чё ты как типичный красноглазик на красноглазых форумах себя ведёшь
557 2972868
>>2972784

>как красноглазик на красноглазых форумах


А мы где?
558 2972976
>>2972868
Мы на двощах, тут аноны помогают своим коллегам анонасам
559 2972999
>>2972976
Зашел на Двач ты, советов просишь мудрых...
560 2973271
>>2972688
Ну ты чего, шаблоны прекрасно поддерживают условия.

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

Или

{{ "Дать краба" if flag else "Отшить петуха" }}
562 2974243
Какой же чат жпт тупой, пиздец просто.
Сейчас спрашиваю его сколько символов я могу передать в Питоне3.7 через subprocess.call(), ОС виндоус.
Отвечает мне: ТОЛЬКО 8191.
Но я же помню что ещё в 2.7 передавал под 32000.
Чекаю, так и есть - 32к, если 33к ошибка длины.
Пишу ГПТ - вот передал 32к, оправдывайся.

"Мням мням, ну у вас наверное какие-то особые настройки ОС стоят и вообще лучше не больше 8191 передавать"
Буквально так и ответил. и вот на этом говне сейчас баристы учатся погромировать.
563 2974371
>>2974243
А теперь купи последний жыпити и переспроси.
564 2974375
>>2974243
Но ведь жпт должен был отобрать у нас работу, как же так получилось что он пишет нерабочий код, хмм...
565 2974763
>>2974371

>купи


>переспроси


>перепроверь


>надейся что за твои деньги чатбот тебе не высрал рандомный набор букв



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

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

Точные ответы — это совсем другая область и её либо бросили разрабатывать, добившись гипертекста (и википедии на нём), либо ещё даже не начали подступаться (реальный искусственный разум, а не интеллект).
567 2974967
>>2974763
А ты иначе последний гпт никак не запустишь, дурачёк. Если ты вообразил, что найдешь свободную модель 4.5 на хаггингфэйс и запустишь на своей помойке, то ты глубоко ошибаешься.
А последний жпт верстает по скинутой ему пикче, не то, что твои даунские ответы подсказывать.
568 2975091
>>2974768

>Дык, это суть нейросетей и ИИ — давать ПРИМЕРНЫЙ результат, совпадающий на заданную точность с истиной


Скорее это нейросети на текущем этапе развития. Человек ведь тоже нейросеть, но в состоянии выдавать точные результаты.

Я думаю через какое-то время нейросети научатся нормальному логическому мышлению, плюс будут помнить чётко какие-то фактические данные и уметь ими оперировать. Принципиальный проблем тут нет.
569 2975229
>>2975091
Принципиальная проблема есть одна, но ооочень сложная. На столько, что умные дядьки решили приостановить пока это дело, потому что совершенно чётко понятно, что дальнейшее развитие приведет к непредсказуемым, но абсолютно точно к ужасающим результатам. Проблема 2000 года - это просто шутка петросяна, по сравнению с проблемой согласования.

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

Научпоп, который объясняет на пальцах:
https://www.youtube.com/watch?v=fJOPGbbqMvw&t=1s
570 2975285
>>2975229
оффтопик, но я вижу больше проблему не в сверхъуме ИИ, а в сверхтупости человечества и неспособности его решать проблемы и отвечать на вызовы
571 2975322
>>2975285

>Это не титаник разбился об айсберг, это айзберг разбил титаник.

572 2975441
>>2975091
Да хуй там. Просто у человека есть другие слои, не являющиеся нейросетями. А есть нейросети. Это очевидно.

>нейросети научатся нормальному логическому мышлению


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

Но у человека есть ещё слой разума и слой логики, сделанные не по принципу нейросетей. И есть ещё лимбическая система, вегетативная и прочее. Человек сложнее комплексно, а не вычислительно.
573 2975447
>>2975229
Хуйня какая-то))
Для гуманитарных пориджей-овощей.

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

Где почитать про эти отличия?
575 2975467
>>2975441

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


Мне кажется ты сам читал про простейшие нейросети и на основе этого делаешь выводы. Но современные нейросети на порядки сложнее.

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

>Но у человека есть ещё слой разума и слой логики, сделанные не по принципу нейросетей.


А по какому, интересно? Какой тип клеток за него отвечает, где они находятся, как соединены друг с другом?
576 2975482
>>2975456

>Python 2015


Какую версию ты имеешь в виду?
Там по календарю вроде 3.5 в 2015 выпустили. Тогда слёту
1) f-string, без них сейчас никуда вообще, завезли вроде бы в 3.6
2) asyncio, завезли в 3.5 в современном виде, но реально добили к 3.7
3) очень много вокруг аннотаций-типизации, это то, что и сейчас ещё дорабатывают

Мне кажется это вот самое ключевое, прочее, вроде := и каких-то отдельных библиотек уже так, совсем мелочи
577 2975534
>>2975467

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


Нихуя, нейронки не способны в индукцию, так как это просто умная статистическая машина, а без нее любая попытка мышления не представляет никакого смысла
578 2975675
>>2975534

>Нихуя, нейронки не способны в индукцию


Ну человек же способен? А человек тоже всего лишь нейросеть.

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

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

Нейросеть с обратной связью способна абсолютно на всё. Это как машина Тьюринга может всё вычислить, что в принципе возможно, так и нейросеть с обратной связью способна к абсолютно всем формам мышления.
aec17e36a3eaacc70a6eb099e5bfc054-g.jpg37 Кб, 357x500
579 2975760
>>2975482
Пикрил хочу прочитать. Издан в 2015.

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

Из соображений придурковатости все имена были изменены.
581 2975825
>>2975456
>>2975760
В 2023 версии print надо писать со скобочками, в 2015 без.
Это главное отличие. Есть еще всякие мелочи но их знать не обязательно. Примеры из книжки должны работать.
582 2975850
>>2975794
Нет нельзя, используй django-crontab
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, а не функция с т.з. синтаксиса, потому что нет скобок?
584 2975861
>>2975467

>Человеческий мозг это тоже нейросеть


Отнюдь. Нейросеть там — только слой в неокортексе и более примитивный, но более мощный, слой в лимбической системе.

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

>>2975467

>как соединены друг с другом?


Так и нейроны соединены вовсе не так, как организованы нейросети. Нейросетевые примитивы (единицы) — это лишь очень приблизительная ИМИТАЦИЯ МОДЕЛИ нейрона, как его видели в 1963 году, когда нейросети появились. Сейчас просто формулы сложнее, потому что вычислительные мощности больше. А сами по себе нейросети фундаментально не изменились, это вс то же самое вычисление расстояний и перемножение матриц.
585 2975866
>>2975675

>Как только появляется обратная связь, так, в принципе, появлятся возможность самообучения.


В существующих реалиях это ведёт к почти мгновенному вырождению сетей. Так что, это не то самое самообучение, как школотрон сидит и дрочит географию в 5 классе. Нейронки не могут обучаться на собственных результатах бесконечно, это их убивает, потому что результаты приблизительные, а получающиеся на их основе результаты всё более приблизительные. Нужно постоянное вмешательство человека для правок.
586 2975909
>>2975850
То есть, как джангу не крути, всё равно любое правильное решение с таймерами подразумевает запуск планировщика на сервере отдельным, параллельным с джангой процессом, так?
587 2975944
>>2975909
А как ты себе это иначе представляешь? Это в любом случае будет какой-то параллельный процесс
588 2975954
>>2975760
не читай говно мамонта. возьми норм книги для людей, а не обезьян
589 2975969
>>2975944
Понял, принял.
Я честно думал, что можно запускать сторонний сриптец прям из джанги и во время работы джанги, например, когда нагрузки по запросам на сервант нет, типа как в многопоточности или типа того. Таймер сработал, задача выставлена в стек, как только свободно - исполнилось, как то так. Гуглил, спрашивал умную железяку, а везде селери и кроны предлагаются.
Вот и зашел уточнить.
590 2976001
>>2975969
А у тебя не очень хорошо с пониманием как всё это работает, да?
591 2976004
>>2975954

>возьми норм книги для людей


Например?
image.png285 Кб, 1126x539
592 2976028
>>2976001
Да. Я не отрицаю, возможно это я дебил, но ни в одной вводной лекции, которые я смотрел, я так и не врубился глубоко и до конца в эти схемы. Интуитивно то я догоняю примерно, как взаимодействуют модели с вьюхами и шаблонами, но в целом полностью всю картину сам не объясню.
А уж из таких книг, как например "Джанго 4 в примерах" я вообще нихуя не понимаю.
Кстати, анон >>2976004 не читай джанго 4 в примерах. Ищи дальше.
593 2976044
>>2976004
пайтон к вершинам мастерства
image.png987 Кб, 650x708
594 2976052
Чисто по чесноку, все ли в этом тредике технари, согласно пика?
Лично я гуманитарий.
595 2976073
>>2975954
Вообще-то эту книгу написал легендарный Сэджвик, автор книги по алгоритмам.
596 2976090
>>2976073
а толку от нее если она устарела чуть менее чем полностью.
597 2976091
>>2976028
поищи норм лекции архитектурные.
598 2976092
>>2976090
Что там устарело?
599 2976153
>>2975866

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


Человек тоже не может. Школьник дрочит географию по учебнику. И математику. Запри его в камере-одиночке без книг и общения и посмотри, что будет. Много ли он новых знаний откроет, хотя бы в математике, которая конструктивна? Скорее всего на выходе ничего полезного не будет. Крыша съедет с катушек и всё. Потому что точно так же нет подкрепления.

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

>>2975861

>У нас, как минимум, есть память, которая нейронкой не является.


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

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

Вся сложность конструирования нейросетей в том, чтобы их обучить потом. И в человеке не нулевая сеть с нуля обучается, а от рождения там уже очень сложная структура заложена, предварительно обученная.
600 2976222
>>2975229

>проблемой согласования.


>Научпоп, который объясняет на пальцах:


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

>не научпоп, а инфоцыганщина


А это не одно ли и то же?

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

>>2975944

>Это в любом случае будет какой-то параллельный процесс


Но в чём тогда соль прикручивания конкретно к джанге, если я вообще любым планировщиком могу запускать скрипты? Типа использование единой ОРМ, если скрипт с базой работает?
602 2976314
>>2976254
Не, научпоп это какой-нибудь Карл Саган, ученый, который задорно рассказывает про предмет своего знания или смежного, чтобы заинтересовать детей. А часовое видео выше от гопника - намешанная со всех краев интернета ведро помоев, сборник мемсов и старшилок с нулевой ценностью. Даже с отрицательной ценностью - потому что плодит невежество.
603 2976370
>>2976092
все
604 2976373
>>2976254
ну если у тебя джанга то mvc очевидно.
605 2976535
>>2976370
Ты даже не открывал эту книгу, чел.
606 2976657
>>2976254

> Но в чём тогда соль прикручивания конкретно к джанге


Люди привыкли что в джанге все из коробки. Скоро начнут просить чтоб была джанга-докер, джанга-линукс, джанга-компьютер, джанга-интернет, б-же упаси.
Просто надо сделать модуль с __main__.py, включи туда while True, обвешай ексепшонами и прикрути таймеры ожидания и перезапуска. Вот тебе крон
607 2976731
>>2976535
и не надо. если она 15ого года то открывать уже нельзя.
706.jpg39 Кб, 600x652
608 2976737
Как правильней вытянуть инфу с сайта через реквестс, если он всякое говно подгружает через жаваскрипт и прочие фреймы?
Понятно что можно через селениум и подобное но не вариант.
609 2976775
>>2976737
Через консоль браузера находишь урлы с нужной тебе инфой и тянешь через реквестс.
610 2976867
Как же горит пукан от красноглазых осей. Ну открыл я crontab -e, ну прописал:
* echo "hello world" >> /home/<Я>/tmp
ну сохранил.
Дальше что? Нихуя не происходит.
ТООЧНО не надо запускать никакого демона? Буквально во всех гайдах больше нихуя не говорится, у всех всё заебись после этого, у меня же файл пустой, хоть сколько жди.
Система сама должна крон этот запускать при старте? Не надо добавлять крона в системд никакой? Может это потому что у меня убунта из-под wsl? Вот буквально каждая встреча с линуксами в любом виде - гемор.
Бомбиииит
image.png28 Кб, 702x313
611 2976873
>>2976737
Нулевое - поищи официальный апи, если нет:
Первое - исследуй запросы как на пике, если нет:
второе - ищи джейсон в самых длинных строках возвращаемого хтмл (либо прям в js файлах), суть в том, что бы найти джейсончики вкусные, если нет:
(ты тут) бьютифулсупом разбираешь хтмл, если нет:
селениум.
612 2976898
>>2976867
и чо за кал ты там прописал то епта?
где время когда оно должно запускаться?
613 2976899
>>2976898
* - каждую минуту, ёпта

>>2976737
Читай короче это, мне в своё время помогло
https://habr.com/ru/articles/579336/
614 2976902
>>2976898
Блять. Это я в первом посте не дописал. На самом деле у меня так
* echo "hello world" >> /home/<Я>/tmp
615 2976903
Сука. двощ пять звезд схлопывает в одну!!!
616 2976907
>>2976899

>> - каждую минуту, ёпта


нет. нормально опиши время всеми звездочками
/path/to/php /var/www/html/a.php
617 2976910
>>2976902
ебаная макака надеюсь он помрет от рака. куда звездочки деваются из постов

>> * /path/to/php /var/www/html/a.php

618 2976911
IMG20231225153626.jpg335 Кб, 2340x1080
619 2976917
>>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
620 2976918
Короче, если спокойно выдохнуть, у меня там так:
звездочка звездочка звездочка звездочка звездочка echo "hello world" >> /home/<Я>/tmp
Я же не совсем еблан. Я грешу на wsl, в нормальной оси наверное это работает
621 2976923
>>2976918

> Короче, если спокойно выдохнуть, у меня там так:


> звездочка звездочка звездочка звездочка звездочка echo "hello world" >> /home/<Я>/tmp


> Я же не совсем еблан. Я грешу на wsl, в нормальной оси наверное это работает


смотри логи: journalctl -u cron
622 2976998
>>2976923
Как я и думал.
cron is not running
sudo service cron start
Starting periodic command scheduler cron
В всл крон по умолчанию не стартует с системой
623 2977043
Ну что же, анонсы, иду на фуллстек. Осталось раздуплить правильный деплой, переделать весь свой зоопарк консольных парсеров в красивую джангу с бесконечным скроллом и прочими шлюхами и будет у меня неебическое портфолио на показ.
Потом всего то понюхвть залупу на хэдхантере, огорчиться от предлагаемых зарплат и продать жопу за дёшево в это ваше ойти наносековое.
624 2977049
>>2972418
Как выяснилось через алхимию к этому дерьму не приконнектиться. Лучше не выебываться и спользовать стандартный psycopg / asyncpg
625 2977050
Аноны, exitcode приложения может быть отрицательным числом?
626 2977055
>>2977050
-1 (всё хуёво) например
627 2977262
>>2977050
Либо 0 либо положительные числа.
628 2977265
>>2977055
Чат-гпт ты? Опять в штаны срешь?

>>2977262
Спс, всё так.
629 2977369
>>2975855
С точки зрения синтаксиса -- да. Еще разница между statement/function в том что когда принт -- функция его можно использовать в составе выражений например вставлять принт в лямду y = lambda x: print(x) or (x + 1) пользы от этого никакой один вред а когда оператор (statement) то только писать отдельной строкой.
630 2977404
>>2977262

>Либо 0 либо положительные числа


в винде можно отрицательные, в линуксах же 0-255
631 2977408
>>2977404
Винда? Ты имеешь ввиду сперму? Оставь это говно для сишарп аутистов
632 2977411
>>2977369
print как оператор-statement это из второго питона. Не нужно лезть во второй питон, есть более полезные занятия.

also, во втором питоне была возможность сделать
from __future__ import print_function
и использовать print как функцию, точно так же, как в третьем питоне
633 2977418
>>2977404
В документации 0-127

> Most systems require it to be in the range 0–127, and produce undefined results otherwise.

634 2977433
>>2977404
Пробовал только что в винде вернуть -2 - нельзя.
635 2977435
Охуеть. Открытие века. Оказывается один и тот же manage.py можно юзать в двух разных процессах. Один вращает сервак с вьюхами и темплейтами, второй подбрасывает дровишки в базу через тот же орм, который и вьюха использует для показа шаблонов. А я прям не знал.
636 2977476
>>2977050
Ты типа положительные все уже исчерпал?
637 2977480
>>2977435
Не устаю кекать с открытий вкатусика.
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 выставлено
639 2977563
>>2975944
Нет, не в любом случае.
Например, в джаваскрипте нет многопоточности, а таймеры - есть, и асинхронность есть.
Выражение "эвент луп" тебе о чём-нибудь говорит?

>>2975794

>если я ебану бесконечный цикл с time.sleep() прям во вьюхе?


За такое пиздят, вообще-то.
640 2977570
>>2977480
Главное не говорить ему об официальной документации
641 2977629
>>2977570
Может мы разные документации читаем?
Я вот эту и так с ходу такое (один и тот же manage.py можно юзать в двух разных процессах) там в глаза не бросается.
643 2977656
>>2977492
Покажи код, чучело. Экстрасенсы в отпуске уже.
646 2977710
647 2977720
>>2977696
Там нет ни слова про то ,что один и тот же manage.py использовать можно.
Там максимум, что есть, это "для запуска автономных сценариев или сценариев, которые периодически выполняются из crontab UNIX или"
Но это я и так знал и запускать кроном вообще любую хуйню можно, не обазательно джанговскую.
648 2977722
Это важно, потому что раньше у меня было совсем по-еблански: так и висело два процесса параллельно, но один через скуэл алхеми загонял данные парсера в базу, а второй с помощью орм джанги их показывал. А теперь можно два раза не писать модели под две разные орм =)
649 2977724
>>2977720

тренируй свои когнитивные способности) тебе дают ручку выполнения команд - априори понятно что ты сколько угодно команд можешь запустить.
650 2977727
>>2977724
Так вот я чисто методом бараньего тыка и сделал открытие своё)
651 2977734
>>2977705
начнём с того, что отлавливать исключения внутри транзакций моветон (читай доку по транзакциям).

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

сохранение данных у тебя на последней строке - там ты не отлавливаешь ничего... перемудрил ты
652 2977744
>>2977734
Ценно.
Завтра разберу на свежую голову.
Спасибо.
653 2977762
>>2977435

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

654 2977775
>>2977762
Сдуру то можно и хуй сломать
655 2977789
>>2977563

> джанго


> евентлуп


Чел..
1703563749431.mp41,7 Мб, mp4,
1080x1920, 0:07
656 2977843
657 2977931
>>2977705
Наблюдаю типичную ошибку вкатыша: сделать все кРаСиВо и по ОоП)) вместо того, чтобы получить рабочий код. В итоге накостылял хуйни и сам себе насрал в портки.
Запомни, сына: сначала код, потом тесты, потом наводишь красоту. Когда наберешься опыта, код и тесты поменяешь в очередности.
658 2978051
>>2977931

>код и тесты поменяешь в очередности


То есть БАТЯ у нас сейчас пишет сначала тесты, а уже потом сам код?

>по ОоП


Это требования к командам на джанго. Ты джангу открывал вообще?
659 2978061
>>2978051

>БАТЯ у нас сейчас пишет сначала тесты, а уже потом сам код


Ты охуеешь, но да.

>Это требования к командам на джанго


Давай показывай, где джанга требует заворачивать простые функции в совершенно бесполезные классы без init.
660 2978097
>>2978061
Отъебись, ты не продуктивен. Вчера анон это же самое нормально объяснил, а ты высрался и доволен
661 2978163
Разработка тестов занимает больше времени чем рабочий код. Поэтому некоторые делают его в первую очередь.
662 2978166
>>2978097

>пук

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
Screenshot2023-12-26-14-55-12-6950ecd26a21c2c56ce608de5e94733463.jpg491 Кб, 984x1360
664 2978294
>>2978261
доку читай. get_or_create ты неправильно используешь - смотри исходный код хелпера (обрати внимание на именованный аргумент defaults). в текущем варианте, при малейшем изменении любого поля (например описание изменили) - ты получишь ошибку, т.к. pk уже есть.

по поводу пидорства - сравни коннитивную сложность текущей пасты и предыдущей. избыточная сложность - результат преждевременных оптимизаций. как писал анон выше, сделай рабочий вариант, напиши тесты, потом уже рефакторь по реальной необходимости.
665 2978668
Всё. Я понял про исключения в транзакциях. Вот этот дядька внятно объяснил и показал, чем это "череповато" и как делать вообще Эльфварями
https://www.youtube.com/watch?v=u2t1aLYu2QU
666 2978789

>спрашивать у гопоты


>спрашивать на анонимном форуме


>смотреть видосы инфоцыганина


И все это ради того, чтобы не читать документацию и не смотреть исходники. Я ебал.
667 2978838
>>2978789

>читать документацию


Я прочитал документацию и нихуя не понял, инфоцыган объяснил на пальцах и я раздуплил.

>смотреть исходники


Какие, где?
668 2978845
>>2978838
Правкой кнопкой на метод - го ту дефинишон
669 2978848
>>2978668
>>2978294
ну вообще этот тип 20+ минут рассказывал то, что написано в первом абзаце
image.png48 Кб, 769x379
670 2978865
>>2978845
Йоообоный рот этого казино, я конечно дико извиняюсь, но я такое впервые вижу. Это что, абстракция? Как увидеть саму реализацию то?
671 2978873
Вы чё, в натуре в этот низкий уровень лазиите? Смысл слова фрэймворк поясните тогда
672 2978879
>>2978865
это стабы. в джанго их нет, так что скорее всего твоя идешечка их подсунула. держу за тебя кулаки анон - ты справишься и станешь чуточку лучше!
673 2978895
>>2978879
Да я как это увидел, захотел обратно в сисадминство
674 2978898
>>2978873 многоточие это модная хуйня вместо pass. Ищи реализацию этих методов
1673305794.jpg196 Кб, 1280x720
675 2978918
Я не понимаю, я скачал и почему то нихуя не знаю как работает, куда тыкать то блять?
OIG (1).jpg207 Кб, 1024x1024
676 2979028
>>2978918
Ах ты, блядский ёптарь, ты типа скачал чего-то и хуй понимаешь, как это работает? Ну, и правильно, брат, что тебе такое довелось скачать, что даже начать не можешь. Слушай сюда, ебаный олух: у тебя наверное голова полная говна, если скачал не зная, что делать дальше. Вон, там на экране есть кнопочка «СТАРТ», нажми блять на нее и посмотри, что произойдет. Может тогда раздуплишься, а может и нет, я же не вижу уровень твоей долбоёбности.
01b43a754453374e94319e667c6a84ae33ad29b9.jpeg245 Кб, 1024x768
677 2979042
>>2979028
Для начала я хорошенько так посплю, а когда проснусь и нажму кнопку старт, ПОЛНОСТЬЮ тебя уничтожу
678 2979065
>>2979028

>«СТАРТ»


«ПУСК» же, ну
679 2979069
>>2978898
оно ваще не вместо pass. это многоточие называется ellipsis и значения обычно "будет доптсано" или "детали упущены"

>>> type(...)


<class 'ellipsis'>
680 2979078
>>2979069
... - всё же элегантнее, чем в других языках

Шалун - кун
681 2979080
Блять, макака, что за подставы))) Огласите весь список стоп-слов, я второй раз уже попадаюсь
682 2979081
>>2978895
Да, с этими "улучшениями" Мишура превращается из приятного языка в какую-то хуйню.

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

лично я стараюсь типизировать всё - так крепче сплю.
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
685 2979120
>>2979081
ебать ты хитрожопый, братишка, хочешь один раз научиться и писать всю жизнь одинаковый код? Нихуя так не получится, все нормальные языки развивают синтаксис (кроме яхве наверно) и от тебя требуют того же, развития и работы головой
686 2979138
>>2979120
Вот я и работаю головой - пишу на д'жаве.

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

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

>тебя никто не заставляет пользоваться типами - они опциональны


Да, вот только в 2k24 в нормальных конторах тебя обоссут за код без типов.
688 2979548
>>2978163

>Белый Медведьотка тестов занимает больше времени чем рабочий код. Поэтому некоторые делают его в первую очередь.


имхо скорее для того, чтобы лучше понимать, что тебе нужно, какие особые ситуации возможны, что с ними делать
689 2979631
Это, парни, а где можно свои джанго микро-говно-поделки задеплоить на халяву?
Пайтонэнивэр - много анальных запретов, к примеру парсер ютуба низя.
Гитпэйджес - вообще джангу или что то динамичное низя.
690 2979671
>>2979631
Покупай дешёвый vps, рублей за 200
691 2979686
>>2979631

>на халяву


localhost
692 2979895
>>2979686

>localhost


Это самое пиздатое, что я юзал, но есть один моментик. Я иногда, особенно на ночь, люблю выключать свою пекарню.
693 2979932
>>2979895
Придется плотить за vps, либо изменить своим привычкам.
image.png704 Кб, 650x504
694 2980046
>>2979932
Аааа, ебись оно конём! Уговорили, так и быть, позолочу евреям ручку за it-единицы. А есть за 200 целковых что б всю хуйню сразу туда зарядить и ботов всех и лендинги и может еще и с видюхой, вчто б нейронки вращать у вас на примете?
695 2980104
>>2980046
Конечно есть.
696 2980163
>>2980104
Во! 👍
697 2980455
Кто нибудь из третда вкатился в ит на петоне и жанге? Как вы победили в конкурсе 666 откликов на место? Про такие истории успеха надо книги писать от кернигана и киесаки
698 2980488
>>2980046
за 200 ты разве что зоопарк на докере в 2гб памяти развернешь, ни о каких Голубой Огонёк мощностях речи идти не может, это совсем другая история
699 2980739
Аноны, я только учусь и запутался в синтаксисе.
Подскажите, вот в модели пайдантика например для реквест схемы чем отличается

class xxx():
id: str
name: str

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

None это типа Optional параметр? А в чемтогда отличие от id: Optional[str]?
700 2980740
>>2980739
Дай угадаю, на скиллбокс деняк нет?
701 2980743
>>2980740
Не совсем не верю в инфоцыганские курсы.
702 2980744
>>2980743
Не верь дальше, удачи быть безработным, протянут тебя либо курсы, либо образование, а этого всего у тебя нет
703 2980747
>>2980739

>id: str = None


Это что за язык? Впервые такое вижу. Это в каких то последних релизах добавили явную типизацию?

>id: str


А нахуя объявлять то, что не имеет никакого значения?

>id: Optional[str]


Блять, аноны, что происходит? Макака удалила что то опять или так кто то где то пишет? Мне страшно, что я что то проебал.
704 2980765
>>2980739
Если сверху написать @dataclass то в первом случае оно будет требовать обязательно два параметра в инициализаторе во вoтором случае будет по умолчанию None.
Отличий от Optional[str] никаких, pytype срёт на optional и разрешает None почти везде, потому что таково Весело на утренникее наследство питона и если начать строго запрещать None то отваливается половина стандартной библиотеки.
изображение.png16 Кб, 288x110
705 2980800
>>2980739
пудантика полные штаны бля)))
(версия 2.5.2)
хуй его знает почему он это позволяет, игнорирует тип дефолта
706 2980900
>>2980800
Зато none заставляет указывать тварина
707 2980902
708 2980911
>>2980800
Питону на самом деле абсолютли поебать на тип который ты там пишешь, это нужно чисто для удобства, если там где-то не выполняется явная проверка типа
709 2980920
>>2980911
Это.
Потому что это для красоты, для глаз. Что бы лично ты не забыл, что там за тип.
>>2980900
Питон тебе говорит "нахуя ты объявляешь переменную, которая не имеет никакого значения? Когда реально понадобится переменная, тогда и значение её будешь знать. По значению я и тип определю, а то что ты там после двоеточия написал, так это ты для себя пометочку сделал на полях, кожаный мешок с дырявой памятью"
structure.png26 Кб, 271x378
710 2980936
Мне нужен ПОЛНЫЙ гайд по пакетам и структуре проекта в пайтоне. Я уже битый час гуглю какую-то хуйню, которую я, по-моему, вообще не должен гуглить. Я вроде бы не вчера в программирование вкатился, но это первый ЯП, где так трудно найти однозначный ответ на КАК СУКА СДЕЛАТЬ ПРАВИЛЬНО.

В чём вообще проблема. Сейчас у меня есть примерно следующее (пик). Мне похуй, как сделать, мне просто нужен ответ, как в пайтоне делать правильней всего, чтобы всё работало и не нужны были никакие хаки, и я так и буду делать. Пока что всё выглядит так, как будто в обоссаном бидоне за 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, я уже совершенно перестал понимать, как всё это говно должно работать.
711 2980961
>>2980747
Это для фастапи, в нем есть вшитый pydantic.

>А нахуя объявлять то, что не имеет никакого значения?


Это модель данных, при реквесте с фронта эта моделька тебе провалидирует, что все значения прилетели именно того типа, на который вы договорились в протоколе. Аналогично можно задать модельку на респонс.
712 2980965
>>2980920
Нет не так. Такое поведение только во втором пидантике появилось и из-за этого Тулуп сгорела не только у меня. Если писать что-то вроде
name: str = None
было вполне ок, то со второй версией надо делать так
name: str | None = None
Какой-то пиздец. Особенно калит что теперь надо делать вот так
id: str | int
Иначе будет факап если придёт не то что надо.
713 2980986
>>2980961
Что первее-выгоднее учить, фастапи или джангу?
714 2980994
>>2980986
Джанга объемнее, фастапи очень простое
715 2981028
>>2980994
Сорян за тупые вопросы
К фастапи нужно еще что то? Я почему то думаю, что фастапи - это что то типа drf. Что годного можно запилить на одном лишь фастапи? На работу можно претенодвать зная лишь фастапи, но твёрдо и чётко?
716 2981052
>>2981028
Фастапи больше про async, т.е надо знать асинхронность, иначе смысла от него не будет. Сам по себе фреймворк несложный.
Я лично не использую пидантик модели и его опендок, сразу отрубаю. Явно валидирую данные через реквест.

Ну и ещё у него есть приколдесы которые кочуют из старлета, т.к он по сути и есть старлет. Сам же фастапи в исходниках сделан довольно кринжово, он на слуху потому что подразумевается что если челик знает фастапи, то он знает и асинхронность. Последнее наиболее важно для веб сервисов.
717 2981075
>>2981052
Я конечно глубоко еще не лазил, но по диагонали читанул. На сколько я понял, если пилить что то асинхронное в джанге, то там это на более высоком уровне и шаблонно. Т.е. в джанге можно обмазаться асинхронностью, которая будет реально работать, и будет контролируема на высоком уровне, но как оно работает на чуть более низком уровне (всякие там оборачивания циклов, ебля с корутинами и т.д.), можно не вникать.
Если исключить чисто фактор "фу бля, знать надо всё, недоБелый Медведь ты ёбаный", я правильно догадываюсь или заблуждаюсь?
718 2981086
>>2981075
В джанге нет асинхронности насколько я помню
719 2981124
>>2980800
С кем я в одном треде сижу, просто пиздец
720 2981162
>>2980936

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


Заўсёды. Бяз іх, importlib спачатку шукае файл з дадзенай назвай у бягучым дырэкторыі, а потым шукае паддырэкторыю з такой назвай.
721 2981171
>>2980936

>я запускаю pytest ыз этой жа коґенной дэґектоґые.


Відавочна, запускаеш бяз актывацыі асяроддзя.
722 2981178
🤣
723 2981190
>>2980936
Чё там знать-то. В __init__.py обычно пишутся импорты для удобства. Эта штука всё ещё нужна даже если пустая, я хз почему пишут что не можно не использовать. А ещё обычно там же пишут переменную __all__ = [] куда дописываются сами импорты для удобства ["pkg1", "pkg2"] например, помимо собственно самого импорта через import.

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

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

Всё остальное редко используется.
724 2981204
ПЕРЕКАТ ПЕРЕКАТ ПЕРЕКАТ ПЕРЕКАТ

>>2981203 (OP)
>>2981203 (OP)
>>2981203 (OP)
725 2981929
>>2981190
Ну и как твой пост решает мою проблему? Правильно, никак.
726 2981956
>>2981929
Вот теперь сам думай что не так
727 2982703
728 2988168
Объясните нубу, в какой-то момент писание хеллоу ворлдов и задач в духе "зделойте функцию шифр цезаря" в написание реальных сайтов и веб-бэкенда? Я не могу нащупать границу, как вкатываться-то.
729 2988174
>>2988168
просто делай что-нить ценное и конкретное
730 2988204
>>2988168
Эти задачи закаляют тебя не только в синтаксисе, но и в алгоритмах. А к бэкенду не имеют отношения, да. Пилю тебе вариант роадмапа.
Анон выше написал, пили полезное. Я добавлю для твоего уровня: начни пилить полезное конкретно для себя.
Вот смотри, я пришел с работы, обложился хрючевом свежайшим и начинаю перерывать тонны сайтов, групп, плейлистов, рутрекер, ютуб... что бы посмотреть под хрючево, а хрючево стынет.
Значит что? Правильно, надо писать своё приложение, в котором всё это будет сосредоточено. Одностраничник с сылками на годноту. Но! что бы что то выводить, надо что то спарсить - вот тебе и вырисовывается парсер ютуба. Да такой, который отслеживает появление новых, недавно появившихся серий в плейлисте. Значит что? Нужна база данных, с одной таблицей, которая будет хранить ссылки на плейлисты, которые ты конкретно зарядил на отслеживание и плюс таблица, в которой хранятся результаты. Парсер берет из базы адрес, парсит, если есть что то новое - добавляет в таблицу с результатами. Ну а к этому всему мордочку покрасивше. Вот и получается простейший джанго проект с ОРМ на борту. Потом можно прикрутить авторизацию и приложение будет работать не только на тебя, но и на твою тню, у неё то другие предпочтения. В общем допиливать это можно до бесконечности, но суть одна: парсер - база - морда. Полезно, наглядно, интересно, смерть, смерть, кладбище, пидор, заебись, чётко.
731 2988239
>>2988204
Ты мне напомнил, что я хотел сделать свою рулетку сайтов когда-то давно. Спасибо за совет, буду делоть, твоя идея прикольная. Главное раздуплиться какой-то рабочий процесс-то вообще, просто я до сих пор как школьник на уроке информатики, решаю задачи какие-то и функции изучаю.
732 2988240
>>2988239
рулетку фильмов на просмотр на вечер*
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))

Последний способ ошибок не выдал, но результаты функции появились не в нужное время, а только после остановки программы
image.png22 Кб, 810x184
734 2988891
Почему не подключается класс серчхедлайн?
В модуле он есть, но почему-то вс код пишет что типа такого не существует. Помогите, а в коде пишет что тип не используется ещё
735 2988933
>>2988891
вот этот класс, но подключаться не хочет, другие классы из этого модуля подключаются
736 2988937
>>2988933
два раза написал думал может вс код тупо не видит 274 строчки, ставил и вперед и назад и два раза и один раз писал. крч не хочет вскод видеть этот класс
737 2989845
Как цикл for работает? Какие требования накладываются на объект, чтобы по нему можно было итерироваться?
738 2990232
>>2989845

>Какие требования


iterable
739 2991219
Аноны, у меня есть вот такой класс.

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

out = Test()
Что изменить внутри класса, чтобы "out" был списком "lst".
Изменения можно вносить только в тело класса.
740 2991244
>>2991219
В общем суть такова что немного потыкавшись получилось всё сделать изменив метод new таким образом.

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

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

2) Можете пояснить к чему обращается super()? Класс же не наследуется.
741 2991257
>>2991219
>>2991244

1. создай объект на базе своего класса, у этого объекта вызови метод этого класса, а этот метод уже будет что то возвращать
2. был перекат давно
2024-01-08 130757-Mu 1.1.1 - sphere.py.jpg110 Кб, 866x855
742 2993192
wtf
743 2993325
>>2993192
кавычку закрой. у тебя строка не закрыта, т.к. кавычка - экранированная (\”)
image.png100 Кб, 816x378
744 2993517
Как мне использовать капиталайз в функции? В си я бы указал string name и мне бы подсветило что можно использовать его, а т.к в питоне этого не пишут программа не знает что я туда отправлю и не хочет применять к name капиталайз.
745 2994604
народ, у меня проблема:
есть питоновский файл, который надо сделать exe файлом. pyinstaller вроде как справляется, но я использую библиотеку speech_recognizer и он ее найти не может. уже все перепробовал, но не ебу че делать. подскажите
746 2995046
>>2993325
:*
ты умный
747 2996354
Как устроится на работу с джанго питоном? :(
748 2997169
>>2996354
Когда вся твоя жизнь крутится вокруг одного инструмента, ты устареваешь вместе с инструментом. И становишься не нужным вместе с не нужным инструментом. Ты же — приложение к инструменту, не наоборот.
749 2997729
>>2997169
Когда вся твоя жизнь крутится вокруг нескольих инструментов, ты устареваешь вместе с инструментами. И становишься не нужным вместе с не нужнымы инструментами. Ты же — приложение к инструментам, не наоборот.
image.png115 Кб, 859x1023
750 3002539
Анон, давно я на питоне не писал и вообще давно не кодил. Пишу консольную хуитку, которая спрашивает через меню опции для ффмпега и потом с этими опциями запускает конвертацию. Написал эту залупу на бат - тот ещё блядь экспириенс. Вот решил переписать на нормальном языке и повылазили нюансы. В прицнипе, контекст то не сильно важен.
Вопрос вот какой. Если юзер вводит не такой ответ, как ожидается, то ему снова выводится тот же запрос ввода вызовом текущей функции. То есть функция вызывает сама себя. Я правильно помню что это приводит к созданию новых и новых уровней вложения и однажды нам питон скажет идти нахуй?
Внимание на 27-29, 31-32.

Я знаю что на самом деле меню пишут через while true. Перепишу. Просто начал делать "как помню" чтобы немного восстановить знания. Реально ВСЁ забыл. И да, код говно. И тема в пайчарме белая. Короче, не ебите мозги, посто ответьте конкретно про вложенность. От этого кода не останется нихуя всё равно.
751 3002692
>>3002539
Не вложенность, а количество экземпляров. Да, в какой-то момент все взорвется.
coolstory (2).jpg10 Кб, 300x196
752 3002842
>>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!?
Блять, какие-то отсылки к паскалю, с, вот эта хуйня работает не так как в паскале, там итерации хуё моё, прогрессии. Сука это для кого нахуй написано вообще?
Блять я пиздец походу тупой или написан ваш учебник максимально ебано.
Есть нахуй для совсем долбоёбов пояснения? Ну типа, вот это вот то, это вот это.
А не так что, мол, вот есть такой цикл и там бац хуй пойми что понаписали чего я до этого вообще не видел нахуй. Бля жопа сгорела сорян за стену текста.
753 3002907
>>3002842
Какой-то хуй на ютубе сделал типа "гайд" по этому. Тупо передрал и рассказал тоже самое что написано, но нихуя не объяснил.
В комментах пояснили, что w это переменная, которая принимает значение элемента списка каждую итерацию цикла. И её можно подписать как угодно.
Ну так стало понятно хотя бы.
Бля, если так и дальше пойдёт то это совсем потужно будет что-то выучить. Нихуя ж не объясняют пидорасы, как будто по умолчанию я должен всё это уже знать нахуй.
754 3003116
>>3002692
Спасибо.
755 3003851
Аноны, тыщу лет ничего не писал на питоне (да и дальше не сильно собираюсь, тыкал из интереса просто), но тут для нашей конфы понадобился бот и я загорелся написать, смотрю туториал, и такая хуйня не гуглится, весь синтаксис переебали? Или что это заходы с двоеточий? Такое чет даже не гуглится особо, ну или я не понял как это загуглить.
image.png81 Кб, 604x305
756 3003876
>>3003851
И дальше такая же еботека, он делает что-то типа строгой типизации в конце, или нахуя эти username : str в конце тут, вообще не помню такой ебанины когда изучал
757 3003912
>>3003876
>>3003851
Ну я типа такой же дундук как и ты и я делал бота на питоне. Библиотека ёбнутая потому что апи ёбнутая, документация ёбнутая и мне бы сейчас не хватило энтузиазма на это говно. Лучше собирай из кусков со стак оферфлоу чем ебаться с этим говном. Алсо автор либы емнип ныл что заебался переделывать библиотеку под изменения апи.
758 3006151
Есть ли на данный момент работающая библиотека для создания селфботов (ботов через аккаунт пользовател) для дискорда? discord.py, кажется, выпилил их поддержку, пишет, что неправильный токен.
Его форк discord.py-self вызывает ошибку при инициализации. Нашёл фикс, но вызывается уже другая ошибка.
selfcord похоже и вовсе давно заброшен
759 3007347
Можно ли написать такого бота для телеги, чтобы поместить его в большой чат и он мог его читать? Нужно, чтобы он пересылал мне сообщения с ключевыми словами.
Владелец чата не я. Есть ли у телеги ограничения, которые не позволят мне это сделать? Или может ли меня пидорнуть модерация? Можно ли тогда сделать бота через аккаунт?
image.png7 Кб, 449x64
760 3007659
Господа, помогите, пожалуйста. Как замокать file.read в пикриле? Будь это не через asyncio, хватило бы unittest.mock.mock_open, но тут его реализация чет совсем не годится.
761 3007807
>>3007347
Через юзербота возможно реализовать.
762 3008933
>>3007807
Спасибо, анон.
763 3010681
Пишу скрипты в VS Code, в нем они работают, но через командную строку ничего не запускается. Path прописал, пытался запускать файлы из папки питона - ничего. Никаких ошибок, просто ничего не происходит. Куда копать?
764 3010700
>>3010681
Не знаю что произошло, но оно само как-то починилось. При этом экзешники созданные с помощью pyinstaller все так же не работают. Куда в этом случае копать?)
765 3016116
766 3016132
Как рулить?
767 3024138
Собираюсь устроиться на работу, там как раз ищут стажера-питониста. Но даже для такого пишут что устроят тестирование, по основам и ООП. Пиздец волнуюсь, делал много задач по учебникам, но никогда не зубрил полностью, полагаясь на то что всегда в интернетах смогу взять быстро уточнить написание кода, если что-то вылетело из головы. Тестирование вроде будет в онлайн формате, но я хз можно ли будет там быстро пользоваться шпаргалками. Что вообще могут спрашивать в формате "основы + ООП"? Есть где-нибудь хорошие материалы, по которым можно устроить себе проверку?
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
769 3026521
Аноны, как лучше разбивать байтовую строку полученную через сокет?
Реализую байтовый протокол и надо разобрать строку - достать значение первое, второе, а потом, в зависимости от третьего, определённое количество следующих.
Помогите пожалуйста.
770 3026597
>>3026521
Перекатись уже. Там как раз про паттерн-матчинг были ссылки.
ПЕРЕКАТ!!!
>>2981203 (OP)
>>2981203 (OP)
>>2981203 (OP)
771 3027415
>>2933091 (OP)
Привет пихоныч.
Суть - скрипт пихона должен вызывать условный другой скрипт пихона (или экзешник или что угодно) с кредами другого юзера, например run format c:\ admin:admin - УСЛОВНО разумеется.
Так вот рунасы не катят, VBS нашел нужный код, но он вызывает окно и задержку для вбивания кредов напрямую через шелл. дико бесит.
Гугл молчит.
Подскажите какой код можно использовать?

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

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

Помоги двачик, ты не подводил еще. Спасибо тебе.
772 3027462
Посоны а может есть среди нас тимлиды или просто коллеги, кто может внедрить к себе человечка и получать часть его зарплаты. Могу работать, могу не работать, могу делать вид что работаю.
Опыта 5 лет питона/js.
Зп хочу 100 за максимальный 9 часовой рабочий день без переработок и мозгоёбки.
773 3027606
>>3027415
Современные системы чем дальше, тем сильнее огораживаются от таких "приколов", потому что всё, что явно не работает от текущего юзера слишком похоже на атаку.
И, если в линуксе ещё можно было бы что-то обсуждать, то в виндах - найди эксплойт к какой-нибудь дырке (желательно, помеченной как "не будет починено", такие были) и пользуйся им.
774 3028619
Процедурное программирование подразумевает несколько файлов с кодом, или весь код в одном файле ?
775 3028834
Сап аноны, вопрос новичка

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

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

Можете накинуть примеров или ссылок?
776 3029210
>>3028834
if status:
print('1')
777 3029567
Ребзи интересует курс по SAP, где-то можно найти сливы с udemy или подобное?
778 3032127
Анончики, учусь питону и вопрос про профилирование к мастерам:

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

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

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

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

Но может графическое профилирование как то помогает, ускоряет разработку? Или в ином сильно важно? Подскажите пж.
iVXWVMUiixI.jpg7 Кб, 178x129
779 3032594
Прошу помощи с моим говнокодом. Выкакиваются ошибки, но я слишком тупой, чтобы их решить. Если код уродливый — сильно не пинайте.

https://pastebin.com/A8PQ4wCf
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ Заебали тупорылые 780 3032684
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ 781 3032685
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ 782 3032686
‼️‼️‼️‼️‼️‼️ ПЕРЕКАТ ‼️‼️‼️‼️‼️‼️ 783 3032687
784 3032710
>>3032684
Спасибо. Извините.
Тред утонул или удален.
Это копия, сохраненная 9 марта в 13:49.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски