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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Питон тред №149 /python/ 2487129 В конец треда | Веб
Тред, посвящённый языку программирования Питон, #149

Апгрейд шапки после более, чем двух лет застоя
Укрывшись в норах и не выходя на улицу, ждём релиза версии 3.12

Предыдущий: >>2462085 (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 2487136
>>487129 (OP)

>версии 3.12


3.11 конечно
3 2487397
>>487136
пиздец, уже успел в шапку насрать. ты зачем лезешь, если даже скопировать не можешь нормально?
4 2487438
>>487129 (OP)

>а питон развивается.


>изменений в базе.


>интерпретатор PyPy.


>и технологий.


>исходником.


Не шапка, а одна сплошная агрессия
5 2487448
Здравствуйте, аноны. Есть у меня на проекте два файла:
Bot
API

Как мне заимпортить питоновский файл из бота в API? Если указать при импорте .. то он кидает ошибку типа нельзя импортить из родительских модулей. Что делать?
Screenshot2022-10-14-14-44-29-914com.google.android.gm.jpg346 Кб, 1080x2400
6 2488254
Новый тред - новые охуитительные вакансии. Какого хуя? Я вкатиться хочу хоть куда-нибудь!
7 2488274
>>488254
сейсмик норм же
8 2488373
>>488274
Там требуют 1-3 года опыта и высшее образование в информатике. Нихуя не для Джуна.
9 2488453
Анониус, податёся строка - предложение с числом. Надо все числа вывести прописью.

Как решать эту же задачу когда подаётся просто число я знаю. А вот как в предложении это сделать мне неясно. В какую сторону смотреть? На стэковерфлоу ответа не нашёл
10 2488673
>>488453
Регэксп \\d+
11 2488694
>>488373
вот пидоры
Image 250.png55 Кб, 810x885
12 2488795
>>488274
>>488694
Казалось бы причем тут питон?
13 2488989
>>488254
Если составишь резюме с кейвордами, будут уже вакансии по теме, а иначе работай там, куда зовут, тебе ещё не самое плохое предлагают
14 2489011
>>488989
Так это не зовут, а новые вакансии на hh по запросу python junior программист. Вот какого хуя там делает упаковщик товаров в озоне и разнорабочий?
15 2489025
как сделать одну букву нужную мне заглавной? типо a[4]=что
16 2489056
>>489025
a = "".join([a[:4], a[4].upper(), a[5:]])
17 2489073
Можно ли в алхимии задать constraint на длину массива при использовании Column(ARRAY(Integer)) ? Допустим 2
18 2489104
>>489011
Видимо AI смотрит где работали кандидаты, вкатившиеся на Junior, и подсказывает тебе порядок трудоустройства. А ты пытаешься перескочить через ступеньку как с джуна в сеньку.
19 2489139
>>489025

def capitilize_specific(word, letter):
return word.replace(letter, letter.upper())
20 2489156
Всем привет, подскажите пожалуйста, каким образом решается задача, сделал с помощью циклов, но нужно решить с помощью рекурсии, не понимаю как, просто если использовать рекурсию для того, чтобы составить ряд фибо, нужно задать число до которого, выстраивать ряд, а тут получается, что число то заранее не известно
21 2489325
>>487129 (OP)
Господа. Помогите пожалуйста, вы моя последняя надежда, не хотел сюда писать и отвлекать вас, но я не могу уже.
Загружаю цены всех акций из wilshire.
При расчёте, после определённой акции мне выдаёт ошибку: TypeError: 'NoneType' object is not iterable. Я понимаю, что это за ошибка.
Но я не понимаю, почему она появляется.
В моём основном файле 2879 наименований.
Создал тестовый файл с загрузкой 6 акциий на том месте, где выдаёт ошибку. Всё работает как должно.
https://goonlinetools.com/snapshot/code/#chcicgrnhke60wq12fn3wr

первый пик для привлечения внимания

Просто подскажите, почему может появляться такая ошибка? основной файл почти точная копия, единственное отличие это то, что в списке 2879 элементов.
22 2489343
>>489156

fib(1) = 1
fib(2) = 2
fib(n) = fib(n-1) + fib(n-2)
23 2489407
>>489156
Вычисление числа Фибоначчи с помощью рекурсии очень плохая задача, только для понимания того что такое рекурсия. Рекурсивным способом найти число начиная где-то с 40 или 50 уже занимает туеву тучу времени. Там проблема в том что она ещё и двоится, вычисля на каждом шаге то что уже было вычисленно на предыдущем в пустую забивая стек.
Сделал с помощью циклов и держись этого. Скажи своему тьютору что вычисление фибоначи рекурсией неэффективно.
24 2489410
>>489407
н-но ведь м-м-мемоизация....
Image 254.png15 Кб, 751x579
25 2489418
>>489104
Чет с каждым днем рекомендации все пиздецовее и пиздецовее.
26 2489433
>>489407
Можно написать волшебное слово @caсhe перед рекурсивной функцией. Кстати, поясните за cache и lru_cache, всегда ли можно их применять без задней мысли, если нужно кешировать много значений, или лучше самому явно выделять память под нужное?
27 2489492
>>489325
всем спасибо, я сообразил
пользуясь случаем вынужден отметить, что это пиздец
я не программист, но как доходить до таких выводов я вообще не понимаю
просто пальцем в небо ткнул и всё заработало
почему раньше не работало, так и не понял
но теперь всё работает
28 2489691
Аноны, а как вы удерживаете у себя в голове поток мыслей по реализации кода? Поясню, что имею в виду.
Сейчас я рефакторю свои старые сервисы, и почти на каждой функции у меня возникает ебанутый поток мыслей в духе:
1. бля, можно переписать вот так
2. начинаю переписывать
3. стопэ, вот так еще пизже будет
4. начинаю переписывать по-другому
5. о ебать, а вот тут еще можно поменять, ваще охуенно будет
6. начинаю переписывать по-третьему
7. блядь, ниче не работает [вариант оказался тупиковым]. Какие у меня там две предыдущие идеи были? Да хуй знает уже, не помню.

Короче сводится к тому, что я бегу за двумя зайцами и ни одного не ловлю. Как с этим бороться?
29 2489765
Необходимо экспертное мнение https://2ch.hk/b/res/275898634.html#275911508 (М)
30 2489787
>>489691
есть очень простой способ, который большинство программистов почему-то игнорирует - писать комментарии в коде
31 2489838
>>489787

> программистов


*питономакак
слоуфикс
32 2489892
>>489787
Ну комментарий в коде - это когда ты его уже написал и просто оставляешь напоминалку, зачем/как он работает.
33 2489918
>>489892
...
govno
govno
govno
/ #DEBUG: #TODO: здесь можно сделать вот так:
govno2
govno2
govno2
/
govno
govno
...
34 2489919
>>489918
абу спиздил звёздочки

> /


это "слэшзвёздочка", оно же "многострочный комментарий" в нормальных языках. как у вас в педоне комментарии делаются понятия не имею.
35 2489994
Объясните, пожалуйста, двоечнику, почему остаток от деления
10 на -8 будет равен -6? Я спать не могу.
36 2489997
>>489433
Во-первых, lru_cache дополнительно тратит память на, собственно, lru, которые при мемоизации не нужны, во-вторых, принимает далеко не любые аргументы, в-третьих, не чистится, в-четвёртых, сочетание 2 и 3 может приводить к очень неожиданным затратам памяти и де-факто её утечкам (формально это не утечки, просто кэш оставляет ссылку на объект, которую ты потом не уничтожишь, и сборщик мусора его не соберёт).
Так что вывод:
0. если тебе похуй (это скрипт, который отработает и закроется, или задачка на литкоде) - делай смело
1. lru_cache(None) и cache - нахуй
2. lru_cache(size) - для чего-то, что требует запоминать все вызовы (типа алгоритмов - динамического программирования, да того же факториала), он подходит плохо, используй его именно как каш.
37 2490010
>>489994
10 = (-8) × (-2) + (-6)
38 2490020
>>490010
Извини за духоту, но в математике остаток от деления не может быть отрицательным числом, соответственно неполное частное деления 10 на - 8 дб -1, ост. 2?
Или при обработке деления положительного делимого на отрицательный делитель, правила другие? Прости, братец, что время трачу, хочу разобраться.
Аноним 39 2490136
>>489787
лучше переменные нормально называть. Это бэст практиес, когда код понятен и без комментариев. Если так не получается, то лучше выносить документацию в README (которых может быть несколько, если проект большой) либо ещё куда-то, где документцаия хостится
40 2490273
>>490020
(10 - 8) + (-8) = -6
41 2490278
>>490020

>в математике остаток от деления не может быть отрицательным числом


Кто сказал? Мариванна в первом классе? С точки зрения общей алгебры, где целые числа - евклидово кольцо с нормой "модуль числа", отрицательный остаток - вполне нормально, лишь бы по норме был меньше делителя.
Какой определять знак остатка - вопрос соглашения в языке.
1564316213187459444.jpg67 Кб, 604x604
42 2490279
>>489691
Сначала подумай, как хочешь сделать, составь план, потом обдумай ещё, как будешь доволен - пиши. Если по ходу дела начались мысли "а лучше так", можешь их записать, но от первоначального плана не отступай (разве что эти улучшения совсем локальные, но тогда они и в плане не должны быть отражены). Делаешь коммит, потом можешь уже дальше улучшать.

Что за вопросы какие-то странные.
43 2490291
>>490273
>>490278
Разобрался.
Я писал ерунду, одна строка из которой округляет полученные биты по разрядности 8, выглядит это примерно так
bit_round -= bit_round % -8
Проигрался со строкой через цикл и инпут, а потом как мешком по башке, когда ввел значение 10. Давно так не зависал на полдня.
44 2490404
>>489838
А я смотрю ты порвался.
45 2491104
Как этот тег языка правильно вставить в запрос, подскажите пожалуйся. Или хотя бы предположение
46 2491108
>>491104
/v2/tags/ru неверный тег
/v2/tags/language/ru тоже неверно
/v2/tags/', ru и так
47 2491367
Я программер из другой области, хочу освои питон как компетенцию (дада можно не пиздеть что питон инструмент что задачи определяют инструменты и тд итп, вот хочу питон освоить
все). С чего начать - допустим, ясно. Синтаксис хуинтаксис, дата стракчерс и тд, изучено. Куда дальше-то? Я, допустим, фул тайм на другой работе - как мне лучше двинуться не ливая с работы чтобы нарабатывать компетенции максимально близко к потребностям рынка не тратя время на мертвую теорию? Какое-то портфолио начинать делать? Какие-то фриланс задачи пытаться искать или работать забесплатно? Где? (по-моему рано) Какие-то углубленнные курсы брать по каким-то более конкретным прикладным задачам?

Ну и вообще. Куда интересснее/актуальнее податься на питоне - веб, дата майнинг, нейросетки, мобильная разработка? Что вообще сейчас самое топовое по соотношению востребованность/деньги/интерес?

Понимаю, что вопросы выглядят макс зеленью и тупизной, просто хочется хоть какие-то общие направления понять для себя.
48 2491426
Шалом народ, недавно начал изучать питон в вузике как доп обучение, и столкнулся с не особо понятной вещью, буду благодарен за помощь.

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

Я что-то не понимаю как мне это сделать с моей функцией. У меня была идея сделать это как на 2 пике - сделать значение znak '+' по стандарту, а потом в итоговую функцию добавить if - тип если длина списка вводимых символов равна 3 (2 числа и знак) то znak подхватит нужное значение из списка, а если нет то станет стандартным. И всё бы ничего, но программа считает что знака нет, и пишет мне что он не распознан. Как это пофиксить?
49 2491436
>>491426
Дефолтное значение сработает если не передавать третий аргумент вообще. Попробуй просто znak = razvvod[2] if len(razvvod) == 3 else '+'
50 2491454
>>491436
Спасибо!
51 2491524
питурд для игр (3d) подходит?
52 2491535
Хочу ускорить распараллелить запись в сокеты через потоки. Правильно ли я понимаю, что в таргете для максимальной скорости должно быть как можно меньше действий, в идеале - тупо запись в сокет?
53 2491606
>>491426
пацан, никогда не пиши транслитом в коде.
только англ язык.
так всем будет удобнее, и тебе в том числе
54 2491607
>>491524
для скриптов разве что
в симсах по моему на питоне дохуя че завязано
55 2491668
>>491535
Ясно изложи, что тебе нужно, и какой стек ты используешь, ничего не понятно
56 2491785
>>491668
Хочу ускорить io-bound процесс (пишущий в сокеты) с использованием тредов. Правильно ли я понимаю, что из-за gil в дочерних тредах должно быть как можно меньше операций, в идеале - только запись в сокеты?
57 2491826
>>491785

>ускорить io-bound


>использованием тредов


Земля пухом.жпг
58 2491876
>>491785
Скорее всего вот какая история. Твой сокет это TCP соединение. Когда ты пишешь 10 байт в сокет, сразу же эти данные отправляются дальше, идёт один ip пакет с данными, потом сокету надо ждать уведомление о получении и т.п., в общем идёт большой оверхед.

Поэтому лучше побайто не писать, а большими пакетами. Размер данных в одном пакете это примерно 1500 байт, поэтому сильно больше накапливать смысла нет

А ещё ты может сам тесты написать, попробовать отправлять данные блоками разного размера и посмотреть на скорость доставки
59 2491982
Ананасики пожалуйста
Посоветувайте какой стек выучить для работы питонистом?

Знаю немного С, немного сети, немого Python.
Опыта в IT нет, уже несколько лет учу все это
Думаю идти в веб питонист, django и чтото еще учить я не ебу

Но можете предложить что-то другое, критику и советы приветсвую.
Главное посоветуйте пожалуйста, куда мне повернуть, где легче всего будет вкатиться в IT
60 2492002
>>491524
если ты:
а) готов велосипедить велосипеды с нуля по хардкору
б) согласен на самый простяцкий рендеринг
в) готов терпеть не очень высокую производительность

то почему нет? правда это будет в десять раз сложнее, чем разработка на юнити
61 2492038
>>491982
Бамп вопросу
62 2492044
>>491607
WarGayMing использует питухон для скриптов в своих ммошках.
63 2492047
>>492038
И на C и на Python вакансий много. С одного стула потом не пересядешь, так что сначала выбери что тебе больше нравится - ковырять железки или сайтики.
Порог вката примерно одинаковый. На пихоне потолок зепок выше, но там уже нужны скилы к пихону отношение имеющие весьма условное.
64 2492054
>>492047

>Порог вката примерно одинаковый.


Насколько достоверная инфа?
65 2492067
>>492054
Открой хехе.ру да посмотри.
Смотришь статистику - делишь минимальную зепку по языку на количество вакансий. C (15.5), Python (23.7), Javascript (30.8), Java (29.8), C# (88.68), C++ (90.0), Go (116,8) и так далее.
66 2492220
>>492044
у них есть и ммошки какие то?
67 2492328
>>492220
Я имел в виду сессионки про кораблики и танчики. На хехе у них вакухи были, плюс на собесе говорили, что на питухоне у них скрипты для анимации и эффектов (через бинды к движку на цепепе).
чад 68 2492371
Добавлю в тред ссылку на мега доку по тестированию https://www.pylot.me/article/26-osnovi-effektivnogo-testirovaniya-python-programm-v-pytest/
69 2492375
>>492328
а что насчет самолетиков?
может у них питон чтобы данные игроков майнить?
70 2492380
Быстро сказали как в этой дегенеративной хуйне без костылей с помощью стандартной библиотеки извлечь МИЛЛИСЕКУНДЫ из strptime.
Что это за говно ебаное? Я сейчас лопну, сука. Почему можно до всего кроме очевиднейших миллиекунд дойти.
71 2492384
>>492375
Могу только за кораблики сказать. Про метрики они ничего не говорили. В целом там нет лютого дрочилова на с++. Есть и мобилки и web, к скриптовым языкам отношение вполне нормальное.
72 2492395
>>492384
ты работал на них?
73 2492396
>>492380
from datetime import datetime
timestamp = '01:23:45.678'
x = datetime.strptime(timestamp, '%H:%M:%S.%f')
print(x.microsecond // 1000)
74 2492401
>>492396
У меня нет этой хуйни почему-то (3.10.6 питон). По итогу решил костылем.
75 2492404
>>492401
ты time.strptime используешь, а надо datetime.datetime.strptime
76 2492407
>>492404
А. Блять, а я думал почему я не могу обратить datetime.strptime при импорте изначально, что пришлось импортнуть саму функцию. Это пиздец, совсем забыл эту ебанутую вложенность.
77 2492410
>>492407
еще вот так можно:

from datetime import time
timestamp = '01:23:45.678'
x = time.fromisoformat(timestamp)
print(x)
78 2492412
>>492410
В общем благодарю, теперь не чувствую себя обоссаным. Жаль только больше 6 знаков %f не воспринимает и приходится урезать, но думаю это фигня.
79 2492727
А что вообще пишут на этом вашем питоне? Во что можно будет быстро вкатиться кроме веб-разработки и тестирования?
af5894733e70a942d09d8ac29002c6b3.jpg13 Кб, 300x255
80 2492854
Прочитал Грубера SQL, порешал задачки, начал учить питон.

32 лвл лентяй с хуёвым матаном, хочу выбраться из SEO залупы, есть шансы?
81 2492883
>>492727
Сети, админский софт и др. Ещё всякий датасаенс и лёрнинг
82 2493024
Прохожу начальный курс со степика и там прям упор на математику. Анонче, матеша так сильно нужна для кодинга? Мне казалось, что важнее умение работать с базами или фреймворками. На вряд ли меня кто-то попросить высчитывать блять площадь через формулу Герона. Или я не прав?
83 2493046
>>493024
нахуй не нужна, вангую что ты начал проходить курс для дата сатанистов
84 2493049
>>493024
Если это ML/CV, то да. Берём картинку, делаем к ней свёртку с оператором Кэнни/Собеля и получаем наборы рёбер - линии очерка объектов на картинке. По ним восстанавливаем геометрию и вот у тебя уже контура с треугольниками.

Python нынче тесно связан с матешей в сфере RnD.
85 2493059
>>491108
Так тебе в тело надо засунуть, это же пост-запрос.
В пост-запросе data: {"language": "ru"}
86 2493060
>>493059
data =
Фикс.
87 2493064
>>493046
Вот сам курс:
https://stepik.org/course/67/syllabus
Я просто чет заебался высчитывать нужные значения, для решения задачи.
Спасибо, анонче! Я уж думал я ща кончусь на задании с пограмистами!
>>493049
Я пока вкатываюсь в основу, это переменные, динамическая типизация, строки и т.п. база. Но такое кол-во на степике математики меня прям угнетает. А выбор куда идти в пайтоне я пока не сделал, так как, мне нравится возиться с кодом, но так, чтобы не было матеши много, кроме мб бинарной алгебры. Я вообще, как истинный рпг любитель, буду качаться под шмот, вернее под вакансии. :3

Еще раз спасибо, анон!
88 2493106
>>493024

>матеша так сильно нужна для кодинга?


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

Та математика, которую знают программисты, она очень поверхностная, с уклоном в computer science. Это скорее псевдоматематика. Не уверен, что computer science можно вообще назвать математикой, разве что с натяжкой.
89 2493145
>>493106
Логично!
А чего тогда расхваленый всеми Степик сует матешу при каждом удобном случае?
90 2493167
>>493145
Чел, в том курсе, который ты указал, вся математика уровня не выше восьмого класса средней школы. Тебя ни разу не попросят сделать что-то сложнее подстановки в готовую формулу, ничего выводить на листочке не нужно. Если это для тебя проблема, то на что ты вообще рассчитываешь.
91 2493194
>>493167
Так я не говорю, что там какая-то мега математика, я говорю о том, что там всегда чет надо считать, гуглить формулы. Ясное дело, что я понимаю, что умножение более приоритетно в строчке со сложением, например. Я о том, что все задания упираются в посчитать, поделить, задание с погромистами я вообще не понял. Отсюда и вопрос, всегда ли будет нужна математика.
93 2493411
>>493194
Привыкай к тому, что нужно для каждой задачи понять условие, гуглить непонятное, считать и вообще так или иначе напрягать мозги. Тебе объясняют совсем основы языка и "математика" в задачах присутствует, чтобы они не были совсем уж проходными. А эта задача >>493196 вообще на знание русского языка.
94 2493423
>>487129 (OP)
Всем привет, возник вопрос, мб простой.
Вот у меня список из n элементов
как мне разьить его на некоторое количество списков по 5 элементов?
Ну или как перебрать этот первоначальный список по 5 элементов?
95 2493429
хауди хо друзья
есть кто трудоустроился в рашке без опыта в последние пару месяцев без мам пап?
я ибал, на хедхантере уже вакансий не осталось где я бы отказа не получил, мне блядь оттуда уже кладменом предложили работать
есть может варианты КУПИТЬ РЕКОМЕНДАЦИЮ НА СОБЕС ХОТЯБЫ
96 2493434
>>493423
https://www.geeksforgeeks.org/break-list-chunks-size-n-python/amp/
>>493196
Для тебя это упор на математику, ты серьёзно?
97 2493546
>>493434
Камон, не души, анон. Конечно, может быть такое, что кодинг тупо не моё.
98 2493549
>>492854
зачем ты сделал акцент на обоссаном матане?
99 2493550
>>493046
>>493024
в этих курсах упор на математику потому что курсы расчитаны на студентов, которые эту хуйню как раз изучают и потому что так проще всего подобрать задачи, ну типа ближе будет студентам работать с математикой чем с какой то абстракцией
100 2493553
>>493550
Понимаю!
Я вообще из граф.дизайна вкатываюсь и я работаю только с визуалкой и формами, чем с цифрами и текстом. Текст меня не парит, набивать строчки кода мне нравится, но когда, для реализации задачи, мне нужно вспоминать деления без остатка, плюс, это вписать в код, я прям схожу с ума. Причем, я ради прикола глянул, как кодят ребята, нет там никаких вычислений, никаких там d % a != 0 и подобного скама.
101 2493555
>>493549
предполагаю что с этим придётся работать
102 2493564
>>493553
Вот что смотрел
https://www.youtube.com/watch?v=uv4-MojCCes&t=556s&ab_channel=BeGeek
У меня нет знаний, чтобы оценить качество его кода или уровень сложности задания, но, мне кажется, что это ближе к реальности, чем искать скок там погромистов в зале у нас. При всем уважении к ребятам из Степик, спасибо им, в любом случае, за труды.
Плюс, я смотрю некоторые курсы, там без вводной части по интерпретатором, людей тут же кидают писать Привет, мир!, не разжевывая установку нужной программы для кодинга (пейчарм, или юпитер, или еще чет), как люди вообще работают (как пулить или каммитить файлы). Я к тому, что хочется реальной практики, примеров работы, именно работы, а не тренажера. Как-то так.
103 2493576
>>493564
Быстрый пример из моей нынешней сферы. Есть кривая Безье. Важная фича в иллюстраторе? Да. Охуенный потенциал возможностей? Безусловно. Нужна ли она тебе, если ты граф.дизайнер? Нет, блять! Все лого рисуются от руки, потом кидаются в прогу и обводятся по гриду. Да, ты можешь юзать кривую Безье, но, если ты о ней не слышал, то у тебя не будет проблем ВАААПЩЕ. Анализируя рынок, ты вообще поймешь, что бОльшая часть лого это тупо текст. Фирменный знак по стольку по скольку имеется. И этот фирменный знак тупо производная часть от того же текста или визуальная форма общей концепции бренда. И возвращаясь к кривой Безье, вот она так сильно нужна? А ей можно посвятить целую главу бтв.
104 2493755
>>493546
До математики в кодинге ты еще долго не дойдешь, если ты еще на уровне циклов и ифов.
Я вообще лингвистоэкономист, умеющий решать максимум квадратные уравнения за 8 класс школы, и не припомню, когда последний раз нужно было матешу тыкать на самом деле помню - когда настраивал логирование в локи, там нужно было позадрачивать ряды и среднее скользящее.
Тебе главное понять алгоритмизацию - не в смысле алгоритмы типа О-малое в питоне тебе вряд ли такое дрочево пригодится, а какие шаги тебе нужно предпринять, чтобы получился бизнес-процесс, типа 1) получаю данные, 2) проверяю на ошибки 3) делаю с ними то-то и то-то 4) отдаю отформатированные данные дальше.
105 2493785
>>493553
потому что задачи на математику это чисто для курсов.
так то есть модули математические в питоне где вместо формул в коде ты просто импортируешь модуль МАТХ и там есть функции которые посчитают за тебя
То есть тебя дрочат на задаче решить логарифмы или фибоначчи а потом ты узнаешь что можно было написать log или fib и он тебе выдаст решение, лол.
Те же модули для нейронок там весь матан записан заранее в функции и т.п.
106 2493840
>>493755

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


Могу ошибаться, но это уже работа import ?
А так, у меня нет никаких проблем с переменными, динамической типизацией, я не теряюсь даже в новом для меня while, когда переменная, заданная, условно, значением 0, может изменяться в процессе цикла, "обновляя" это значения через, например, += 1.
А так, я, видимо, хочу или быстрых результатов, или мне нужно пройти полный курс, а потом уже додумывать, где у меня пробелы и что надо подтянуть. Или все сразу :3
В любом случае, спасибо за поддержку и участие!

>>493785

>потому что задачи на математику это чисто для курсов.


Типа, как ребят учили, так они и учат остальных.

>Те же модули для нейронок там весь матан записан заранее в функции и т.п.


Ого! Некисло. Но я так понял, что это определенная сфера в пайтоне? Условно, работа с фреймворками подразумевает нечто такое?
107 2493858
>>493840

>Могу ошибаться, но это уже работа import ?


Не, я вообще не про это.
Тебе для создания программы нужно алгоритмизировать свои действия - разбить концепт программы на составные задачи.
Программу прежде всего надо запустить (сейчас ты понятное дело запускаешь просто через ИДЕ, но в какой-то момент тебе надо будет ее задеплоить на сервер)
Тебе нужно принять какой-то ввод (сейчас у тебя ручный ввод с клавиатуры или какой-нибудь захардкоженный список, скажем) - в дальнейшем ввод у тебя может быть через слушание вебхука какого-нибудь другого веб-сервиса - на веб-сервисе что-то произошло, и тебе в приложение прилетела об этом инфа со всякими метаданными, например пользователь совершил платеж, и тебе поступила инфа об айди транзакции, имени пользователя, номере кредитки, сумме платежа, наименовании валюты, айди покупки.
Входные данные нужно проверить на корректность (например в сумме платежа не могут быть буквы очевидно)
Далее тебе с этими данными что-то надо сделать - например записать в базу данных лог о проведенной транзакции. Нужно открыть коннект в базе, составить запись, которую ты хочешь записать, проверить, что все составляется правильно, записать лог, закрыть коннект к базе.
После этого тебе стоит записать например в другую базу лог об успешной работе твоей программы - "время такое-то, успешно записал в базу лог о проведенном платеже".
Вот о такой алгоритмизации я говорю. Это очень обобщенно, понятное дело.
108 2493859
>>493840
ну хз сфера не сфера, щас эта тема популярна и актуальна
109 2494201
>>494169 (Del)

> a опepaция нa зaвтpa, нa cубботу нa 11 дня нaзнaчeнa бляять...


Но ты ведь говорил что на пятницу...
110 2494231
>>494201
Его уже разоблачили, скрины прикрепляли 2018 года, у него так же кот умирал. Очередной скамер уебан, забей.
111 2494248
>>493576

>бОльшая часть лого это тупо текст


Который нынче векторный (TrueType) и каждый глиф шрифта задаётся кривыми Безье. А поверх этого ещё таблицы с отображением символов на глифы, хинты, локализация и вот это вот всё, что влияет на рендер конечного текста.
112 2494261
>>493858
В целом, мне нравится! Я не против возиться с подобного рода инфой. Спасибо за подробные ответ! :3
>>493859
Да уж, сейчас нейронка считай конкурент всем на планете, что музыка, что искусство.
113 2494263
>>494248
Так я и говорю, что кривая Безье крутая и важная штука. Но мне, для реализации проектов, она не нужна. Не будет у тебя никогда задачи, которую нужно и возможно решить именно с помощью этой фичи.
114 2494471
>>494263
Ну так тебе же надо как-то графический элемент встраивать в очередной макет? А для этого нужно менять его параметры, которые в конечном итоге являются параметрами той самой кривой. И делать это надо не руками, как ты привык, а программно, чтоб оно само туда встраивалось.
15663834193640.jpg38 Кб, 1024x541
115 2494697
116 2494722
>>493434
Это, кстати, не я был, но очень похоже на то, что я бы написал.
Спасибо, анон.
117 2494808
Начал питонить по страшному, в программировании ноль полный, прохожу степик пока что по 4-5 часов в день, по здоровью пока больше не получается. Как же я счастлив, почти за 30 лет смысл в жизни появился.
Жаль только без денег сидеть придется, ибо на работу я ходить больше не буду, потому что сейчас есть само обучение и время на отдых, а если я буду работать, то потребуется время не только на работу, но еще и на отдых от нее, и в итоге я в 3 раза замедлюсь.
Скоро будет график 8 часов сна, 8 часов питонинга, 8 часов отдыха, можете мне не верить.
118 2494828
>>494808
это только сначала, потом надоедает, ты не один такой
119 2494831
>>494828
У меня уже две специальности совершенно другие и на каждую мне приходилось заставлять себячето делать, а тут нет такого
120 2495110
>>494808
>>494828
рили скоро надеост жестко.
121 2495169
Хочу все сеты заменить на строки. Казалось, бы решение простое, взять словарь, туда пихать сет и добавлять новую строку в лексикографическом порядке. Но только сет не хешируется, а frozenset может 2 сета как разные посчитать
122 2495272
>>495169
можно функцию хеширования самому задать

типа class HashSet(set):
def __hash__(self):
return str(self).__hash__

a = HashSet({1, 2, 3})

Ну и дальше можешь складывать в dict

P.S хеш-функцию погугли какую лучше использовать. То, что я написал скорее всего говно
123 2495307
>>495272
Оказывается frozenset работает как надо
124 2495416
>>495110
>>494828
Вы дурачки, я безумец
125 2495511
>>495416
насколько ты жесткий псих? что упортебляешь?
126 2495525
>>495511
Ничего не употребляю, просто мой мозг работает как амбрелла+скайнет
127 2495793
>>495525
ебать, это последствия употребления грибов?
128 2495843
>>495793
Это последствия усердной работы над сообой, дурашка.
image.png490 Кб, 1200x800
129 2495868
>>495843
по каким техникам ты апал мозг?
ты как чел с пика сейчас?
130 2495872
>>495868
По единственной рабочей технике апнуть что угодно - регулярно делать что-то, что заставляет работать то, что ты хочешь апнуть, медленно увеличивая нагрузку. Хоть бицепс, хоть мозг, хоть физическая память, хоть лизание пизды, любые скиллы апаются одинаково.
131 2495947
>>495872
и чем ты нагружал мозжечок? двачем?
типа сперва легкие разделы типа футбача, потом перешел на аниме, потом БЭ, потом в ПО ушел и закончил в крымотреде.
щас ПО закрыли и приходится ебашить питон, не так ли?
понял, смекнул, просёк фишку
132 2495954
>>495947
Я даже не знал, что по закрыли, в отличии от тебя. Вот и думай головой.
133 2496005
>>495947
po закрыли? Нихуя себе, а я ожидал, что от такого на весь двач хлынет лавина политговна, а тут так, говноручеёк. Жаль, раньше этого не сделали.
134 2496097
>>495954
>>496005
А по разве закрыли? я написал ради прикола, а вы оказывается знали и тусили там, лол!
135 2496127
>>496097

>Я даже не знал, что по закрыли, в отличии от тебя


>а вы оказывается знали


Иди работай, дурачок.
136 2496138
>>496127
Кстати кто пробовал написать скрипт чтобы он постил за вас на дваче? это реализуемо?
137 2496145
>>496138
Я сейчас работаю над скриптом, чтобы он давал пинок под зад всяким дурачкам с двача.
image.png8 Кб, 770x47
138 2496169
Помогите с питоном. Вот есть код, но вылетает ошибка:
TypeError: unsupported operand type(s) for -: 'list' and 'float'
Почему-то он не берет по одному элементу из histogram.keys(), а каждый раз выдает тупо весь список целиком
image.png17 Кб, 658x151
139 2496186
>>496169
Полный кусок для полноты картины
140 2496242
>>496186
видимо биномиал вернул лист, а не скаляр. проверяй n и p. по идее, у тебя где-то тайп чекер ругнуться должен
141 2496285
>>496242
Странно, что Counter раньше не упал, списки же не хешируемые.
142 2496297
>>496242
>>496285
Все, ананы, разобрался. Это я долбоеб. Использовал уже существующие переменные x и v, ебать его рот
143 2496719
А че тред вялый? Язык вроде самый популярний, а в других тредах активность више
144 2497022
>>496719
в каких тредах например выше?
в пукич какич или какой там щас самый соевый язык?
145 2497025
Я тупенький неофит, подскажите плз:
Есть два листа листов:
List1 [[говно],[моча],[залупа],[член]]
List2 [[говно, 1, 3],[лол, 5, 3],[залупа, 3, 1],[дед, 3, 3]]
Как мне проверить на соответствие по первому элементу каждого листа второго листа, на каждый элемент листов первого листа?
Короче говоря, мне нужно, чтобы на выходе было:
List3 [[лол, 5, 3],[дед, 3, 3]]
146 2497031
>>497025
По числу могут отличаться, или только по содержанию?
r=[]
for l1,l2 in zip(List1,List2):
__if l1[0] != l2[0]:
____r.append(l2)
147 2497032
>>497022

>или какой там щас самый соевый язык?


питон
148 2497036
>>497031
по содержанию. Если быть точнее первом листе:
ubervalueslist = [['URL1'],['URL2'],['URL3'],['URL4']]
А во втором:
ubermegasuperlist = [['URL1', 'title1', number1, 'country1'],['URL5', 'title5', number5, 'country5'],['URL3', 'title3', number3, 'country3'],['URL6', 'title6', number6, 'country6']]
Тобишь проверяется по URL из ubermegasuperlist, если такого же нет в ubervalueslist, то нужно записать весь полный лист из ubermegasuperlist в котором содержится этот URL
Выход:[['URL5', 'title5', number5, 'country5'],['URL6', 'title6', number6, 'country6']]
149 2497039
>>496719
Тут только ньюфаги пишут, несут какую то хуйню что даже читать невозможно
мимо бэк техлид, основной язык питон
150 2497041
>>497036
С твои примером должно работать.
151 2497050
>>497032
Это язык гиков, чел
152 2497052
>>497050
соевых
153 2497053
>>497041
ubermegasuperlist = [['https://www.youtube.com/c/NebulaPhotos/about', 'Nebula Photos', 11927319, 'United States'],['https://www.youtube.com/c/AstroBackyard/about', 'AstroBackyard', 38167003, 'Canada'], ['https://www.youtube.com/c/Astrobloke/about', 'Astrobloke', 379015, 'United Kingdom'], ['https://www.youtube.com/c/NickPagePhotography/about', 'Nick Page', 9243824, 'United States']]

ubervalueslist = [['https://www.youtube.com/c/colorgradingcentral/about'],['https://www.youtube.com/c/PremiumBeat/about'],['https://www.youtube.com/c/NebulaPhotos/about'], ['https://www.youtube.com/c/AstroBackyard/about'], ['https://www.youtube.com/c/MidlandPictures/about']]
print(ubervalueslist)
print(ubermegasuperlist)
r=[]
for l1,l2 in zip(ubervalueslist,ubermegasuperlist):
if l1[0] != l2[0]:
r.append(l2)
print(r)
out:
[['https://www.youtube.com/c/colorgradingcentral/about'], ['https://www.youtube.com/c/PremiumBeat/about'], ['https://www.youtube.com/c/NebulaPhotos/about'], ['https://www.youtube.com/c/AstroBackyard/about'], ['https://www.youtube.com/c/MidlandPictures/about']]
[['https://www.youtube.com/c/NebulaPhotos/about', 'Nebula Photos', 11927319, 'United States'], ['https://www.youtube.com/c/AstroBackyard/about', 'AstroBackyard', 38167003, 'Canada'], ['https://www.youtube.com/c/Astrobloke/about', 'Astrobloke', 379015, 'United Kingdom'], ['https://www.youtube.com/c/NickPagePhotography/about', 'Nick Page', 9243824, 'United States']]
[['https://www.youtube.com/c/NebulaPhotos/about', 'Nebula Photos', 11927319, 'United States'], ['https://www.youtube.com/c/AstroBackyard/about', 'AstroBackyard', 38167003, 'Canada'], ['https://www.youtube.com/c/Astrobloke/about', 'Astrobloke', 379015, 'United Kingdom'], ['https://www.youtube.com/c/NickPagePhotography/about', 'Nick Page', 9243824, 'United States']]

Что я делаю не так?) На примере который кидал ранее проверил - все работает, а тут возвращает тупо ubermegasuperlist...
154 2497061
>>497053

>На примере который кидал ранее проверил - все работает, а тут возвращает тупо ubermegasuperlist


Потому что у тебя так пример построен. Я даже уточнил, но ты вопроса не понял.

ubermegasuperlist = [['https://www.youtube.com/c/NebulaPhotos/about', 'Nebula Photos', 11927319, 'United States'],['https://www.youtube.com/c/AstroBackyard/about', 'AstroBackyard', 38167003, 'Canada'], ['https://www.youtube.com/c/Astrobloke/about', 'Astrobloke', 379015, 'United Kingdom'], ['https://www.youtube.com/c/NickPagePhotography/about', 'Nick Page', 9243824, 'United States']]

ubervalueslist = [['https://www.youtube.com/c/colorgradingcentral/about'],['https://www.youtube.com/c/PremiumBeat/about'],['https://www.youtube.com/c/NebulaPhotos/about'], ['https://www.youtube.com/c/AstroBackyard/about'], ['https://www.youtube.com/c/MidlandPictures/about']]
print(ubervalueslist)
print(ubermegasuperlist)

ubervaluesset = { *sum(ubervalueslist,[]) }

r=[channel for channel in ubermegasuperlist if channel[0] not in ubervaluesset]

print(r)
155 2497067
>>497061
Все, теперь понял. Спасибо огромное, добра тебе и сорян за тупость)
156 2497178
Почему многие бугуртят, когда им говорят,что питон лучший первый язык? Типа начинайте с низкоуровневых C/++, там БАЗА. Разве не смысл любого обучения в том, что начинаешь с более доступного, а потом погружаешься в глубокие процессы по мере необходимости? Разве обучение пайтон и cs параллельно не даст того же понимания, только с комфортным тебе языком, который раньше даст видимый результат?
157 2497190
>>497178
потому что ты по сути не будешь знать как на самом деле работает компьютор.

Это ответ на твой вопрос.

А если ты хотел спросить "Почему это важно, хотя я считаю неважным?" - ну хуй знает. можешь считать как угодно.
Однако, программист который знает как работает компьютер, все же продуктивнее.
158 2497236
>>497190
Я говорю о том, что это параллельно с пайтоном изучать можно?
160 2497368
>>497364

>1


Автор наговнокодил говна и недоволен.
161 2497436
>>497190

>потому что ты по сути не будешь знать как на самом деле работает компьютор


Кто тебе запрещает сначала научиться программировать, а потом изучать устройство компьютера и переходить на низкий уровень?
162 2497461
>>497436

>Кто тебе запрещает


совесть
163 2497479
>>497025
filter_list = [x[0] for x in List1]
na_vihod = [x for x in List2 if x[0] in filter_list]
164 2497553
Есть какой-нибудь тг канал русскоязычный, где новички могут вопроси задавать и все такое?
165 2497563
>>497553
Есть "каналы", в которых можно задавать вопросы.
С другой стороны - никто не хочет отвечать на бесконечные вопросы от новичков. Вы достаёте.
Кроме того, что вы не можете понять ответ, так ещё и с чем-то совсем глупым придёте.
image.png49 Кб, 630x612
166 2497617
>>487129 (OP)
Два вопроса, аноны-разработчики.

1. Нужно написать приложение, которые при первом старте подключается к БД, а затем после завершения работы сохраняет данные для повторного входа. Как это реализовать? Поначалу думал про txt файл, в котором лежит неймкортеж с данными для входа в БД, а при запуске программы проверяется, имеется ли строка и, если да, то данные заполняются из этого файла.
Не безопасно, да и по смыслу очень костыльно. Есть варианты?

2. Знаком немного с TKinter, но становится вопрос про динамические окна: после подключения к базе данных и далее в приложении начинается работа с её записями, чем это реализовать, кроме вызова разных фреймов в основном окне? У меня была идея слияния окон, но я не придумал как и даже не знаю, в какую сторону гуглить. Можно ли замутить что-нибудь похоже, как на пикриле?
Не прошу помощи в коде, нужно немного понимания, что можно сделать, а на что даже время не тратить.
167 2497661
>>497563
Ты идиот.
168 2497803
Инкогнитусы, посоветуйте учебное пособие для по дата саенсу или машин лернингу. Можно не на новичка и без перевода
169 2497966
>>497661
Moron, который не может вкатиться, спок.
>>497617
1. "Есть варианты?" не особо. Можно использовать json-файл, из которого получать информацию, см. информацию о модуле json. В любом случае, чтобы подключиться к БД, нужно ввести логин и пароль.
2. "идея слияния окон"
https://pastebin.com/BDYqp1Sd
self.add_bool используется, чтобы не добавлять tk.Text для self.root ещё раз, если пользователь нажмёт на кнопку.
>>497803
"Машинное обучение. Карманный справочник. Краткое руководство".
170 2497989
>>497803
Пиздос. и зачем же "не новичок" тогда просит ПОСОБИЕ ?
171 2498060
>>497966

>не может вкатиться


Причем тут я? Ты просто токсичный идиот и пишешь хуйню. А вкатиться на самом деле не так легко, как к твоей маман в постель.
172 2498072
>>498060

> вкатиться на самом деле не так легко


Если ты даун, то да, может быть, очень нелегко. Но в этом виновата твоя мать шлюха, что у неё много парней было и ты родился несмышлёным.
"Нелегко" пишется слитно, чмо.
112.jpg178 Кб, 826x614
173 2498112
>>497803
Я тоже не новичок. Написал хеллоу ворд и выучил определение функции и переменной и начал вкат в машин лернинг что бы обойти всех лохов и начать быстрее деньги зарабатывать. А там какие то матрицы, векторы. В общем чуть не бросил айти. Не советую.
174 2498133
>>498112

>А там какие то матрицы, векторы


Вот уж куда-куда, а в машинлёнинг вышканенужнамцам совсем не надо лезть. Просто совсем.
175 2498149
>>498060

>вкатиться на самом деле не так легко


>>498072

>"Нелегко" пишется слитно


Проиграл, ты рили идиот. Забавно что у тебя очко еще подгорает на ровном месте, продолжай.
176 2498213
Вкатун на связи
Прошел курсы на степике, насмотрелся про ООП, с чего продолжать вкат в fastapi? Хочу сайтик, сделать, вот пип инсталл фастапи я прожал, а дальше что?
Прошу наставлений
177 2498218
>>498213
Пройди официальный гайд по фастапи доке
178 2498486
Решил изучить технологии предков, час проебался в туториале, ну а че зачем его обновлять, все равно фреймворком никто не пользуется.
179 2498490
Решил побайтоебствовать на питоне inb4 долбоеб и написать быстрый парсер pcap файлов, который извлекает только ту информацию, что мне нужно. Проблема в том, что он работает с той же скоростью, что и dpkt. Как можно его ускорить?
https://pastebin.com/wKX6ufsi
180 2498587
>>498490

>inb4 долбоеб


да.

> с той же скоростью, что и dpkt.


а должен был минимум в 10 раз медленнее. Что-то не то. Разбирайся!
скорее всего ты неправильно используешь dpkt.
181 2498590
>>498490
загуглил, кстати за тебя:

# Create the filter
bpf = pcapy.compile (datalink, 1500, "tcp", 0, 1)
182 2498595
История узбека. Есть у нас один сервис на Python. Ну как сервис, скорее бот для Телеграма. Был как-то написан на коленке за ночь. В последнее время, сервер уже начал уставать. Подумывали переезд на более мощный сервер или переписывать всё это безобразие на что-то типо Go/Rust. А тут Python 3.11 выходит. Накатываем и вауля! Бот стал работать быстрее, сервер задышал полной грудью. Профит!
183 2498687
>>498587
>>498590
Долбоеб...
184 2498821
>>498595
Еще чуть-чуть и скоро python 3.15 обгонит C++ своей скоростью
185 2499038
>>498821
И ведь всё реально! Питон ещё утрёт всем нос. А самое главное, обещают всё с обратной совместимостью. Мы просто обновим Питон, а старый код будет летать ракетой!
186 2499185
>>498595
или может стоило просто код написать нормально?
187 2499187
>>498486
все его обновляют.
188 2499207
>>499038

>А самое главное, обещают всё с обратной совместимостью


что-то пока с этим не очень
189 2499222
>>498595
Либо руки из жопы, либо стоит арендовать впску чуть дороже чем 50 рублей. Очевидно имплаинг что бот ничего сложнее обработки текстовых данных не делает.
190 2499230
>>497190
Так ты и с плюсами не будешь знать, нужен асамблер и знание теории компиляторов, что бы понимать что действительно происходит в компьютере и что делает твой код. Без этого ты так и будешь ебаться с абстракциями, хоть и приближенными к железу.
191 2499256
>>499187
Я про туториал с главной страницы, скрины прикреплены.
192 2499258
https://www.youtube.com/watch?v=qhkmg79izOg

что быстрее питон 3.15 или этот фреймворк?
193 2499268
Braking News, УВАГА, УВАГА !!!

https://www.bfm.ru/news/511654
194 2499339
>>499268
Это обычное дело
195 2499504
>>497364
зачем автор ввел новый, никому, кроме него, неизвестный термин "язык полного спектра"? чтоб буков в книге было побольше и продать подороже?
196 2499505
>>497364
зачем автор ввел новый, никому, кроме него, неизвестный термин "язык полного спектра"? чтоб буков в книге было побольше и продать подороже?
197 2500094
>>499258
Выглядит интересно. Но есть пара моментов:
1. Очередной мертворожденный супер быстрый фреймворк? Который по счету? Не пора ли открывать кладбище в треде?
2. Основной затуп в веб.приложениях это сеть по которой идет запрос и БД.
198 2500096
199 2500391
Подскажите, чем можно на линуксе скомпилировать программу под винду. Есть ли возможность без вайнов и виртуалок это сделать?
200 2500422
>>500391
Сконпелировать не выйдет, можно сбандлить, это разные вещи.
201 2500427
>>500422
Мне надо получить exe файл.
202 2500436
>>500427
Ну pyinstaller тогда, это бандл байткода и бидона с либами.
Работает замечательно для несведущих хуев, которые твоя ЦА, как я понимаю.
203 2500528
>>500436
В нем есть кросс-компиляция? Можно на линуксе скомпилировать код под виндовс?
204 2500531
>>500528
Сконпелировать не выйдет, можно сбандлить, это разные вещи.
205 2500536
>>500531
Как? С какими аргументами запускать?
206 2500600
>>500536

с вескими

не бей, я не знаю, просто шуткануть захотелось
ВИДЕОМУСОРКА.mp45,3 Мб, mp4,
640x352, 1:01
207 2500606
Гайс, я ньюфаг ебаный. Учу питон по егорофф_ченнл(нахуй книги! не могу читать, рот ебал). Пишу код в Thonny. Но меня терзают смутные сомнения. Нормальная ли это IDE-ха? Какую посоветуете? Чтоб щас с самого начала в нее придти и в ней и остаться, до скончания веков. Тони, вроде, норм, нравится как выглядит, там подгрузил уже пару библ, прям в проге. Но можно ли на ней писать такие же проги как в PyCharm, к примеру? Да, ебанутый вопрос, но всё же? Слышал, что PyCharm топ топов. Не придется ли мне оптом ебаться с хуевой тучей костылей в Тони, чтоб получить тоже, что и в PyCharm?
Когда собирался учить питон, изучал этот вопрос, но не нашел откуда скачать крякнутый PyCharm, везде только бесплатная версия. Или и бесплатной версии за глаза? А если я стану супер-кодер и захочу написать новый ютуб, то можно ли это будет сделать в бесплатной версии?
208 2500615
>>500606
Сразу на vscode надрачивайся
209 2500629
>>500606

>но не нашел откуда скачать крякнутый PyCharm


Программирование это не твое.
image.png36 Кб, 497x524
210 2500637
>>500606
Ну попробуй разные и юзай какая зайдёт
211 2500673
>>500606

> крякнутый PyCharm


Бери бесплатную и будет тебе счастье. Но будь аккуратен, т.к. Пайчарм написан на Java и любит оперативку жрать.
VS Code\Codium тоже топовый редактор кода.
212 2500721
>>489492
Так и что было?
213 2500752
>>500606
бесплатная версия называется PyCharm Community
платная не нужна
214 2500757
>>500752
А в этой самой пичарм можно сразу несколько языков крутить? Это деды на одном языке весь проект писали, а нынче и трёх то мало бывает.
215 2500805
>>500721
в функции get_cov_ror, начиная со 116 строки нужно сделать новые переменные, поменять sdate, edate на что-нибудь другое, например SDATE, EDATE, и далее в используемых функциях get_cov_between_date и roi_between_dates уже использовать SDATE и EDATE

я так и не сообразил, почему это работает с маленьким списком, но не не работает с большим
и забил
может когда нормально выучу питон, то пойму
image.png29 Кб, 517x539
216 2500852
Чота хз где спросить, потому тут.
Я же правильно понимаю, что если дифференцировать а*х^2 по а, то ответ будет х^2?
Какое-то затмение нашло, сто лет не пользовался, все забыл нах.
217 2500871
>>500852
wolframalpha.com
image.png85 Кб, 1242x710
218 2501004
Анон, подскажи, че за хуйня?
Дали задание на собесе. Открываю в пайчарме, пытаюсь запустить - жалуется, что uvicorn-а нет.
Накатываю всеми способами - все равно жалуется.

Это что за поебень?
219 2501008
>>501004
venv настрой
220 2501015
>>501008

> venv


Подожди... Но почему? Он даж в requiments не указан
221 2501039
>>501015
И что? Ты знаешь что такое venv?
222 2501045
>>501039
Виртуальные переменные.
Ну чтоб всякие глобалки не смешивались, например.
223 2501072
>>501004
На fastapi тоже жалуется, если посмотришь

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

> c:\


кровь из глаз, не надо так делать, переучивайся, пока не поздно, на тебя как на человека смотреть станут
224 2501074
>>501072
>>501004
И в догонку, если ты до этого никогда фастапи, корны и т.п. не ставил, то к позиции всё равно не готов. А если ставил, то смотри, как ты тогда запускал
225 2501163
>>501072

>> c:\


>кровь из глаз


И что ты предлагаешь? Может ещё линукс поставить?
226 2501165
>>501074

>если ты до этого никогда фастапи, корны и т.п. не ставил, то к позиции всё равно не готов


Это да. Видать, придется всерьез за питона браться.
А я только только РФТ до уровня сеньеора прокачал и оффер получил(((
227 2501271
Салам аноны!
Хочу вкатиться в работку из-за нестабильной ситуации и лутать какую-то копеечку. В качестве инструмента вката выбрал как раз питон. Как сейчас с работой? Как джуну живётся?

Опыт петона на уровне олигофрена, писал максимум скриптики в 100 строк для автоматизации рутины. Ну и 2100 птс на кодфорсе
228 2501316
>>501271
Говорят, что к джунам сейчас требования как к сеньорам позавчера. Вот и думай, стоит ли тратить время на вкат. Может лучше потратить на освоение отечественного линукса. Один хуй курс взят на импортозамещение. Ну это если планов нет на эмиграцию.
image.png204 Кб, 448x372
229 2501357
230 2501392
>>487129 (OP)
Отцы нужна помощь
пытаюсь в джанго, хочу получить ввод и вывод инфы на одной странице
Что-то такое нашел в интернетах, но дял функций
А как получить, если все делается на основе класса?

Естьк акой-то простой пример? В интернетах не нашел от слова совсем.
Мб какой-то метод есть, который проверит считывание данных и выдаст что-то в другое поле? но form_valid не работает
Даже до конца не понимаю, как сформулировать запрос дальше чем "как сделать ввод и вывод инфы на одной странице в django на основе классов, а не функций?" Хотя бы на уровне введите 2 числа и получите их сумму, без каких-либо обращений к базам данных
231 2501396
>>501316
Есть желание в перекат, из-за этого и хочу начать что-то мутить в плане программача не для себя, а за лавешку
232 2501397
вкаты хуяты, как вы заебали срать в питон-треде, пидорасы

где вопросы о том как лист листов перебрать, чтоб получился дикт диктов? каждый день захожу, а тут ыыыыах думаю вкатитсо лол где плотют больше ыыыааааа? дебилы, сука!
532399575435623.jpg67 Кб, 563x1034
233 2501416
>>501397
Двачую. Из всего /pr тут самый низкий уровень дискуссии. Впору разбивать тред на две части - для вкатутосиков и для остальных и второй будет мёртвый
234 2501635
Привет, двач, нужна помощь.
Есть значения словаря котыре нужно превратить в сет
ewfwef = '9', qqwe='12334',green = 'graas', a = '123', f=[7])
нужно добавить проверку и перед выводом превратить список в тюпл. Как это можно сделать?
235 2501667
>>501635
Скопируй нормально, я тебе цикл напишу, а то у тебя хз что вообще. Какая-то круглая скобка в конце.
image.png31 Кб, 856x469
236 2501673
>>501635
Написал, как понял, короче
Но учти, что значения словаря могут быть не хешируемые, а сет обязательно, так что может и в исключение улететь.
237 2501680
>>501673
Большое спасибо
1667155946064.png486 Кб, 1379x801
238 2501700
Играл короче в пидароксов и после того как там багнулась хуйня мне стало лень и я выключил. Захотелось внезапно развлечься написав гипер простой скриптик постинга в тред с доставанием капчки через апи и ручным решением. Но забыл что здесь клаудфлара стоит. В итоге при получении айди капчи через апи он мне кидает страничку клаудфлары.

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

Вам когда-нибудь приходилось дублировать на своей стороне юзеру результаты клаудфлары, чтобы он вручную решил ее и дальше можно было реквестить без проблем любые ендпоинты сайта, имея пропуск?
239 2501708
Ладно пойду в /b/ спрошу.
240 2501746
Добрый вечер. Тут кто-нибудь соображает за Opencv? Появилась пара вопросов:
1) Где почитать за вывод изображения (нампаевский массив) в окне программы с помощью PyQT/PySide Лучше со вторым
2) В опенсв есть встроенные функции для работы с уже обученными нейронками Есть файл .h5 и отсутствие желания докачивать тензорфлоу и еще сильнее увеличивать размер программі
241 2501747
>>501746
Заранее спасибо за ответ
242 2501748
>>500852
Стыдно, блядь. будет 2ах. У тебя там в формуле это в пункте 2. написано, смотрю в книгу вижу фигу?
243 2501771
Блять двач, у меня одного ебля с проблемами при написании интеграционных тестов отнимает больше времени, чем написание тестов, я уже реально ненавижу пайтест, то пол дня проебусь на том что пайтест на каждый тест асинхронный луп создает отдельный и поэтому коннекты с редисом падают, то еще какая-то залупа, вот сейчас мне написал тест, что не дождался дропа бд, хотя сам код верный я уверен, но сейчас я в предвкушении нескольких часов ебли с тем, чтобы правильно запустить тесты и убедится в том, что несколько строк работают корректно. Причем у этих ошибок мудацких всегда нет трейбека внятного, приходится гадать что именно пошло не так, ощущение такое, что руками было бы быстрее тестить, чем настраивать пайтест под проект
244 2501772
>>501771

> чем написание тестов и самого кода


фикс
245 2501796
Проблема, был заказ на фрилансе, делал долго заработал мало, были свои трудности в силу неопытности и формата работы
Выгорел, не могу уже месяц на комп смотреть, как вы справляетесь с такими приколами и что с этим делать вообще?
Просто вроде как уже достаточно для себя усвоил, чтобы всё бросать, да и на текущей работе оставаться нет желания (работа с программированием не связана)
246 2501800
>>501796

>как вы справляетесь с такими приколами и что с этим делать вообще?


Делаем быстро зарабатываем тоже мало, нуачо ты хотел то?, очевидно же.
247 2501801
>>501800

>зарабатываем


А про выгорание что скажешь?
248 2501802
>>501801
Тоесть желание, интерес есть, а сесть делать сложно
249 2501805
>>501748
Ты не по "х" дифференцируй, а по "а".
250 2501876
>>501796

> Питон тред

Screenshot20221031130054.jpeg7 Кб, 261x186
251 2501932
Извините за дурацкий вопрос...
Но почему тут вызывается функция decorator и в терминал печатается "11111"?
Я же не вызывал ничего, просто объявил 2 фукнции. Одна с декоратором. Но ничего не вызывается же.
252 2501939
>>501932
Декораторы выполняютсся во время импорта. Fluent python можешьглаву про них почитать, там подробнее.
253 2501994
>>501932
дополню анона:
собственно, @decorator и есть стейтмент исполняющийся на верхнем уровне. можно его убрать и после дефа функции f написать f = decorator(f), будет примерно (?) то же самое
254 2502190
Аноны, есть такие, кто проходил курс Python разработки от ITproger? Расскажите об опыте, какие подводные? Может другие курсы от этой конторы проходили?
255 2502517
Сап, где можно поискать напарника для обучения? Уровень - трогал кресты в универе. Нужен такой же неуч с сильным желанием познать дзен.
256 2502674
>>502517
Лвл и куда направляешься?
257 2502778
258 2502779
>>502517
Потрогай моего богатыря
259 2502811
>>502779
Как насчёт потрогать твоего Алёшу Поповича?
260 2502825
>>502674
25, Азия
261 2502827
>>502779
У питонистов так принято?
262 2502840
>>502825
Ооо, буряточки!
263 2502853
Сап питонач, делаю тестовое задание. Уже сделал 2 версии и все 2 забраковали.

>Есть чужой сервис с API возвращающий информацию о посте https://jsonplaceholder.typicode.com/posts/ где это идентификатор поста. API имеет ограничение по частоте запросов до 30 раз в минуту, а нам надо иметь возможность обращаться к нему в несколько раз чаще. При превышении ограничения происходит временная блокировка доступа. Для этого API уже сделаны зеркала (чтобы не усложнять задачу работой с прокси), api_addr = [‘https://jsonplaceholder.typicode.com’, ‘http://188.127.251.4:8240’,] Надо написать функцию на Python, которая по заданному идентификатору поста будет возвращать ответ метода API. Требования к функции:



Вызов функции не должен приводить к блокировке со стороны API.
Функция может вызываться одновременно из разных потоков и из разных процессов.
Функция должна эффективно использовать все доступные зеркала для доступа к API.
Любой разработчик команды должен иметь возможность вызывать функцию и просто получить результат.

Моя последняя версия. https://pastebin.com/aKYLDrcF. Снова получаю ответ, что api будет заблокирован и что ответа от моего решения можно ждать вечно. Питонач, что я сделал не так?
264 2502855
>>502853
при вызове из многопотока при использовании with lock() все вроде как работает збс, я проверял импорты, перезаписи итд. Что не так.
265 2502857
>>502853
уже и не знаю, куда копать. Откликнулся, блин, на django разработчика. Суть в том, что я не вижу даже малейшего применения этой задачи. Кмон, ставишь прокси и все, а тут какие-то зеркала, ограничения, мультипроцессоры, мультипотоки
266 2502878
>>487129 (OP)

> На слуху чаще всего Лутц



Я жду момента, когда прекратят везде советовать этого пидараса.
image.png451 Кб, 1280x720
267 2502888
Мы с пацанами ебались недавно с Big Data. И она реально была BIG - десятки миллионов строк, где-то доходило до 100 миллионов. Причем между ними еще джойны. Одна процедура с перекладкой данных исполнялась несколько минут (терпимо но хуево). Чтоб это все оптимизировать одному челику пришла гениальная идея - поднимаем ProcessPoolExecutor с числом воркеров чуть меньше чем число ядер на серваке (чтоб не занимать все ядра разом) и по этим воркерам раскидываем данные: например 1й работает с айдишниками ключевой таблицы с 1 по 30000, второй с 30001 по 60000 и т.п. - все это исполняется паралелльно.

Вопрос: хули мы поднимаем именно процессы? Почему треды не помогают? Тут же IO-bound, почему бы не высрать разом 20-30 тредов которые будут исполняться конкурентно?
image.png30 Кб, 707x468
268 2503005
269 2503021
>>502878
чтобы начать советовать самому?
270 2503048
>>502888

>И она реально была BIG - десятки миллионов строк, где-то доходило до 100 миллионов


мальчик, бигдатой называют то, что нельзя уместить в один компьютер, а 100 миллионов строк влезет обычный ssd диск, даже в оперативку может поместиться, смотря что за строки
271 2503052
>>502888
А ещё ты тролль-пиздун, не разбирающийся в матчасти
272 2503061
>>503048

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


И ты сейчас такой заскакиваешь в тред на белом коне, выдавая проверенный сурс подобного мудрого изречения
и закономерно срешь себе в штаны
image.png421 Кб, 720x600
273 2503077
pycuck
274 2503085
>>503077
Это постирония такая...
275 2503088
>>502853

>Питонач, что я сделал не так?


Много чего, это что называется "нужна алгоритмическая база"

Подумай, например, вот про что, допустим ты сделал запрос, у тебя залоггировалось время, потом ты выждал 55 секунд, и сделал сразу 28 запросов. В сумме 29. Потом подождал 10 секунд и сделал ещё 28 запросов.

Твой код сбросит счётчик, потому что с момента первого запроса прошло 65 секунд. Но для сервера ты сделал за последние 10 секунд 56 запросов, что выше минутного лимита и ты получишь бан.

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

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

Используй time.monotonic() для контроля времени

Можешь глянуть на PriorityQueue и на модуль heapq, там что-то готовое же более-менее есть

Глобально другую схему не мешало бы использовать
276 2503089
аноны подскажите с чего лучше начать вкат в IT,образование технического нету,есть только среднее, организация перевозок н ждт(кому интересно),мне 28 лет,нравится работать с цифрами,но больше всё же с анализом данных,до этого работал на гречневых работах за 40-50к
277 2503096
>>503089
попробуй решить эту задача и исправить код человеку >>502853

Будешь уметь такое делать - придумаешь опыт и вкатишься на мидла
278 2503097
Это тред про язык программирования Пайтон, тред для желающих сменить профессию на два блока выше, называется "МЫ ВАМ ПЕРЕЗВОНИМ".
279 2503104
>>503096
для меня это пока что просто набор букв и цифр от 0 до бесконечности
>>503097
ссылку скинь
280 2503106
>>503089
Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. Потом зубришь, именно, сука, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало. Когда напишешь свою первую имиджборду, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую FastAPI. Как переделаешь имиджборду, чтобы выдавала по крайней мере 25 тысяч запросов в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, ClickHouse. Отсос хиккующих выблядков / просто неудачников типа рейфага или сисярп/джава-хуесосов, которые сосут хуй по жизни не заставит себя ждать и уже через пол года ты будешь получать такие суммы, что любая баба будет течь при одном упоминании твоей зарплаты.
281 2503117
>>502853

>Функция может вызываться одновременно из разных потоков и из разных процессов.


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

Но в любом случае это отдельный процесс, к которому ты обращаешься, иначе ты не сможешь поддержать условие "из разных процессов".
282 2503118
>>503117
>>502853
попробуй поискать по словам
celery rate limit
там какие-то готовые решения будут
но придётся освоить селери, или же клепать своё решение
283 2503121
>>503088
я не получу бан, т.к. следующие 30 запросов я делаю с зеркала и по условию бан не получу.

С разницей по времени согласен, идея здравая.

Вопрос в задании скорее в том, как все это слепить, чтобы все работало так же для multiprocessing и thread?
284 2503123
>>503118
хз, вряд ли это селери задачка. А может и она и стал просто смотреть не в ту сторону. но суть в том, что тут не нужна обертка джанги и функции. А просто функция голая.
285 2503124
>>503118
энивей, я наверное, сдамся. Уже делаю новое тестовое для другой компании. Там дали нормальную задачу, а не головоломку, которой я не вижу применения.
286 2503132
>>503106
да на зп мне насрать если честно,мне и 60к хватит,я просто не особо люблю с людьми контактировать,конвенция это про правильность кодирования?я так понимаю практика всё же лучше будет,а кусры гавно какое-то
287 2503138
>>501397
ну взять и пересобрать. (циклом)
откуда мы знаем что за структура у тебя.
хоть пример бы скинул.
288 2503143
>>501673
зачем вы дикт таким образом объявляете?
не проще ли просто фигурными скобочками на манер жсона зафигачить?
289 2503144
>>503132

>на зп мне насрать


>мне и 60к хватит


Когда уже москвичей раскулачивать будем?
290 2503146
>>503143
Я скопировал из его поста, прост.
291 2503149
>>503121

>т.к. следующие 30 запросов я делаю с зеркала и по условию бан не получу


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

>а не головоломку, которой я не вижу применения


Это самая прикладная задача

С учётом требования работы на несколько процессов, тебе нужно использовать для решения внешний процесс. А раз так, то видимо надо селери, если ты в джанго-стеке
292 2503179
>>503144
как только так сразу
293 2503189
Подскажите непалящиеся библиотеки для автоматизации браузера
Селениум - хуета. Палится на раз, даже андетект версии
294 2503215
>>503189
Библиотека только текстовые команды в сокет управления браузера кидает.
295 2503315
>>503215
Понятно
А можете ткнуть носом где почитать про обход детекта автоматизации? Ну или куда копать
296 2503393
Нахуя ты используешь тайп хинты в питоне? Не зачем их добавили, а зачем ты, дурак, их используешь? Пиши докстринги и всё красиво, аккуратно, в твоём сраном блокноте всё подскажет. Нет блять, надо хуярить стрелочки, двоеточия, чтобы твои коллеги ёбнулись.
297 2503413
Для чего все дрочат на советы аля используйте слоты, чтобы экономить память и тому подобную хуиту? В какую залупу к питону тебе надо залезть, чтобы понять, как и главное нахуя нужен этот инструмент? Ну не подходит твоя крестовая отвёртка к винту, возьми плоскую, а напильник, который ломает всё нахер и делающий код нечитабельным в жопу себе засунь.
298 2503579
>>503393

>Нахуя ты используешь тайп хинты в питоне?


Потому что я не помню, что пишу.

>чтобы твои коллеги ёбнулись


Чем они им мешают?
299 2503640
>>503413
берем даунский медленный язык
@
байтоёбствуем
300 2503718
Сениоры и тимлиды, подскажите. Если у меня множество запросов идет, которые должны писаться в базу и читаться читай /b в момент чего-то необычного, как правильно это сохранять все в бд? Напрямую писать в бд - она ахуеет. Копить в какую-нибудь кафку и скидывать после накопления - пользователи могут не получать всех данных, использовать редис кеширования - я хз как это правильно делается.
301 2503721
>>503413
Слоты использовать надо, если объектов очень много будет, это память экономит. В остальном - лишнее.
302 2503806
>>503718
"Множество" это сколько? 10 в секунду?) С инсертом 1 новой строчки?)
303 2503809
Я просто хочу писать код на питоне и получать 30 тыс в месяц, разве я много прошу?
304 2503812
>>503393

>чтобы твои коллеги ёбнулись


Если "коллега" подойдет ко мне с такой претензией на счет тайпхинтов, я мгновенно предложу его кандидатуру на увольнение на следующем 1-1 с ПМом
305 2503858
>>503806
Иди нахуй, шутник.
5к записей прилетает в секунду
306 2503860
>>503858
Кликхауз говорит "дарова"
Пишешь туда батчами
307 2503862
>>503860
А еще кликхауз говорит, что update используется с alter table, специально помечая, что операция не самая приятная.
308 2503863
Пацаны, есть сервис в котором регистрируются некие события. К событиям привязаны пользователи, когда событие случается, все привязанные к нему пользователи должны получить уведомление на почту. Вопрос: как это лучше всего делать с расчетом на то что событий одновременно будет зарегистрировано несколько десятков тысяч? По какому механизму отслеживать наступление события и по какому - отправку письма?

Для отправки писем, думаю, долго думать не нужно, celery поставить и должно справиться. А как отслеживать наступление события? Бегать в бесконечном цикле, проверяя все записи в таблице РСУБД, есть ли среди них подлежащие исполнению? Как-то по-уебски выглядит. Тут очереди, работающие на push помогут? Тот же Реббит?

Исходим из расчета что все будет на async
309 2503866
>>503862
А, ну тут ничем не помогу. КХ хорошо работает на select и insert, но вот update у него де-факто вообще нет. Если тебе нужно кидать кучу апдейтов то даже хз что тебе посоветовать, постгря тоже с ними в большом количестве не оч ладит
310 2503873
>>503866
Апдейты скорее всего вообще не будут, а вот удаление - да. на счет удаления я хз насколько кх быстро работает
311 2503876
>>503863

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


>Для отправки писем, думаю, долго думать не нужно,


Как раз над отправкой писем в таком количестве очень даже надо думать, чтобы в бан не попасть

>Тут очереди, работающие на push помогут? Тот же Реббит?


Да, или через редис, там тоже очереди есть. Вопрос в том, что такое событие у тебя и как оно происходит. Вариант с циклическим опросом базы не всегда плох, если тебе не нужна высокая реактивность.
312 2503886
>>503876
Допустим у нас в данный момент активно 10к событий. И уже выполнено 100к, которые лежат в этой же таблице и должны там храниться еще год как минимум для истории. Каждый раз циклически опрашивать эту таблицу? Пусть у нас будет индекс на дате, но разве это норм вариант?

>что такое событие у тебя и как оно происходит


Юзер1 регистрирует событие "Осенняя распродажа дилдаков", Юзер2 и Юзер3 подписываются на него, когда due_datetime приходит (3 ноября 2022 в 14:30) Юзер1 и Юзер2 получают уведомления, также еще одно уведомление стоит слать ровно за сутки до этого события.
В будущем дополнительные уведомления можно слать в том числе через push-уведомления андроид
313 2503888
>>503873
Апдейт выполняется по манеру постгри - сначала мы удаляем строчку, а потом инсертим измененную ага
Только хуевее ввиду мутаций
314 2503889
>>503863
Триггер повесь на получение события в бд. Хендлер сделай для него в коде. Он проверит что да, все норм и запускает задание в целери
315 2503890
>>503886

>Юзер1 и Юзер2 получают уведомления


Юзер2 и Юзер3 очевидно
фикс
316 2504028
Как лучше всего работать с Excel из Питона? Нужно в рамках проги формировать excel-файлы которые будут отправляться пользователям, какой инструмент лучше брать? Грузить pandas ради одной этой фичи - такое себе.
317 2504074
>>504028
и ты собираешься остаться без одной из самых популярных и поэтому "покрытых" Гуглом библиотеки?
Ну не грузи. Сам себе дурачок.
318 2504105
>>504028
Я openpyxl заюзал разок для своей хуитки
319 2504118
Почему бы не пихать все просто в csv ммм? Даже тетя Зина сможет открыть csv в своем экселе
320 2504123
>>504118
ПМ или аналитик это не тетя Зина. А уж тем более если обыкновенный хуй с горы будет юзать сервис. ПРедставь ты зашел на www.ilovepdf.com/word_to_pdf - а тебе вместо цельного дока выдают 10 страниц, каждая - в отдельном pdf. На твои возмущения заявляют "так даже моя тетя Зина может склеить эти доки в 1! ты че тупой? не можешь склеить?"
321 2504259
>>504028
>>504105
Если просто запихать и отдать, то это лучший вариант.
322 2504459
>>504028
Lib/csv.py
323 2504486
Есть два телеграмм бота на питоне, чтобы не мешалась консоль, переименовал расширения в .pyw, хочу временно закрыть одного бота, как убрать нужного? В дисптечере задач не указан путь до файла.
324 2504547
>>504486
os.getpid()
325 2504653
Сравнивал разные способы распараллеливания cpu-bound задач. Сравнил тут multiprocessing.Pool, либу joblib и concurrent.futures.ProcessPoolExecutor. Вот краткий код где они все обрабатывали один и тот же список с числами, выполняя интенсивную числодробильную задачу perform

https://pastebin.com/tdMTQztc

Собственно, какого хера ProcessPoolExecutor всегда сосет у обычного последовательного счета? Паралелил на все мои 8 ядер. У меня смутное сомнение что ProcessPoolExecutor на самом деле поднимаете треды а не процессы

макака, какое нахуй "слово из спам листа"? ебанулся?!
image.png45 Кб, 727x268
326 2504656
Вот что макаба не давала мне запостить. Я хуею
327 2504657
328 2504762
>>504656
У тебя всё время уходит за запуск процессов и IPC

попробуй поставить длину цикла сначала 100 вместо 1000. Удивишься. А потом 1М, но сделай не 50 тысяч задач, а 50

параллелить имеет смысл только тяжёлые задачи
329 2504764
>>504762

>попробуй поставить длину цикла сначала 100 вместо 1000. Удивишься


Чем блять?
Я прекрасно осведомлен о unix process vs unix thread, вопрос в том хуле, приблуда из concurrent.futures настолько сосет
330 2504776
>>504764
она не сосёт, когда ты раздаёшь адекватные задания

попробуй запустить не 50_000, а 50 задач, но по миллиону шагов в каждой

Потому что тебе дороже задачу подпинуть, чем её посчитать
331 2504779
Для того чтобы программа стала работать быстрее применяю один простой трюк, нужно всего лишь...
332 2504787
>>504779
https://www.youtube.com/watch?v=DThU1DN_bMs

Вопрос только в том, хуле чансайз так сильно влияет? В видриле произошло заметное улучшение уже при chunksize=WORKERS_NUM. Еще чанксайз может значительно влиять на результат из-за ситуации на 2м пике, когда 1 воркер получил максимально интенсивные задачи а другой все выполнил и простаивает. Тут-то все задачи идентичны по своей сложности
334 2504882
>>487129 (OP)
Аноны, знание других языков программирования учитывается при приеме на работу? Например калькулятор на джаве или попытка сделать игру на ней же? Работу ищу разрабом python
335 2504893
>>504882
Вообще часто указывают, что знание других языков в плюс. Особенно если будет что-то компилируемое типизируемое в дополнение к питону (java, c/c++, golang)

Но это в дополнение, твой уровень будут оценивать по тому, насколько ты хорошо знаешь кишочки питона, а не количество других языков, особенно если на них опыт учебный, а не коммерческий
336 2504921
Всем привет. Я новичок. Не читайте пожалуйста мой пост если вы испытываете отвращение к новичкам. Посоветуйте что делать дальше, куда пойти. Закончил осваивать синтаксис питона, очень приятный язык, намного проще чем с++/c#.
Какое направление выбрать, какой фреймворк учить. Дайте совет. Сам по сообразительности себя низко оцениваю, мне всегда говорили, чтобы я что то понял, нужно по 5 раз сказать
image.png16 Кб, 424x235
337 2505027
Сап питонач. Нюфак на связи. Напердолил простую пикрил тестилку эффективности кусков кода и видимо где-то проебался. go() вставляю перед исследуемым кодом, fin() после. Вопроса два. Почему время выполнения зачастую показывает противоречивые значения при повторных тестированиях (в обоих случаях до 5 мс, но то один код быстрее, то другой)? И второе, в глубокой рекурсии, типа Фибоначчи, должно съедать много памяти, а сообщает только о паре сотен килобайт. tracemalloc.get_traced_memory() учитывает глубочайший стак рекурсии?
338 2505060
Как же я люблю порты сишных библиотек на питоне, чтобы невозможно было в исходный код посмотреть и сидеть мучаться...
340 2505066
>>505027

> до 5 мс


погрешность операционки. тести существенную нагрузку, много итераций, много повторений

гугли timeit
341 2505067
Новичок - на хуе торчок.
342 2505068
>>505066
С итерациями и средним по больнице понял, спасибо. А если ограничить использование железа через модуль resource, это снизит погрешности?
343 2505070
>>505066

>timeit


Смотрел, но его сложно интегрировать в определённый участок кода (от и до).
344 2505072
>>505068
не, миллисекунды измерять в современной операционке это дохлый номер

>>505070
ну я твой код не видел. но в чем сложность, вынес в функцию, замерил, откатил если больше не нужно
345 2505076
>>505072
Вот из-за этого:
if __name__ == '__main__':
import timeit
print(timeit.timeit("test()", setup="from __main__ import test"))

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

>для непрерывного вкуривания соотношений процессорное время/захаванная память


>>503640
347 2505128
>>505068
Что именно ты хочешь профилировать?
Можно делать что-то через cProfile, узнать, что съедает проц.
Ещё можно делать профилирование через psutil, там можно узнать, сколько твой или даже другой процесс поедает ресурсов, в том числе процессорного времени в разных режимах (пользователь, ядро и т.п.)
348 2505140
>>505128
На данный момент всё свелось к одному вопросу:
Как измерить количество памяти, которое было использовано во время выполнения куска кода?

tracemalloc.get_traced_memory() может показать пики, например, при создании объёмных списков, но не фиксирует расход памяти при заполении стека во время выполнения рекурсивных функций.
349 2505154
>>505140
В питоне нет того стека, в каком смысле он есть в Си

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

>cProfile


Нет измерения расхода памяти.

>psutil


Работает с процессами. Не тот масштаб.

>>505154
Насколько я понял, фреймы занимают очень дохуя памяти. В упомянутой ситуации это становится проблемой.
https://stackoverflow.com/questions/27564825/recursive-functions-memory-usage
351 2505171
>>505162
Чел, даже по твоей ссылке говорится, что меньше 500 байт вызов функции объедает

Питон не предназначен для глубокой рекурсии, там даже лимит какой-то не очень большой по-умолчанию, хотя это тюнится, смотри sys.setrecursionlimit(depth)
352 2505174
>>505171

>Питон не предназначен для глубокой рекурсии


Думаю, на этом остановлюсь и буду аккуратнее с ними, если встретятся. Спасибо за помощь.
353 2505175
>>505174
Для бытовых задач рекурсии более, чем достаточно. Споткнуться можешь только на каких-то алгоритмических задачах на DP с кешированием, где вот очень любят эти рекурсии

А в другом, питон это совсем другой язык, чем c/c++, вообще другая логика и другие проблемы. Тебе надо это понять и учиться писать на питоне как на питоне, а не как на си. Иначе лучше писать именно на си, ну или там на раст-го и т.п.
354 2505182
>>505175
Да я в бэк на джанге планирую, еле сдерживаю себя от напердоливания задуманного пета с текущим уровнем знаний. Уже несколько раз понял, что не зря, а то бы куча велосипедов было. На c/c++ совсем не стоит, потом однозначно go.
355 2505197
Отцы, посоветуйте, как лучше поступить. Мне скоро 30лвл, решил послать нахуй перекладывание бумаг в офисе на айти. Сам вроде не дурак, но никакого предыдущего опыта не было, пока вот полторы недели поковырял питон и жаваскрипт на всяких бесплатных сайтах типа сололерн, вроде получается, понимаю. Собсно вопрос, что лучше и эффективнее (по времени попадания на вакансию) будет: ковырять самому по гайду/роадмапу или въебать денег на курсы?
1643752006822.jpg45 Кб, 817x599
356 2505209
>>505197

>вкатываться в айти в 2к22

357 2505210
Тем кто не может найти подходящий тред для своего поста в айти делать нечего.
1640165461772.jpg81 Кб, 614x586
358 2505213

>2022


>вкат

3759A3BD-940B-442C-8376-F69102B4C4AC.jpg246 Кб, 800x630
359 2505215
360 2505216
>>505213
>>505209
И что? 47летним джунам после завода можно, а мне нельзя?
362 2505218
>>505216
Эти 47летние джуны сейчас с нами в одной комнате?
363 2505227
Есть один очень большой словарик из которого объекты удаляются через pop. Можно ли как нибудь посмотреть в какой момент gc удаляет эти объекты окончательно? Есть подозрения, что в этом месте у меня течет память, когда происходит очень частое добавление/удаление новых объектов.
364 2505229
>>505227
метод __del__ задай объектам
365 2505240
Прохожу бесплатных два курса поколение питон на стёпике, куда дальше двигаться? Стоит ли третий платный брать или другой какой? Где вообще взять инфу о том, что нужно знать для бекенда и какие курсы иои книги пройти, когда с нуля начал? На стёпике бесят примеры с математикой, тратится куча времени на подбор формулы, которая к языку отношния не имеет.
366 2505263
>>505240
Математика тебе точно не нужна. Пили веб-приложухи на джанге (инфу бери из доков, видосиков, статей) Отзывайся на все резюме (мидловые тоже), выполняй тестовые, проси фидбэк. Рано или поздно поймешь, как правильно писать такие вещи и получишь оффер.
Но будь готов к тому, что будут ещё требовать и знания фронта, обычно от питонистов требуют быть немного фуллстэком.
15884915773810.mp4219 Кб, mp4,
640x352, 0:03
367 2505274
Сап, питоняч, подскажи годную книгу по PySide PyQt. Пишу уже полтора года, хочется восполнить пробелы, чекнуть может упустил чего полезного..
368 2505282
>>505229
Словарь содержит ещё словари, там некуда del добавить, только если свой тип делать
369 2505324
>>505282
Значит в корневом словаре пишешь
def _del__():
for подсловари
del(каждый сука подсловарь колошматишь и удаляешь в нем елементы)
370 2505326
>>504653

>какого хера ProcessPoolExecutor всегда сосет у обычного последовательного счета?


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

>Потому что есть оверхед на создание тредов. Эта библиотека, в отличие от двух других, не позволяет распараллеливать задачу по ядрам, только по потокам в рамках одного ядра


У него же ProcessPoolExecutor, не b]ThreadPoolExecutor
372 2505341
Паренек учил питон,
Отложив перепихон.
Дальше следует мораль,
так как я не просто враль:
Изучение Питона - повредит перепихону!
373 2505342
>>505334
Да, точно, эта шняга должна параллелить по ядрам. Но там все равно ебический оверхед в concurrent.futures, который съедает весь прирост от ядер.
374 2505401
del переопределять не рекомендую, жопной боли будет больше чем профита, смотри в сторону weakref
image.png4,1 Мб, 1887x1419
376 2505473
Вопрос по OpenCV

Нужно определить есть ли на картинке разрыв кадра. Типа такого, как на картинке. Можно ли это как-то оптимально и быстро сделать?

Первое что пришло в голову: сравнивать пиксели по строкам. Если отличая в цвете слишком большие и такие различая характерны для всех столбцов строки, значит есть разрыв кадра.
Но интуитивно, это будет работать ооочень медленно. У меня порядка 70 изображений 720*1080, боюсь буду чекать пиздец сколько
хотя, наверное можно придумывать всякое, типа как только нашёл подозрительное место, пройтись по нему-же в других столбцах, не во всех, а в каждом например 10, и если подтвердится, то считать что разрыв был

Какие подводные?
377 2505509
мужики а где вы хоститесь?
оракл всё
378 2505525
Кто пилил интеграцию с OIDC/OAuth2.0, подскажите, можно ли сделать авторизацию не через редирект в браузере на форму, а через отправку пост-запроса с бэка?
Перевожу админку с чистого фласка с шаблонами на спа админку + фласк рест апи и не понимаю, как должна проходить сейчас авторизация.
Сейчас чтоб получить токен, тебе надо пройти несколько этапов редиректов, но для рест апи это же странно возвращать редиректы с хтмл-содержимым?
Тем более если клиент не из-под браузера пытается достучаться, как ему в таком случае авторизацию проходить, не эмулировать же селениумом веб-форму.
379 2505591
>>505525
Апи вообще никоим боком к авторизации, клиент уже должен иметь ключ, чтобы его использовать.
381 2505630
>>505591
Клиентом SSO выступает бэк, а не пользователь, иначе каждому пользователю нужно выдавать свой client_id и client_secret.
Бэк проверяет, есть ли заавторизованная сессия. Если нет, то редиректит на форму SSO под своим client_id. Если пользователь её проходит, то SSO редиректит обратно на бэк. Бэк получает от SSO параметры и делает запрос в SSO на получение токенов и юзеринфо, создаёт авторизованную сессию, инфа о сессии хранится в куках.
Я же хочу перейти на токены, т.е. при попытке пользователя зайти куда-то будет проверка не на сессию, а на токен, который он может получить в случае успешной авторизации.
Но сейчас он авторизоваться и получить токен может только через редиректы в браузере, а мне это надо сделать на бэке и просто ему выдавать токен, если он передал корректный логин-пароль.
382 2505687
>>505630

>если он передал корректный логин-пароль


Получаешь логин логин-пароль, передаёшь их провайдеру SSO, или где ты там токены собираешься получать. В чём вопрос-то?
383 2505787
>>505473
Ну если ты чистый датасаенитст, то будет медленно, да.
А так это ж сравнение векторов - cuda, avx вся хуйня. Задача перемалывается просто в лёт (единственное узкое место - передача cpu-gpu, поэтому лучше векторизацией молотить).
384 2505834
>>505402
Полная хуета имхо, так вообще про любую профессию можно сказать, а тебе чтобы там обязательно надо знать то, то, пятое десятое, огромный список, иначе хуевый будешь.
Знать конечно много нужно, но надо работать начинать с самым минимумом и продолжать развиваться уже походу, дополнять информацию, иначе вечным учеником останешься если балбеса с видоса послушаешь. Вообще удивлен, видосы у него в целом адекватные
385 2505889
>>504653
Через Pool ты не возвращаешь данные обратно в главный процесс, а через Executor возвращаешь, отсюда и замедление, увеличь размер чанка в функции map до 500 и приятно удивишься.
386 2506071
>>505473
Попробуй детектор границ какой-нибудь ёбнуть, и потом ищи строго горизонтальные (или вертикальные) участки.
387 2506108
>>506071
Это прокатит, если использовать кастомное ядро свёртки вместо ядер Собеля и Кэнни. Обычный edge-detection будет выдавать в качестве линий разрыва линии горизонта и им подобные. Нужно увеличить вес горизонтальных компонент градиента в ядре свёртки.
image.png1 Кб, 123x93
388 2506272
Помогите плс я не могу нагуглить это.
Стоит добавить в программу любой импорт (VScode) терминал начинает выдавать вот эту хуйню вместо исполнения кода, что там написан
В режиме отладки работает нормально.
Если убрать импорт стейтмент тоже. В обще дело точно в нем
389 2506290
>>506272
Убрал файл из мусорки где куча других файлов в другой фолдер и ошибка пропала.
Все еще не понял почему так нахуй, если кто-то может объяснить втф буду благодарен
390 2506352
>>506290
Вот делать мне больше нечего, кроме как в твоей мусорке копаться. перемещай файлы по одному пока эффект не пропадет, когда задолбаешься, почитай про бинарный поиск и напиши приблуду. хоба - литкод у тебя в мусорке! сомволично
391 2506484
>>505274
Табе па Qt трэба падручнік, а не Pyside.
392 2506503
Пришло время подтянуть алгоритмы!

В какой книге хорошо описаны все модные штуки типа itertools, functools и есть задачки?
393 2506539
>>505326

>Потому что есть оверхед на создание тредов


ебанутый? ебанутый.

Нет никакого оверхеда на создание тредов, только если ты не выбрал в качестве единицы вычислительной работы " i +=1".

Это все мифи хайлоад-дрочеров
394 2506590
>>506539
а ещё на самом деле современный линух создаёт на каждый тред по процессу замапленному на тот же участок памяти
395 2506633
>>506503
Нахуя тебе книга? Доки почитай.
396 2506853
есть в пучарме какой-нибудь трекер ссылок в памяти? посмотреть, что ссылается на объект
закрытый виджет никак мусорнуться не может
палю через __del__
397 2506876
>>506853
gc.get_referrers?
15362387175710.webm518 Кб, webm,
1280x720, 0:01
398 2507025
>>506876

да! спасибо!

заодно открыл для себя weakref - слабые ссылки, которые не нужно чистить ёршиком
399 2507193
Привет, питонач.
Есть очень важный вопрос. Не так давно с коллегами затеяли кое-какую активность, которая грозит перерасти в бизнес. С горем пополам написали бота, написали для него обвязку, чтобы его запускать, прикрутили метрики, поселили в инфраструктуру.
Бот работает, приносит деньги, нужно теперь привлекать средства извне.
Для этого нужно сделать быстрый, качественный личный кабинет.
Для этого хочется все сделать нормально с первого раза, ну там, микросервисы, вот это всё. Kubernetes уже есть, есть опыт развертывания микросервисов на fast Api и Flask внутри.
Нет опыта именно архитектурного постороения всей этой истории. Пока смотрю на API Gateway - нам нужно довольно много компонентов, все под аутентификацию, есть ли у тебя под рукой хороший пример реализации всего этого под микросервисы на Python?
В частности, интересует реализация с использованием Kong и какого-нибудь микросервиса в качестве источника пользователей (а не внутренних пользователей Kong)
В общем, любая информация и комментарии на эту тему будут полезны, не могу найти подходящий пример.
изображение.png257 Кб, 480x360
400 2507328
>>507193

>Не так давно с коллегами затеяли кое-какую активность, которая грозит перерасти в бизнес. С горем пополам написали бота, написали для него обвязку,



>Члены этнической группировки дилеров, о которой заявил в пятницу, 17 декабря, министр внутренних дел России Владимир Колокольцев, были задержаны в Челябинске в августе этого года.



Нам-то не гони!
401 2507396
>>507328
Бля,удоли!как ты вычислил???
402 2507445
Когда ебанушки додумаются пихать в IndexError размер массива и собственно индекс?
403 2507495
>>507328
Не, там про крипту. Есть чего по делу-то? Нужны рекомендации от матёрого архитехтора.
404 2507517
>>507495

> Есть чего по делу-то?


нет. а ты ждал, что я на тебя работать буду?
не смог задать интересный вопрос достойный обсуждения - обсуждения не будет.

Бери и пиши.
Ты просто зумерок из поколения гугл, который считает, что все на свете можно скачать в том числе и шаблоны архитектуры.
405 2507524
Можно ли вкатиться в питон бекенд в 30 лет без образования? Или лучше во фронт или мобилки идти?
406 2507603
>>507517
Я тебе указал на вполне конкретный шаблон архитектуры, я не прошу за меня что-то делать.
Я просто попросил гайды, есть ли какие-то варианты скрестить Kong (тоже вариант, который я нашел без твоего участия) с python-микросервисом, а ты тут выебываешься.
Мне кажется, это всё от бессилия и собственного незнания, давай вместе посидим посмотрим, может кто взрослый придет и не такой агрессивный.
407 2507655
>>507524
Иди лучше нахуй, долбаеб
Информация об аккаунте 408 2507679
Здарова двачеры. Кто знает как в библиотеке Telethon получить информацию о телеграм аккаунте? Я знаю о существовании GetInfoRequest, подскажите как отправить эту информацию в личные сообщения!
Я пишу бота для того чтобы пользователь увидел информацию о своем аккаунте в читаемом виде
409 2507685
>>507603
Какие еще гайды?
Сука, нужен тебе дополнительный прокси - ну ставь. Пусть это будет Kong, если тебя так название зацепило.

Ты похоже не программист этого микроскопического телеграм-бота, а тот самый друг-трепло.
410 2507725
>>507655
Почему такой агрессивный? Нормально же спрашиваю
image.png79 Кб, 1758x270
411 2507759
>>487129 (OP)
Пацаны, тут тема такая:
Есть одна тяжелая задача, которая ищет любую пару множителей числа, если там нет нулей (кароч не заморачивайте голову, задача долго считается со сложностью O^2)

Я разбил ее на 8 частей и каждую часть считаю в PoolProcessExecutor параллельно, как только ответ будет найден, надо завершить все другие инстансы и выдать ответ.

Делаю я это при помощи объектов Future (по-другому хз как). Благо ProcessPoolExecutor.submit возвращает как раз футуру. Вот я делаю wait с опцией FIRST_COMPLETED, то ест ьмы закончим как только первый воркер вернет результат. Но вернуть-то блэт он может не только результат а простой None (то есть функция завершилась и ничего не нашла). Как в таком случае продолжить работу? Второй раз запустить
done, not_done = wait(futures, return_when=FIRST_COMPLETED)
не прокатит - 1 футура уже завершилась

Данный вопрос по сути идентичен в случае использования asyncio, там те же футуры
image.png215 Кб, 1460x1603
412 2507770
>>507759
not_done каждый раз можно передавать дальше в рекурсивную функцию как на примере это да. Но пример на скрине не совсем в тему. Потому что между process и async есть разница. async успешно завершится а вот процесс будет бежать и дальше, даже после завершения основного процесса, который его породил. Пох что я пишу exit(0) в самой проге, она завершается но остальные процессы по-прежнему продолжают выполнять свою работу, future.cancel() не работает
414 2507786
>>505509
Яндекс Клауд (серверлесс, ололо)
AWS Free Tier, если успел зарегить в марте.
Hetzner, если успел закинуть денег через bank trasfer.
DigitalOcean, если успел закинуть денег в марте.
415 2508004
Не очень понимаю про генераторы, все эти map lambda и.д.

Вот допустим у меня есть классический пример функция, которая числами что-то и выдает результат

Как сделать второй список из первых чисел в квадрате, но только тех что не равны нулю?

return list(map(bimbofication, [n for n in numbers if n != 0]))

выдает список типа [None, 234, None, 463467, None] но мне нужен [234, 463467]

ЧЯДНТ?
416 2508008
>>507786
Некоторые сервисы сейчас разрывают контракты с руснёй, даже если у тебя баланс большой
417 2508010
>>508004
простите что так наркомански написал

Вот допустим у меня есть классический пример: функция, которая делает с числами что-то и выдает результат

Как сделать измененный второй список из первых чисел в списке, но только тех что не равны нулю?
418 2508012
>>508004

>ЧЯДНТ?


Ты пидорас и хуесос

return list(map(bimbofication, (n for n in numbers if n != 0)))
OR
return list(map(bimbofication, filter(lambda n: n != 0, numbers)))

Я не ебу что твоя функция возвращает, сам обрабатывай свои null
419 2508013
>>508004
0 и None разные вещи
0 != None, проверь в idle

делай
[n for n in numbers if n]
ну или отфильтровать, есть масса инструментов в itertools для таких задач
420 2508014
>>508013
не-не, !=0 это условие, чтобы нужная функция этот ноль не обрабатывала и не вообще добавляла в новый список. А вместо этого добавляется None

>>508012

>list(map(bimbofication, filter(lambda n: n != 0, numbers)))


А чтобы этот список был без None-значений внутри не получится сделать сразу? Надо потом вручную их убирать?
421 2508017
>>508008
Эти два не разрывают.
Ну а хохлопарашу типа Namecheap в расчет не берем. Это в принципе бизнес не айтишный, а "говорильный". Техподдержка довольно простых услуг. Они не могли поступить иначе.
422 2508018
>>508008
вот, кстати, согласно счетам, списали НДС в Россию на несколько баксов.
Интересно, куда эти деньги на самом деле делись?
image.png12 Кб, 582x127
423 2508019
>>508014
что такое bimbofication? И что у тебя в numbers? В numbers точно нет уже None?
424 2508021
>>508017
Contabo разрывает, это немцы. Ещё кто-то. В общем проблема с надёжностью
425 2508022
>>508019
Всё, я дурачок, нашел где проебался, спасибо!
426 2508024
>>508018
Не понятно, почему должны списывать НДС в РФ
Услуга оказывается за границей, поэтому НДС должны платить там, по идее

Если ты товар покупаешь и вывозишь, то НДС тогда ты не должен платить, тебе вычет должны делать. А типа когда ввёз в РФ, то ты сам уже здесь платишь НДС
427 2508032
>>508024
я сам не понимаю.
что я должен нажать в Hetzner чтобы отказаться платить НДС будучи и резидентом и гражданином РФ ?
У них там есть какая-то кнопка и они присылали письмо, но я ничего не понял.
В конце концов, речь идет о паре баксов, но хотелось бы отказаться от этого символически.
428 2508038
Как работать с файлами, когда их нужно отдать клиенту? Клиент нажал кнопку "сформировать xls", отправил нам post-запрос, мы запускаем какой-то процесс и дальше што? Варианта по факту всего 2:

1. Мы отдаем в виде респонса этот эксель-файл
2. Мы отдаем в виде респонса ссылку на скачивание файла

Как работать правильно?
429 2508040
>>506590
Анус ставишь?
430 2508111
>>508038
в чем вопрос?
<?php
...
header("Content-Type: text/csv");
header("Content-Disposition: attachment; filename=file.csv");

извини, не заметил что спутал тред
431 2508113
>>508038

Что есть "правильно" ?
Правильно так как тебе и твоему кабанчику выгодно в масштабе времени.

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

А разгадка одна: засрать на борде мозги - анонимно и бесплатно, а на работе за такой подход обоссут.

На самом деле заебали.
432 2508116
аноны всем привет,прочитал я эту книгу по питону(как устроен Питон,Мэтт Харис),половину понял,половину нихуя не понял о чём речь,так что мне дальше лучше изучать,я с нуля если что начинаю,в IT пошёл потому что нравится работа с цифрами и логикой,энглиш тоже начал зубрить
433 2508156
>>508038
Это называется аттачмент. Выдаешь специальный заголовок, что будет файл и срешь его контентом прямо в вывод.
434 2508157
>>508116
ну и что ты у нас спрашиваешь, если мы не знаем будущее?
Айти - это не ролевая игра.

Одно можно утверждать наверняка:
Если будешь рассылать резюме и настойчиво корректировать свои навыки, найдется и тот дурачок, что и тебя позовет работать.
435 2508159
Насколько безумно писать на питоне в функциональном стиле? Я всей душой ебал ООПные абстракции, солид и прочие приколюхи. Функции мне понятны и удобны.
436 2508160
>>508159
В сильно функциональном будет говно, но миксовать можно и нужно.
437 2508161
>>508157
т.е могут взять даже без опыта?если я просто знаю какую-то инфу из книг?незнаю может ещё курсы посоветуете какие-то или азы там кода поучить,хотя бы основу какую-то которую должен знать каждый кто кодит на питоне
438 2508167
>>508161
Эво как! ну могут и взять стажером тыщ на 20 в совковый институт с прицелом на то, что посмотрят на что ты способен.

Пройди на Степике "Python основы и применение". Там какие-то задачки на api, xml, обработку текстов.

Ты я вижу парень молодой, гиревик, боровик!
Тебе должно понравиться.
439 2508190
>>508167
не сказал бы что молодой прям,мне 27 лет,скорее уже пожилой,хорошо,но это скорее всего только в четверг смогу,завтра и в среду работаю
440 2508192
>>507759
https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.as_completed

Можно по ним идти и ждать нужное значение, если успех то просто брейкнуться оттуда и закенселить оставшиеся?
441 2508197
Как вы собираетесь работать работу? Вот вам скажут нужно сделать что-то в чем вы не разбираетесь, и че в тред (неправильный кстати) пойдете спрашивать даже шапку не прочитав мммм....?
442 2508200
>>508197
понимание что к чему приходит только с опытом,не работая работу этот опыт не получать,не так ли?
443 2508203
>>508197
Ты дурачок штоле? Не разбираешься, так разбирайся и делай.
444 2508210
>>508190

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



А ты давно в инете?
Ты хоть понимаешь что нам насрать на тебя и твой четверг?

Писать нужно только то, что способно изменить человека или остаться в вечности
445 2508213
>>508203
А те кто не может страницу вверх пролистать че делать будут?
446 2508216
>>508213
Жить в психоневрологическом интернате.
447 2508220
>>507445
Че молчите пидорки?
448 2508223
>>508210
,пониимаю,ну я сохранил твои сообщения про курсы на степике и задачи,будет время займусь этим
449 2508343
>>507685
Ты прав, я не разработчик, я про инфраструктуру в основном.
Так все-таки, как насчет примера, м?
И нет, это не телеграм бот.
450 2508350
>>508343
Так ты не задал сам вопрос в программистких терминах.
Просто не понятно что есть и каких качеств хочется достичь.
Перечислил какие-то баззворды, в которых никто не обязан разбираться.

Ты заметил что тебе никто не ответил, кроме меня?

Но если ты прям хочешь уличить меня в невежестве, давай посидим подождем какого-нибудь уникума, который с тобой на одной волне.
451 2508352
>>508343
и за что тебе вообще платят?
"инфраструктура" это что?
в visio стрелочки рисуешь?
452 2508387
>>508040
https://stackoverflow.com/questions/807506/threads-vs-processes-in-linux
А ещё на самом деле для линуха не существует "процессов" и "тредов" как таковых, все это "таски" для ядра. Вообще, если разбираться нормально, то на самом деле мало разработчиков понимает что вообще происходит в планировщике линуха и насколько сильно понятия тред и процесс отличаются в шиндоусе.
453 2508405
>>508387
Ну как бы про критическую разницу процессов винды и линукса все знают. А вот про детали устройства процессов, тредов, работу планитовщика, управление ресурсами и т.п. уже сильно меньше.
454 2508409
>>508387
Можешь какую книжку или курс лекций посоветовать по устройству ядра линукса? Обзорную, для тех, кто с программированием и линуксом дружит, но не с ядром?
455 2508414
>>508409
а зачем? тебе в контексте питона ничего и не нужно.

ты все главу манов под номером 2 и 77 прочитал?
Прочитай. В смысле запускаешь "man 2 clone" и далее по ссылкам
456 2508415
>>508414

> 2 System calls (functions provided by the kernel)


> 7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)


2 и 7, конечно же
457 2508422
>>508350
В каких тебе еще терминах написать-то?
Итак, я попробую еще раз, а ты скажи, что здесь баззворд и вот это всё. А, да, и, отвечая на вопрос о том, почему мне никто не ответил - видимо, потому что тут народ только учится и никого со схожим опытом нет, еще бы, это не фласки-джанги натягивать.
Итак. У меня есть необходимость создать продукт, который будет представлять из себя личный кабинет. А ля "залогиниться, посмотреть баланс, отправить денег". Соответственно, из функционала прямо сейчас интересует регистрация и авторизация пользователей. Хотелось бы сделать сразу правильно, поэтому планируется использовать паттерн API Gateway с использованием Kong.
Есть понимание, как сделать авторизацию на уровне одного сервиса, но нет понимания, как это расширить на весь "зонтик", как заставить Kong использовать мой auth-сервис в качестве источника пользователей и токенов.
Так понятнее?
Если есть какой-то гайд, который это описывает, я буду очень признателен, так как вот прямо такого мне делать еще не приходилось.
458 2508427
>>508422

> но нет понимания, как это расширить на весь "зонтик", как заставить Kong использовать мой auth-сервис в качестве источника пользователей и токенов.


Ну это просто:
Сначала читаешь документацию на Kong.
Понимаешь ее.
Экспериментируешь.
Набираешься опыта
...
возвращаешься в прошлое и изучаешь C++ за 21 день !

Да иди нахуй, бесполезный рисователь стрелочек.
Ты не поймешь работу программиста не начав программировать.
459 2508430
>>508427
Ты просто тупой и не понимаешь задачу, как я погляжу.
Что за "работа программиста" такая, которую никто понять не может? Что-то вроде загадочной русской души?
Может быть, если бы ты оторвал жопу от кресла и вышел бы из треда хотя бы, то нашел бы себе "работу программиста" и каааак понял бы. Учить он меня будет, щегол блять.
460 2508431
>>508427
Ты просто тупой и не понимаешь задачу, как я погляжу.
Что за "работа программиста" такая, которую никто понять не может? Что-то вроде загадочной русской души?
Может быть, если бы ты оторвал жопу от кресла и вышел бы из треда хотя бы, то нашел бы себе "работу программиста" и каааак понял бы. Учить он меня будет, щегол блять.
461 2508439
>>508430
задача тут очень простая : сделать для непрограммиста дизайн системы чтобы позволить ему внести некий вклад в "общее дело" пока его друг-программист давно послал его нахуй и просто пишет код. Это позволит ему в будущем претендовать на некий процент от прибыли.

Но правда в том, что ты ему не нужен.
462 2508455
сап, с какими библеотеками лучше всего сделать бота для веба, что бы регестрироваться и заливать видосы?
463 2508473
>>508422
Так как вы задаёте подобные вопросы (в питоновском треде), я бы на вашем месте взял Django. Там это есть из коробки, а самостоятельно вы сделаете всё через одно место. Но Django - это не для слабых духом. Если вы не умеете толком программировать (российский миддл обычно умеет разворачивать такие вещи), то вам придется учиться и программированию, и фреймворку.
Мб, поэтому можно и Kong, без понятия, что это такое.
464 2508481
>>508473

>поэтому можно и Kong, без понятия, что это такое.


Какой-то инструмент для унификации АПИ и чтобы часть функционала в виде плагинов прикручивать. Это я сейчас посмотрел, раньше не слышал

Прочекал ХХ, там Kong встречается, но нашлись примеры только в паре "Hong Kong", как бы о другом

Видимо технология скорее экзотическая и не факт, что востребованная
465 2508487
>>508481
Прочитал жопой. У нас перед АПИ обычно стоит message broker (rabbitmq) и иногда ещё одна прослойка на FastAPI. Но я сам архитектуру не писал целиком. По FastApi gateway book книжки находятся.
32A60E13-BC65-4371-882E-E5F12FDA6AA5.jpeg95 Кб, 566x251
466 2508489
Есть ли библиотека с нейронкой, которая будет детектить цифры на пикрил?
467 2508491
>>508489
pytesseract обсирается в 100% случаях
815AA9D9-E701-4CA1-8555-B6F0C40F0B14.jpeg119 Кб, 730x242
468 2508493
>>508489
Если все так просто, то по-любому кто-то итт так сделал, чтобы не вводить капчу. Да ведь?
6D14A32A-7E48-4ED6-A813-DD7E12CCAF8A.jpeg417 Кб, 828x611
469 2508497
Ну как не сложно, нейронка должна быть умнее двачера
1.jpg61 Кб, 792x565
PyCharm + Qt Designer: моментально закрывается окно в Windows 10 470 2508534
Первый день пытаюсь разобраться с GUI. Проблема в том, что моментально закрывается (или вообще не открывается) окно при запуске в интерпретаторе Python из под ОС Windows при двойном нажатии ЛКМ на файле программы. Ассоциация файлов .py c интерпретатором Python установлена корректно. При сохранении в формате .pyw ничего не меняется. В режиме отладки в PyCharm программа открывается и закрывается корректно. С файлами работающими в командной строке и использующими функцию input() такого не происходит. Заметил, что если открывать программу через консоль винды, то программа открывается нормально.
471 2508545
>>508534
А если убрать sys.argv?
2.jpg65 Кб, 840x376
472 2508547
>>508545
Не запускается
473 2508600
>>508534
а если убрать sys.exit() в конце и оставить только app.exec?
474 2508624
>>508600
Ничего не меняется, в винде при открытии мгновенно закрывается, в PyCharm'е и через консоль нормально отрабатывает. Это нормально что при проверке версии python -v у меня выводится такая шняга длиной в два экрана?
475 2508629
>>508624
В ide другое окружение попробуй установить и прибить гвоздями, и установить все зависимости
476 2508667
>>508473
Проблема в том, что у нас та часть, которая отвечает за бота, уже сделана в духе микросервисов, но щас живет просто в изолированной среде безо всякой защиты. Хотелось бы прикрутить к этому еще некоторое количество микросервисов и фронт (уже пилится в фоне), но тогда встает вопрос того, чтобы это всё засунуть под "амбреллу" API Gateway.
Раскуриваю прям щас вопрос с Kong, он умеет всё, что нужно, но, видимо, придется или модифицировать имеющиеся плагины, или писать свой, чтобы можно было ходить в свой микросервис за токенами и пользователями.
На Django опыт имеется, но с ростом клиентов (хотя бы в сто раз) ее может начать не хватать и придется переписывать вообще всё, сейчас есть на это время, сразу сделать так, чтобы держало нагрузку. Спрашиваю в Python-треде, поскольку все сделано на Python - и бот, и микросервисы, и интеграция нужна именно в этом направлении.

Но спасибо за ответ без ненависти.
477 2508680
>>508667

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


У вас там хотя бы 10рпс уже есть?
изображение.png372 Кб, 550x381
478 2508735
479 2508740
>>508493
Просто кто-то в треде заявил, что убирается неком фильтром.

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

Для вайпа спамом тоже сошло бы. Но ты же не собираешься нас завайпать, ничтожество?
480 2508742
>>508387
Можешь попробовать поднять 10 тредов и запульнуть в них какие-либо io-bound задачи а потом поднять так же 10 процессов. Погляди за сколько все исполнится и также погляди на расход оперативной памяти. До кучи можешь еще 10 горутин из golang со схожими задачами поднять и снова заценить расход оперативы
Что написали красноглазые шизофреники 13 лет назад меня мало заботит
481 2508755
>>508740
Мне бы и 50% хватило.

> Но ты же не собираешься нас завайпать


Конечно нет. Да и при желании бы не смог это делать продолжительное время, незабаненные прокси на дороге не валяются.
482 2508866
Бесплатный курс на степике норм для вкатуна с нуля?
483 2508929
>>508487

>У нас перед АПИ обычно стоит message broker (rabbitmq)


ты хоть сам понял, что написал?
484 2508955
Нужнео в датафрейм добавить значения чисел в диапазоне. Если делаю по старинке:

import pandas as pd
df = pd.DataFrame(columns=['col1'])
for i in range(1, 100):
df = df.append({'col1': i}, ignore_index=True)
df

То все работает, но ругается, что метод append работать не будет в будущем и предлагает использовать concat. Подскажите, как в данном случае использовать concat?
485 2508968
Поясните положняк по управлению пакетами и окружением в 2022. Кто что юзает: pdm, poetry, pipenv, сonda? Или забить и оставаться в говне на venv+pip?
486 2508991
487 2509001
Не думал что опять вернусь к джанго-говну, но рынок диктует свои условия

Как подменить модель User на свою? Мне незачем делать так:

from django.contrib.auth.models import User
class MyUser(User):
...

Я хочу не расширить а запилить целиком свою модель User и потом работать с ней
488 2509002
>>508929
Да, что ты из этого не понимаешь?
489 2509012
>>508991
Ты хотел сказать flakes, потому что ванильный nix допускает нечистые в функциональном плане операции, которых навалом в python310Packages.*, и при апдейте он с определённой вероятностью распидорашивает окружение. Плюс пинить версии приходится через костыли.
Потому я через никс ставлю только сам пистон, а окружение предпочитаю доверять специализированным тулзам.
490 2509015
>>509001
class User(ABC): ?
491 2509020
>>508968
Docker + venv
492 2509035
>>509012

>flakes


Что за flakes? Нахожу только flake8, но это не про пакеты
493 2509044
>>509035
Это движуха из мира nix: https://nixos.wiki/wiki/Flakes
Если коротко: чуваки двадцать лет пилят чисто функциональный менеджер пакетов Nix, который раз и навсегда решит проблемы всех пакетных систем. Однако оказалось что весь окружающий мир вполне себе стейтфул, что их волшебные функциональные заклинания тут могут работать непредсказуемо и теперь пилют дополнительный слой костылей.
495 2509073
>>508955

>df = df.append({'col1': i}, ignore_index=True)


df = pd.concat([df, pd.Series({'col1': i}).to_frame().T], ignore_index=True)
496 2509077
>>508955
пиздец. это тестовое? мы вам не перезвоним
>>509073
а вы, похоже, слишком круты для нас
497 2509088
>>509052
>>509073
>>509077
Спасибо, аноны. Я решил не изобретать велосипед и сделал это через список

import hashlib
import pandas as pd
lst = []
for i in range(1, 100):
lst.append(hashlib.md5(i.to_bytes(64, 'big')).hexdigest())
df = pd.DataFrame(lst)
498 2509121
>>509044
То есть получается, что и NixOS непредсказуема?
499 2509185
>>509121
Скажем так, никсос даёт инструменты для воспроизводимой сборки, но не гарантирует что мейнтейнеры не вкорячат stateful конструкции типа curl someproject.org/install.sh.
В то же время я считаю никсос блестящим проектом, продуктивным взглядом в будущее и всячески желаю ему здоровья. Пусть причёсывают флейки до продуктивного состояния.
500 2509417
>>487129 (OP)
Подскажите совсем новичку. Обучаюсь на языке Питон.
Можно ли сделать "генерирующиеся" переменные?
К примеру, выполняется цикл(while), и если выполняется определенное условие(if), то результат сохраняется в переменную, к примеру: result_1. Следующая переменная будет: result_2, и т.д.
501 2509430
>>509417
Можно, через globals/locals, setattr и другие трюки, только не нужно

Но тебе скорее всего нужно не это, а надо научиться работать со списками и словарями, использовать их для этих целей
503 2509642
>>509417
Правільны падыход іншы result = []. Прыклад https://goonlinetools.com/snapshot/code/#xa8u3ptmjorwspsxuiatc
Тред утонул или удален.
Это копия, сохраненная 13 января 2023 года.

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

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