Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 366 64 134
Питон-тред №173 /python/ Аноним 29/01/25 Срд 13:29:52 3375375 1
image.png 44Кб, 587x598
587x598
Тред, посвящённый языку программирования Питон, #173

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

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://online-python.com/ - листинги и онлайн-запуск
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, но разницы почти нет)
https://github.com/yakimka/python_interview_questions - интересная подборка, масса разнообразных тем и вопросов, для продолжающих, всё на русском

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

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

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

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

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но частично переработанная под язык Python: https://www.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.

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

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
текущая шапка: https://goonlinetools.com/snapshot/code/#z0o243n8t8byiy2zptv27
Аноним 29/01/25 Срд 13:43:33 3375388 2
Напоминаю вкатунам, что работы на питоне НЕТ. Питон это просто мелкий скриптовый язык, на котором пишется мелкая автоматизация. Ну и в дата саенсе используется, но как дополнительный инструмент, без глубокого знания матана и математической вышки вы никому не нужны.
То что вам впаривают на курсах - это пиздеж.
29/01/25 Срд 13:56:15 3375396 3
image 59Кб, 470x699
470x699
>>3375388
>работы на питоне НЕТ. Питон это просто мелкий скриптовый язык, на котором пишется мелкая автоматизация
Подтверждаю.
Инфоцыгане с курсов создали 3к фейковых вакансий.
Аноним 29/01/25 Срд 15:06:30 3375454 4
>>3375396
Ну на бэкенде удалёнке всего 250-300. А остальное там разрознено всё: AQA, DevOps/Sysadmin, Data Science/Data Engineer/DWH.
Аноним 29/01/25 Срд 16:54:50 3375649 5
image.png 57Кб, 851x615
851x615
image.png 19Кб, 476x399
476x399
>>3375396
Ну давай разберем по частям тобою написанное.

1) Убираем нерелевантные слова - data, machine, machine, devops, преподаватель, куратор - чтобы отсеять девопсов, DS, ML и тех, кто ищет наставников для курсов
2) Убираем пункт "Искать в описании вакансии" - питон часто упоминается, как вспомогательный язык стека.

Остается уже не >3к, а всего 733 вакансии. По всем странам, далеко не все они удаленочные. Из них 472 вакансии требуют опыт от 3 лет, для джуномидлов подходят оставшиеся 261 вакансия.

Повторяем процедуру с резюме - 231 тысяча резюме, ищет работу примерно 14% (это можно вычислить по статистике открытых для обычных пользователей резюме), то есть 32 тысячи человек.

123 человека на вакансию.

А теперь проверни подобные операции с любым другим реальным языком промышленной разработки и сравни результаты.
Аноним 29/01/25 Срд 16:59:20 3375651 6
Например, по Java:
Ищет работу 14к человек.
Количество вакансий с аналогичными фильтрами: 1180. 12 человек на место. Чувствуешь разницу?
Аноним 29/01/25 Срд 17:14:43 3375661 7
>>3375651
Хуйню не неси. В джаве такой же уровень конкуренции. Если хочешь поменьше конкуренцию, то надо в девопс/1с/qa стартовать.
Аноним 29/01/25 Срд 17:24:44 3375664 8
>>3375661
Я тебе сейчас с цифрами доказал, что уровень конкуренции в 9 раз ниже. В Джаве высокая конкуренция, но в отличие от питона есть вакансии и работа, а в петухоне тысячу вкатунов устраивают голодные игры за полторы вакансии.
Аноним 29/01/25 Срд 17:25:21 3375665 9
>тысячи вкатунов
fix
Аноним 29/01/25 Срд 17:34:16 3375669 10
>>3375375 (OP)
>пишешь на питухоне, страдаешь от динамической лапши 24/7
>обмазываешься аннотациями, постепенно интегрируешь mypy, со временем mypy работает в strict режиме.
Сделал из вашего хуёвого и ебучего питона человека, ну и заодно затерпел и не стал перекатываться на сраное говно. Один лишь вопрос почему эта ваша ебучая нелюдь гвидо не сделает типы обязательными, а динамическую лапшу опциональной, то есть как сейчас, но наоборот?
Аноним 29/01/25 Срд 20:20:30 3375835 11
1122e61565.jpg 149Кб, 780x1308
780x1308
>>3375669
В 22:00 прием лекарств, не забывай
Аноним 29/01/25 Срд 20:38:11 3375869 12
image.png 34Кб, 615x453
615x453
Сап, при установке либы для airflow вылазит пик1. Почитал в инете, все сводится к установке раста. Это серьезно единственный вариант? В одно сообщении на SO сказали, что pip на какой-то версии переехал на раст, это правда (ничего в гугле про это не нашел больше)?
Аноним 29/01/25 Срд 20:49:48 3375885 13
Хочу создать абстрактный класс. Помимо прочего, этот класс - расширение стандартного словаря.
class SomethingClass(ABC, dict)

В итоге получается так, что я могу создать экземпляр этого абстрактного класса.
Че делать?
Аноним 29/01/25 Срд 20:54:34 3375887 14
>>3375885
Типа, даже если унаследуюсь, то могу вызывать абстрактные методы без их перегрузки. Жижа какая-то выходит.
Аноним 30/01/25 Чтв 06:31:44 3376082 15
>>3375887
Абстрактных методов в том виде, как в C++, в питоне нет. При желании ты это можешь реализовать играясь с метаклассами, но вот это нафиг никому не нужно

А вот против вызова таких методов есть стандартный паттерн, ты бросаешь исключение, специально для этого есть NotImplementedError
Аноним 30/01/25 Чтв 13:46:37 3376422 16
>>3375649

Ну разве что в джаве ситуация другая, с остальными так же можно всё вывернуть и получить копьё
Аноним 30/01/25 Чтв 13:57:31 3376427 17
>>3376422
Да хуйню чел запостил какую-то. Ну 200к резюме с упоминанием питона, какая часть из них вообще активная, а не многолетней давности?
Сейчас на хх есть счетчик откликов в мобильной версии, вот вижу на примере его джавы все те же триста шестьсот шестьсот двести двести откликов на первых рандомных вакансиях. Там еще стажерская свежая висит которую 50 человек смотрит. И кста я исключил из поиска андроид и qa на жабе, получилось столько же вакансий как у него на питон
12 человек на место, больше вакансий, каво нахуй наебать пытается челикью
Аноним 30/01/25 Чтв 15:30:39 3376500 18
17382388746380.webp 82Кб, 1080x1000
1080x1000
Ссытесь, чмохи?
Аноним 30/01/25 Чтв 15:46:23 3376508 19
>>3376427
Меньше всего конкуренция на шарпе, вакансий чуть меньше конечно, но не сильно меньше.
Аноним 30/01/25 Чтв 18:29:02 3376635 20
1733845279348.jpg 83Кб, 480x640
480x640
Как сегодня всё автоматизируют, какой ЯП, фреймворки, библиотеки, боты, нейронки?
Но только, чтобы всё оффлайн работало, то есть обрабатывалось на моём компе и телефоне.


Я хоть в тот тред попал?
Аноним 30/01/25 Чтв 20:17:24 3376688 21
>>3376500
нет , 100% ему кто-то помогает . Мб просто озвучивает текст
Аноним 30/01/25 Чтв 21:52:00 3376750 22
>>3376500
Даже смотреть не буду. А ещё КЗОТ запрещает детей нанимать.
Аноним 30/01/25 Чтв 21:53:44 3376752 23
>>3376635
>Питон-тред
>какой ЯП
>Я хоть в тот тред попал?
Ну сам подумай.
Аноним 30/01/25 Чтв 22:55:37 3376776 24
>>3376752
А остальные вопросы на ответ?
Аноним 31/01/25 Птн 11:01:04 3377050 25
>>3376508

Да не, меньше всего на пэхе
Но надо смириться что будешь скуфо пердедом
Аноним 31/01/25 Птн 20:23:18 3377518 26
Сделал своего первого тг-бота. Даже разместил его на ВПСе. Порадуетесь за меня или отхуесосите?
Аноним 31/01/25 Птн 22:08:29 3377572 27
>>3377518
>разместил его на ВПСе
Фу, челядь ебучая. Нет смысла ради каких-то 1000 запросов в месяц арендовать сервер, он будет 0,00001% времени работать и 99,99999% времени простаивать. Бестолково и неэффективно, тупо переплата за простой.
Аноним 31/01/25 Птн 22:29:41 3377588 28
>>3377572
Я использовал ВПС друга
Аноним 31/01/25 Птн 23:14:00 3377615 29
17324793739240.jpg 182Кб, 697x645
697x645
ПИДОРЫ ПОМОГИТЕ!!!

Автоматизируем чо как на питоне?
Аноним 31/01/25 Птн 23:20:43 3377619 30
>>3377615
Что тебе нужно автоматизировать, пидор?
Аноним 01/02/25 Суб 00:18:58 3377649 31
>>3377572
>Бестолково и неэффективно, тупо переплата за простой.
Опять ты, клаудшиз.

Ну и что нынче подходит для телеграм-ботов?
Аноним 01/02/25 Суб 00:49:54 3377670 32
>>3377588
>Я использовал ВПС друга
Значит твой друг - лох.

>>3377649
>Опять ты, клаудшиз.
Не опять, а снова.

>Ну и что нынче подходит для телеграм-ботов?
Cloudflare, очевидно же.
Аноним 01/02/25 Суб 01:20:12 3377693 33
>>3377670
У тебя просто нормальных друзей не было
Аноним 01/02/25 Суб 13:14:18 3378069 34
Извините за гумозный вопрос.

Как найти классы-дубликаты?

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

Конфигов много, под 100 штук.

Хочу вывести список потомков-дубликатов, у которых фактически в ТЕКСТЕ КОДА написано одно и тоже, чтобы прописать им наследование от какого-то общего предка и сократить код. (Возможно это пиздец какая плохая идея и лучше не наследоваться вовсе)

Если собрать все классы, взять их аттрибуты (vars), то они будут уникальными, потому что аттрибуты инстанцируются по разным адресам памяти.

Есть какой-то лексический анализатор или другой способ искать избыточные классы-дубликаты?
Аноним 01/02/25 Суб 13:30:02 3378079 35
>>3377670
>Cloudflare, очевидно же.
Бля, уверен что это окажется заманухой. Конторка в принципе гнилая. Лучше уж "VPS друга". Да и сложно это все
Аноним 01/02/25 Суб 13:31:40 3378082 36
photo2025-01-18[...].jpg 40Кб, 680x680
680x680
>>3377670
>Cloudflare, очевидно же.
Между прочим, что-то новое .
Ты перестал всем рассказывать какой охуенный AWS.
Ждем, когда окончательно образумишься.
Аноним 01/02/25 Суб 18:23:07 3378389 37
Screenshot2.jpg 49Кб, 796x481
796x481
Я не владею языками программирования и вообще очень плох в системе, но мне нужно обновить Питон. Подскажите, как сделать это через консоль. Что я не так делаю?
Аноним 01/02/25 Суб 18:50:29 3378418 38
Аноним 01/02/25 Суб 19:07:08 3378435 39
>>3378389
"командная строка" - это программа cmd.exe
А ты запустил python.exe и пытается туда пихать команды, которые python не понимает.

мимо-добродвач
Аноним 01/02/25 Суб 19:53:38 3378460 40
>>3378435
>>3378418
Спасибо, обновил Питон, но оказалось, что Cyberdrop и без этого не хочет качать с Бункера.
Аноним 01/02/25 Суб 21:12:53 3378581 41
>>3378079
>Бля, уверен что это окажется заманухой. Конторка в принципе гнилая. Лучше уж "VPS друга"
Ну и сиди дальше, плати за 99,99999% простоя. Нет смысла тебя переубеждать.

>>3378082
Я пользуюсь, меня всё устраивает. Зачем рассказывать если никакой полезной нагрузки в разговоре не будет. Мне влом тратить время на пустое бла-бла, если будет конкретный вопрос по конкретному сервису - то я отвечу.
Аноним 01/02/25 Суб 23:30:26 3378702 42
>>3378581
>Ну и сиди дальше, плати за 99,99999% простоя
Около 0% простоя, поскольку телеграм-бот должен быть поднят всё время, даже если к нему никто не обращается
Аноним 02/02/25 Вск 13:06:11 3378918 43
>>3378702
По логике долбоёба выше нужно отключать тг-бота на ночь, чтоб сэкономить 100 рублей.
Аноним 02/02/25 Вск 19:59:54 3379198 44
Попугает танцуе[...].mp4 8522Кб, 400x400, 00:00:42
400x400
Какими редакторами или IDEшечками пользуются питоняши?
PyCharm довольно крут, спору нет, но дорого, а в комунити нет поддержки джанги и поддержка разных sql ограничена.
Может быть на VSCode перемещаться?
Аноним 02/02/25 Вск 21:27:29 3379260 45
>>3379198
Для всего есть vi/vim/emacs. Если ты даже это не осилил, то не утруждай себя программированием.
Аноним 02/02/25 Вск 23:04:30 3379299 46
>>3379198
неужели неочевидно что в этом баяне попугая сзади рукой двигают?
Аноним 04/02/25 Втр 04:38:26 3380206 47
>>3375388
А веб?

На чем писать веб интерфейс устройства с аутентификацией? Джанго жырноват.
Аноним 04/02/25 Втр 06:56:16 3380237 48
накидайте идей по автоматизации бизнес процессов в промышленности на питончеге?
инбифо: накидал тебе за щеку, проверяй
Аноним 04/02/25 Втр 15:05:50 3380651 49
>>3380206
>веб интерфейс
На чем его можно писать кроме жс?
Аноним 04/02/25 Втр 15:08:55 3380656 50
>>3380651
Я про серверную часть, очевидно, раз я джангу упомянул.
Аноним 05/02/25 Срд 11:59:14 3381293 51
Аноны, а есть ещё компании, где не ебут мозг скрамами, канбанами, дэйли митингами, созвонами и всем подобным. Зарплату можно поменьше.
Аноним 05/02/25 Срд 16:07:36 3381496 52
>>3381293
>а есть ещё компании
да
Аноним 05/02/25 Срд 16:09:00 3381502 53
>>3380656
flask какой-нибудь, aiohttp, если основная программа асинхронная
Аноним 05/02/25 Срд 16:13:12 3381508 54
>>3381502
Что такое "основная программа"? Фласк тоже вроде асинхронный. А аутентификацию как прикрутить?
Аноним 05/02/25 Срд 16:18:52 3381515 55
>>3381508
Ты сайт делаешь, либо основной функционал твоей системы не в веб? То есть для чего тебе аутентификация?

На любом фреймворке можно сделать аутентификацию, под любой есть решения соответствующие. Но система же ещё что-то должна делать?
Аноним 05/02/25 Срд 16:20:00 3381519 56
>>3381515
Веб интерфейс устройства, написал же. Ты на рутер заходил?
Аноним 05/02/25 Срд 16:40:38 3381555 57
>>3381519
Смысл в том, что функционал интерфейса наверное не самый простой, на этом фоне авторизация лишь небольшая часть. Под это надо фреймворк подбирать. Ещё дальше вопрос в том, как у тебя бэкенд устройством управляет, у тебя синхронные инструменты или asyncio

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

Короче подумай, какой фреймворк тебе симпатичен, и под него ищи авторизацию. Под любой есть что-нибудь.
Аноним 05/02/25 Срд 17:21:02 3381648 58
Анон, подскажи, как сейчас принято работать с ноутбуками.
Я почитал немного, вижу что в качестве "фронтендов" существуют
- Jupyter Notebook
- JupyterLab
- Какая-то ноутбучная пристройка к вскоду
Что из этого правильнее и/или удобнее юзать?
Аноним 05/02/25 Срд 17:23:12 3381654 59
>>3381555
Спасибо за совет. Поищи, что-нибудь есть, но это не точно. А не проще будет джангу взять? Там оно точно есть и работает изкоробки.
Аноним 05/02/25 Срд 17:30:36 3381669 60
>>3381648
>JupyterLab
Это обновленный Notebook
Аноним 05/02/25 Срд 17:35:39 3381682 61
>>3381648
jupyter notebook classic как будто брошенныйю Там серьезные беды с дебаггером. а у меня в wsl там вообще пизда сетевая какая-от.
Так что остается Jupyter Lab

Ну и Vscode, если ты и вправду погроммист.

>правильнее
Молниеносный детект студента или заводчанина.
В ИТ нет правил. Есть выгоды.
Аноним 05/02/25 Срд 17:37:30 3381683 62
>>3381293
Тогда ты будешь постоянно мартышкин труд выполнять.

Ну а созвонами все равно заебут. Без никак вообще.
Аноним 05/02/25 Срд 18:05:01 3381727 63
>>3381293
Я в такой. Небольшая контора, людей немного. Созвон раз в неделю.
Дают задачу и если сам можешь справиться, то можно вообще ни с кем не контактировать. Трекеров нет никаких. Можно работать в любое время, хоть ночью.
Минусы:
код невысокого качества, страдающий от динамики Питона
отсутствие документаций
нулевой онбоардинг
большое разнообразие задач: я и CI настраивал и systemd, и фронтенд, бэкэнд, нагрузочные тесты и ещё кучу всего
все проблемы твои личные по типу проект не можешь запустить, виртуалку настроить, контейнер поднять и т.п.
ЗП меньше 300кк наносек
Аноним 05/02/25 Срд 18:42:49 3381758 64
Посоветуйте чего-то вроде gdb отладчика графического для пистона. В дельфях или лазарусе вот охуенная отладка, по строчкам можно ходить, точки останова ставить, смотреть че в в переменных лежит, я заебался принтами дебажить...
Аноним 05/02/25 Срд 19:05:39 3381787 65
>>3381758
Пиздец. Разве VSCode нуждается в каких-то советах?
Аноним 05/02/25 Срд 19:05:43 3381788 66
Что вы. В этот vs code вцепились? Чем он лучше pycharm?
Аноним 05/02/25 Срд 19:06:57 3381789 67
>>3381758
Пиздец блядь, поставь себе нормальную ide. Я знаю только одну: pycharm
Аноним 05/02/25 Срд 19:17:49 3381802 68
>>3381788
Рано или поздно тебе придется писать на других языках. И вот тут то тебе захочется единообразия.
Аноним 05/02/25 Срд 19:25:07 3381814 69
>>3381802
Все норм иде от джетбрейн, на всех языках что мне надо было (жава/до диез/фитон).
Аноним 05/02/25 Срд 19:30:25 3381824 70
>>3381814
>джетбрейн
Говноговна, выпиливают в конторах на хуй
Аноним 05/02/25 Срд 19:31:45 3381826 71
Аноним 05/02/25 Срд 19:32:15 3381827 72
>>3381814
попробуй купи.

Нет уж. Хватит.
Аноним 05/02/25 Срд 19:34:18 3381831 73
>>3381826
Божественного VSCode ну и GigaIDE для совсем упоротых
Аноним 05/02/25 Срд 19:40:57 3381836 74
>>3381827
А зачем покупать? В питоне бесплатная версия ок. Ты со сраной? У вас пиратить еще не разрешили?

>>3381831
Ок, чем вс код лучше? Это не прыщеговно?
Аноним 05/02/25 Срд 19:51:03 3381848 75
>>3381836
>Ок, чем вс код лучше?
Шустрый, куча плагинов, ебически кастомизируется, бесплатно и без повесточки.
Аноним 05/02/25 Срд 19:58:19 3381856 76
>>3381848
Пучарм бесплатен. Какой нахуй повесточки?
Аноним 05/02/25 Срд 20:07:47 3381867 77
>>3381856
>Какой нахуй повесточки?
Русофобской
Аноним 05/02/25 Срд 20:39:42 3381890 78
>>3381867
Во время работы играет путин-хуйло лала лала? Мне похуй на ваши русн епроблемы. Вскод шустрее пучарма?
Аноним 05/02/25 Срд 20:47:11 3381891 79
>>3381890
>Мне похуй на ваши русн епроблемы.
Тогда иди на хуй, петух. Вызывай Волгу, там тебе пояснят.
Аноним 05/02/25 Срд 21:08:30 3381915 80
>>3381891
Откуда ее вызывать, говно санкционное? Софт ему русофобский, фашисту ебаному.
Аноним 06/02/25 Чтв 19:00:58 3382513 81
Аноны, объясните, как это работает:
l1=[1,2,3]
l2=['test1','test2','test3']

res = [x for y in zip(l2, l1) for x in y]

Конкретно - зачем нужна конструкция 'x for y in...'
Аноним 06/02/25 Чтв 19:51:44 3382552 82
Ты дурак что л[...].webm 826Кб, 850x372, 00:00:03
850x372
>>3381856
>Пучарм бесплатен
Только обрезок в видео комунити версии. Подойдет, если ты студент или самоучка, изучающий пиструн.

За нормальную версию у тебя попросят $199 за первый год (потом чуток дешевле).
Ну и чем Pycharm лучше VSCode, чтобы за него $200 отдавать? Просто ЧТО там такого, чего нет в VSCode и за что нужно платить ебаному кабану, чтобы он еще больше распух от денег? который к тому же еще и ренегат, а посему идёт нахуй
Аноним 06/02/25 Чтв 20:00:04 3382561 83
image 17Кб, 564x160
564x160
>>3382513
>Конкретно - зачем нужна конструкция 'x for y in...'
Это то же самое, что на моем пике, но формализованное в виде генератора, который быстрее, моднее и сахарнее.
А zip-объект, в который ты упаковал свои списки содержит примерно такое: ('test1', 1) ('test2', 2) ('test3', 3), то есть, берет из каждого итерирумого объекта по элементу от первого и до того момента, пока не кончится самый короткий из них. Все это упаковывает в набор кортежей.
Я тоже так делаю, когда нужно одновременно проитерироваться сразу по нескольким последовательностям.
Аноним 06/02/25 Чтв 22:41:42 3382681 84
>>3382552
Чем тебя не устраивает комунити, по пунктам? Обрезок - это VS.

Даже если, ты 200 баксов за год не заработаешь?

>>3382561
Я б сказал что тут легкий говнокод.
Аноним 07/02/25 Птн 00:10:37 3382717 85
image.png 82Кб, 689x540
689x540
А какая общепринятая практика для менеджмента зависимостей в питоновских проектах?
Я сейчас читаю про Conda и кажется, что это оптимальный инструмент. Но при этом в проектах на глаза мне чаще попадались requirements.txt. Объясните как оно устроено в профессиональной разработке?
Аноним 07/02/25 Птн 00:22:22 3382719 86
>>3382717
Типичный блядь питон. Есть pip, есть pipenv, есть конда, есть еще дохуя. Поди сука разберись какой из них хороший.
Аноним 07/02/25 Птн 06:15:34 3382768 87
image 22Кб, 736x149
736x149
Аноним 07/02/25 Птн 06:52:11 3382779 88
>>3382768
Проект с необходимостью точного воспроизведения окружения - использую reqs.txt и там все пакеты с == точными версиями .
Аноним 07/02/25 Птн 07:43:29 3382789 89
>>3382681
>Чем тебя не устраивает комунити, по пунктам? Обрезок - это VS.
Зачем ты пытаешься в унылый "сам дурак"? Пукчарм камунити - это обрезок, обмылок, который хорошо подходит для чистого Питхона. Стандартная ситуация, когда ты студент или макака на курсах для начинающих. А речь идет именно о тебе.

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

Я пробовал разные IDE и редакторы, лучше, чем vim, pycharm и vscode - нет. Но vim для красноглазиков, pycharm - хороша только платная версия, в то время как vscode: умеет буквально всё, превосходит по функционалу pycharm, легковесный, с открытым кодом и с намного, намного более развитым сообществом во всех смыслах.
Аноним 07/02/25 Птн 13:27:03 3383027 90
>>3382768
А почему не используется везде, например, Conda? Тем более раз уж она популярна у датасаентистов.
Я ее просто беру как пример, просто потому что она вроде бы все умеет, в том числе устанавливать и сам питон.
Аноним 07/02/25 Птн 13:31:20 3383030 91
>>3382768
И опять же, вот у тебя на пике написано
>а) просто проект
>...
>б) с необходимостью того-то и того-то
Ну а если одновременно присутствуют разные проекты, разные менеджеры же будут конфликтовать между собой. Опять же получается лучше прицеиться к конкретному менеджеру.
Аноним 07/02/25 Птн 18:39:30 3383349 92
>>3382789
Какой сам дурак? Я про мелкомягкую студию.

Я знаю джангистов которые на бесплатном пучарме работали.
> А речь идет именно о тебе.
Что со мной?

Какая еще совместная работа? Ты про VCS?
> vim,
Фубля красноглаз.

Пучарм тоже опенсорс.


Как давно этот vs code выстрелил?
Аноним 07/02/25 Птн 20:02:20 3383395 93
>>3382768
requirements.txt + pip дают самое точное воспроизведение окружения

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

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

Но это надо сказать не только питонячья проблема
Аноним 07/02/25 Птн 20:13:00 3383409 94
>>3382717
>мне чаще попадались requirements.txt
Зависимости часто в setup.py запихивают, используют setuptools, но суть в целом та же, там тоже указывается диапазон версий для каждого модуля, как в requirements.txt

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

Если ты создаёшь модуль, по хорошему ты очень вдумчиво должен подойти к тому, какие версии в зависимости указывать, на практике даже в профессиональной разработке с этим проблемы бывают. Если ты указал некорректную зависимость, слишком точную, то никакой инструмент не позволит это исправить автоматом.
Аноним 07/02/25 Птн 20:30:08 3383423 95
>>3383395
>>3383409
Звучит логично. Но тогда объясните нахуя нужны всякие конды?

То есть я понимаю, что они делают больше (контролят версию питона, могут ставить бинарные зависимости), но типа почему/когда /кому целесообразнее использовать pip, а почему конду?
Аноним 07/02/25 Птн 21:19:50 3383448 96
>>3383395
> Особенно стрёмно, когда пидорасы, что модули разрабатывают, тоже хотят точности и указывают зависимость как ==
Это какие, например?

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

>>3383423
15-й стандарт. Есть еще pipenv.
Аноним 08/02/25 Суб 12:45:14 3383780 97
Аноны, есть словарь:
dic = {'cat': '15', 'dog': '42', 'fish': '3', 'dog': '1', 'sun': '44', 'fish': '444'}
Его нужно привести к виду:
dic = {'cat': '15', 'dog': ['42', '1'], 'fish': ['3', '444'], 'sun': '44'}

То есть у меня в словаре повторяются ключи с разными значениями, нужно объединить значения по ключу. Как сделать?
Аноним 08/02/25 Суб 13:19:51 3383829 98
image.png 13Кб, 1382x142
1382x142
vs code. Как фиксить?
Аноним 08/02/25 Суб 13:23:12 3383834 99
image.png 9Кб, 461x158
461x158
Аноним 08/02/25 Суб 13:24:07 3383837 100
>>3383829
если не работает через добавление переменных окружения то переустанови вскод с сбросом настроек и расширений
Аноним 08/02/25 Суб 13:27:35 3383843 101
>>3383834
бля пока рефакторил result = {} проебал в начале бро
Аноним 08/02/25 Суб 13:28:55 3383846 102
>>3383837
как добавить переменные через окружение?
Аноним 08/02/25 Суб 13:35:20 3383853 103
>>3383846
гугл. и это не
> переменные через окружение?
а
> переменные окружения
Аноним 08/02/25 Суб 13:59:02 3383873 104
>>3383780>>3383834
Массивы лучше использовать с числами, а если строки без вариантов, тогда лучше вот так:

old_animals = {'cat': '15', 'dog': '42,1', 'fish': '3,444', 'sun': '44'}
new_animals = {}

for key,val in animals:
_ new_ids = list(filter(lambda x: x in dict, val.split(',')))
_ new_animals[key] = ",".join(new_ids)
Аноним 08/02/25 Суб 14:07:54 3383888 105
Снимок экрана о[...].png 239Кб, 645x516
645x516
>>3383837
>ереустанови вскод с сбросом настроек и расширений
Аноним 08/02/25 Суб 14:15:25 3383901 106
По Kivy вопрос. Допустим, имею я:
BoxLayout:
id: root
BoxLayout:
id: box
Button:
id: btn
Положим, я удалил box из root. Как сделать, чтобы btn узнал о том, что его теперь нет в отображении?
У меня подобное удаление в программе это постоянное событие, т.к. используются MDI окна и они скрываются/показываются (соответственно через remove_widget и add_widget). На момент, когда MDI окно скрыто, я хочу удалять mouse_pos события из Window, и когда наоборот окно показывается, хочу событие снова регистрировать. Можно конечно хуй забить, и так работает, но это некрасиво как-то чтоли. Из-за этого нагрузка при движении мышью в окне высокая, т.к. у меня много виджетов имеют бинды к Window.mouse_pos (всякие кнопки и прочая хуйня которая должна при наведении мыши подсвечиваться).
Аноним 08/02/25 Суб 15:15:14 3383962 107
>>3383780
Как в словаре могут быть повторяющиеся ключи?
Аноним 08/02/25 Суб 15:20:05 3383965 108
Аноним 08/02/25 Суб 16:14:32 3384026 109
15938421597310.jpg 29Кб, 400x400
400x400
>>3383965
>помогите создать многозначный диктионарь
>ахаха! я вам говны невнятной накидал а вы решаете ухаха! пук
Чатжптун ты? Узнал тебя по шизойдным высерам.
Аноним 08/02/25 Суб 16:42:10 3384044 110
>>3383901
Не знаю что такое киви, судя по всему какой то гуй, но при любом раскладе кнопка или любой другой элемент это объект в дереве, если ты к нему присобачил какие то методы то они вызываются когда он находится в дереве и в нем всплывают какие-то событя, которые ты обрабатываешь. Не совсем понятно что и кому ты собрался сообщать если объект в дереве отсутствует. Если он есть но скрытый/деактивный то обычно события их игнорируют, если в твоей киве или твоей реализации не игнорируют, то ставь проверку аттрибута hidden и возвращай, либо отцепляй события на время скрытия.
Аноним 08/02/25 Суб 17:52:25 3384104 111
>>3383780
Во-первых, как уже сказал анон выше, как в словаре могут поаторяться ключи?

Во-вторых, у вас в питоне что, в стадлибе нету group_by? Серьезно блять?
Аноним 08/02/25 Суб 18:10:52 3384121 112
>>3384104
>group_by
Чnо это такое и зачем?
Аноним 08/02/25 Суб 20:15:08 3384184 113
>>3383834
Для кого ideone придумали?
Аноним 08/02/25 Суб 20:16:13 3384185 114
>>3384104
Если погуглить, может и найтись.
Аноним 08/02/25 Суб 20:29:19 3384187 115
>>3383829
Запускай пучарм, там сработает.
Аноним 08/02/25 Суб 20:49:30 3384206 116
>>3384187
Пучарм может даже может сам создавать венв и ставить модули из requirmeents.tzt
Аноним 09/02/25 Вск 03:29:36 3384280 117
>>3382789
> Если ты реально работаешь, то
> нужна поддержка баз данных
Не нужна. Встроенные эдиторы бд везде говно. 99% знакомых разрабов сидят на бобре, оставшийся 1% анальных рабов жидбрейнс на датагрипе
> нужна поддержка фреймворко
Только и исключительно если ты пишешь на штанге
> нужна совместная работа
Не нужна
При этом ты не написал про remote execution и дебаггер в докере. Ну, охуительно работаешь, братан
> vscode
> умеет буквально всё
Ага, и 90% из этого "всего" сделано через жопу, чем невозможно пользоваться. Про говнодебаггер и обосранный гит я промолчу, это просто ебаный позор
> превосходит по функционалу pycharm
Удивительные истории,
> легковесный
Легковесный только до той поры, пока ты не поставил 40-50 экстеншенов, чтобы нормально работать.
> с открытым кодом и с намного, намного более развитым сообществом во всех смыслах
Да, это же очень важно. Каждый разработчик после рабочего дня собирается контрибьютить в иде, которой пользуется.
Интересно, а почему ты не написал, что VSCode это говнина на электроне с инпутлагом, а пукчарм это нативное приложение?
Аноним 09/02/25 Вск 04:31:51 3384294 118
>>3383829
Активируй венв. Пиздос, ну какие-то базовые концепции работы с консолью же нужно знать
Аноним 09/02/25 Вск 05:33:28 3384306 119
Нахуя дегенераты сравнивают питон с джавой и ноют что вакансий мало? Питон не для этого. Он чтобы ты быстро скрипт написал какой-то и что-то с файлами в одной папке сделал, а не чтобы блядь хуитерпрайз залупу десятилетиями разрабатывать.
Аноним 09/02/25 Вск 09:36:47 3384360 120
>>3384306
Почему на питухоне нельзя разрабатывать тырпрайз с таким же успехом как на джава-говне-сисярпе?
Аноним 09/02/25 Вск 09:41:24 3384363 121
>>3383965
кабан сказал - макака сделал. начнешь выебываться >>3383962 вылетишь с работы
Аноним 09/02/25 Вск 09:42:27 3384364 122
>>3383888
на винде иначе не бывает. на линуксе заебись
Аноним 09/02/25 Вск 09:43:55 3384365 123
>>3384360
Пчелидзе, на питоне яндекс такси, самокат и авито сделаны. Нахуя ты фантазируешь?
Аноним 09/02/25 Вск 17:34:59 3384785 124
>>3384363
Так твой код не работает, он не сохранит нужный кабану список значений. Можешь проверить.
Аноним 09/02/25 Вск 19:34:28 3384905 125
Аноны, я тот хер со словарем >>3383780
Короче реально херня вышла - в словаре не может быть одинаковых ключей (я не тестил просто).

В общем, подмогните с такой ситуевиной:
Есть несколько листов вида
x = [cat, 12, sun, 1, fish, 5, cow, 13]
y = [dog, 121, flower, 1, fish, 5, cow, 100]
В этих листах некоторые элементы совпадают. Необходимо все это дело запихнуть в один лист формата:
z = [cat, 12, dog, 121, flower, 1, sun, 1, fish, 5, 5, cow, 13, 100]

Словарь - лучший вариант, но проблема в том, что если из листов сделать словари, потом их замержить, то значение у ключа будет только одно. Например, из вышеуказанного словарь (после мержа) получится примерно такой:
dic = {cat: 12, dog: 121, flower: 1, sun: 1, fish: 5, cow: 100}
А необходимо такой:
dic = {cat: 12, dog: 121, flower: 1, sun: 1, fish: [5, 5], cow: [13, 100]}

Другая проблема в том, что у меня листы генерятся в цикле. Я могу аппендом добавлять данные в новый лист, но как потом его причесать под нужный мне вид {ключ: [значение, значение, значение]}?
Аноним 09/02/25 Вск 21:35:27 3385023 126
>>3384905
>Есть несколько листов вида
Ну так какая разница, замени в примерах выше переменные и все.
Аноним 09/02/25 Вск 22:21:33 3385050 127
Эй, вскодники! Как сделать дополнение в импорте? Т..е я пишу Path и он предлагает мне сделать импорт из pathlib.
Аноним 09/02/25 Вск 22:31:03 3385059 128
>>3385050
У меня такое даже в неовиме работает на pyright это как раз от вскода лангуаге сервер
Аноним 09/02/25 Вск 22:33:38 3385060 129
>>3385059
Так как сделать и почему это из коробки не работает?
Аноним 09/02/25 Вск 22:36:44 3385063 130
>>3384905
Я не знаю правильно ли я тебя понял, но сделай примерно вот так:

x = ['cat', '12', 'sun', '1', 'fish', '5', 'cow', '13']
y = ['dog', '121', 'flower', '1', 'fish', '6', 'cow', '100']

merged_list = [x, y]
res_dict = {}

for i in range(0, len(merged_list), 2):
key = merged_list
val = merged_list[i+1]

ext_val = res_dict.setdefault(key, val)
if isinstance(ext_val, list):
ext_val.append(val)
elif ext_val != val:
res_dict[key] = [ext_val, val]


print(res_dict) # {'cat': '12', 'sun': '1', 'fish': ['5', '6'], 'cow': ['13', '100'], 'dog': '121', 'flower': '1'}
Аноним 09/02/25 Вск 22:38:07 3385068 131
image 61Кб, 715x465
715x465
>>3385063
Я не смог в трифорс
Аноним 09/02/25 Вск 22:49:31 3385085 132
Аноним 09/02/25 Вск 22:50:27 3385087 133
Аноним 09/02/25 Вск 22:52:14 3385090 134
>>3385087
Да не забудь pylance поставить в вскод
Аноним 09/02/25 Вск 23:11:49 3385108 135
>>3385090
То есть, надо ставить пипиетарный модуль и ручками конфиг править? Напоминаю, это базовая фича! >>3382789, ты где там?
Аноним 09/02/25 Вск 23:41:31 3385124 136
Аноним 09/02/25 Вск 23:46:49 3385131 137
>>3385124
Можно мышкой в настройках найти. Или в жсоне CTRL+P Open User Settings (JSON) туда пишешь "python.analysis.autoImportCompletions": true
Аноним 09/02/25 Вск 23:50:41 3385139 138
>>3385108
ЖопаБрейнс форсер, уходи со своим говном
Аноним 10/02/25 Пнд 00:43:06 3385172 139
>>3385139
Форсер? Ты охуела, свыня? Это иде #1.
Аноним 10/02/25 Пнд 00:47:12 3385173 140
>>3385172
>Это иде #1.
Только в твоих фантазях
Аноним 10/02/25 Пнд 02:33:05 3385202 141
Сочетание клавиш для quick fix не показывается.
Аноним 10/02/25 Пнд 06:41:11 3385248 142
image 292Кб, 1080x1058
1080x1058
>>3385063
>Ideone для кого?
Не понял тебя.
Аноним 10/02/25 Пнд 06:41:50 3385249 143
Аноним 10/02/25 Пнд 11:15:25 3385381 144
>>3384905
Нахуя тебе это надо? Ты явно пытаешься решить какую-то другую проблему, так что ее и неси, а не эту хуйню со списками
Аноним 10/02/25 Пнд 14:18:26 3385643 145
Анон, привет, помоги с проблемой, в какую сторону копать.
В общем, есть python скрипт, который циклично выполняет свою задачу. Запускаю его через bat-файл, содержимое которого title (например script) и команда запуска, всё.
В термина выводятся просто принты о ходе выполнения. Скрипт никакого инпута не требует, живёт сам по себе.
Всё работает нормально, но в какой-нибудь рандомный момент скрипт может зависнуть, а заголовок батника меняется на "Выбор script".
И вот я не пойму, что это такое и из-за чего это может возникнуть?
Проблема особо не гуглится.
Может ли быть такое что в PyCharm параллельно висит "проект" этого скрипта и в момент дебага он запускает одноименный (title такой же как и название проекта) процесс, из-за чего основной скрипт виснет? Однако иногда я дебажу параллельно и норм всё.
Аноним 10/02/25 Пнд 14:27:01 3385654 146
Аноним 10/02/25 Пнд 14:30:56 3385670 147
>>3385643
Какие ватники, о чём ты? Поставь операционную систему вместо виндуса, должно помочь. Если вдруг нет - в питухоне вроде есть нормальный дебаггер из коробки, расставь брейкпоинты и смотри, чё там лежит в переменных. В виндувсе через ватники и даблклики юзер-инпут ты вряд ли нормально пробросишь (да и печатать что-то в цмд.екзе один хуй мерзко), поэтому операционную систему в любом случае придётся установить.
Аноним 10/02/25 Пнд 14:36:17 3385680 148
>>3385670
Это по работе, поэтому систему поменять не вариант.
Сам скрипт работает нормально, и даже в батнике.
Просто в рандомный момент спустя 3 часа или 15 минут меняется заголовок батника на "Выбор..." и всё.
Аноним 10/02/25 Пнд 14:45:12 3385694 149
>>3385680
>поэтому систему поменять не вариант.
Ну тогда энжой ё виндус, что тут сказать. Да, виндус - это всегда боль, как только ты пытаешься делать что-то сложнее потреблядства, на которое он и рассчитан - поди отгадай, что у него на этот раз отъебнуло.
Аноним 10/02/25 Пнд 14:50:02 3385703 150
>>3385694
Иди нахуй, прыщедолбоеб.
Аноним 10/02/25 Пнд 16:34:37 3385839 151
>>3385703
Пиши тогда на васике или боберпшеле, спермодаун
Аноним 10/02/25 Пнд 16:53:34 3385856 152
>>3385839
Прыщедолбоеб, питон на винде почти нормально работает. Иди нахуй, то есть на прыщи!
Аноним 10/02/25 Пнд 17:06:06 3385871 153
>>3385856
>почти нормально работает
Спермодаун, питон на винде это чужеродный портированный с прыщей софт, некрософт его из коробки не поддерживает, нигде ни в каком виде установить не предлагает, зато предлагает дотнет и бобрпшел и прочее свое говно, которое специально создавалось под шинду.

Так что давай проебись отсюда.
Аноним 10/02/25 Пнд 17:19:13 3385880 154
ЖопаМозг дебил, это ты?
Аноним 10/02/25 Пнд 17:20:24 3385881 155
>>3385643
Посмотри все места где скрипт заголовок меняет
Аноним 10/02/25 Пнд 17:47:13 3385893 156
>>3385871
То есть для тебя скачать инсталлятор это мозговая перегрузка? -15 мозолей штульмана.
Аноним 10/02/25 Пнд 18:30:05 3385905 157
image.png 81Кб, 1706x296
1706x296
аноны, я правильно все пынямаю?
Аноним 10/02/25 Пнд 19:11:37 3385923 158
>>3385905
нет, у тебя с нулем сравниваецо
Аноним 10/02/25 Пнд 19:35:19 3385938 159
>>3385923
> нет, у тебя с нулем сравниваецо
чувствую в тебе троллера
Аноним 10/02/25 Пнд 20:54:06 3386015 160
>>3385905
У меня exception выдало
Аноним 10/02/25 Пнд 20:58:41 3386019 161
>>3385905
Зачем prev? Почему нельзя пройти от первого до предпоследнего и сравнить элемент с последующим?
Аноним 10/02/25 Пнд 21:27:19 3386041 162
>>3386019
потому что я нубик и пока не применяю никакие алгоритмы
Аноним 10/02/25 Пнд 21:38:04 3386047 163
>>3385905
list это функция стандартной библиотеки
Используй что нибудь типа list_of_nums

Числа лучше сравнивать с числами, и инициализировать переменную как:
prev = -1
либо минимальным числом

Ну и непонятно что тебе дает выявление дубликатов, убирать их из массива это пиздец как неэффективно, надо создать новый отсортированный отфильтрованный массив и все.
Аноним 10/02/25 Пнд 21:48:20 3386053 164
image.png 161Кб, 3028x512
3028x512
>>3386015
что у тебя не работает?


>>3386047
я только изучаю, я полный ноль в погромировании
Аноним 10/02/25 Пнд 22:41:55 3386093 165
>>3386053
тогда незаморачивайся, пиши как понимаешь
Аноним 11/02/25 Втр 07:24:10 3386233 166
>>3385643
> есть python скрипт, который циклично выполняет свою задачу. Запускаю его через bat-файл
Нахуя? В винде есть планировщик заданий. Запускай через него.
Аноним 11/02/25 Втр 07:27:22 3386234 167
>>3385905
Почему у тебя отсутствует подсветка синтаксиса? Используй нормальную иде типа пукчарма. И не используй названия из билтинов питона
Аноним 11/02/25 Втр 12:16:37 3386420 168
681499379-941ec.webp 53Кб, 1612x786
1612x786
>>3386233
>В винде есть планировщик
Вот из за него ты и оказался здесь
Аноним 11/02/25 Втр 13:19:07 3386480 169
>>3386420
В 2025 году сидеть не на винде/макосе = быть дауном
Аноним 11/02/25 Втр 13:56:48 3386514 170
>>3386233
В плане?
Типа настроить запуск cmd.exe, а в передаваемые параметры запуск Python-скрипта?
Аноним 11/02/25 Втр 14:08:59 3386529 171
>>3386514
python.exe my_script.py -arg1 value1 -arg2 value2
В чем проблема?
Аноним 11/02/25 Втр 14:32:06 3386560 172
654765675.jpg 259Кб, 1280x720
1280x720
>>3386480
> в 2025г не иметь страницы вконтакте)))

Я с гейоси на линух в свое время ушел из за того что эта ос из линукса с человеческим лицом превращена в окукленную версию ios для десктопа. Линукс наоборот из саморазваливающейся хуйни превратился в нормальную операционную систему, с красивыми и функциональными UI. с понятно работающей и единой системой ярлычков и меню (XGD), с контейнерными приложениями .appimage, с протоном который все стимовские (и не только) игры запускает без проблем практически. есть системд демоны (аналог макосных лаунчд) есть фаирвол (которым можно наебать dpi провайдера) есть вайфай-блютус-4g нетворкинг через встроенный нетворкменеджер, есть запоминание сортировки размера расположения каталогов без всяких .DS_Store как в макоси, темные темы на любой вкус и апскейлинг.

Остались конечно и проблемы, но это мелочи по сравнению с тем что пидор очкастый предлагает своим пользователям. Про Windoшс Retard Edition даже вспоминать тошно
Аноним 11/02/25 Втр 18:36:06 3386754 173
>>3386560
Мне впадлу спорить, единственное реальное преимущество линупса сегодня -- это нативный докер. Раньше в принципедокер был только под линукс по сути и сидеть на чем-то кроме него было безумием. Так что я пару лет был вынужден работать с него. Сейчас можно переехать спокойно на wsl с docker desktop'ами и жить не тужить
Аноним 11/02/25 Втр 19:41:47 3386825 174
>>3386754
>кокер
Вебмакака, плиз.
Аноним 11/02/25 Втр 19:42:59 3386828 175
>>3386825
Хуже, сорт оф датасатанист с облачными вычислениями
Аноним 13/02/25 Чтв 03:35:34 3388092 176
Почему питон не стал значимо быстрее во всех сценариях после отключения гила? Получается, проблема была не в нем?
Если так, то в чем? Пыха тоже интерпретируемая, но быстрее питона.
Аноним 13/02/25 Чтв 05:51:36 3388108 177
>>3388092
Где пыха быстрее?

>>3386480
+

Вскододауны, вам завезли такую генерацию кода: пишет func(), quick fix и нам генерируют определение функции? Это базовая фича,,отличающая иде от блокнота.
Аноним 13/02/25 Чтв 09:23:23 3388165 178
>>3388092
> после отключения гила?
Какого отключения? Ты о чем вообще? Фритрединг это эксперементальная фича, которая непонятно когда готова будет
> Почему питон не стал значимо быстрее во всех сценариях
А в каких сценариях, кроме мультитрединга, он даже в теории мог стать быстрее? Ты вообще понимаешь что такое гил?
> Получается, проблема была не в нем?
Про какую нахуй проблему ты говоришь. Разберись сначала что такое гил, а потом вопросы задавай
Аноним 13/02/25 Чтв 10:36:12 3388197 179
https://www.online-python.com/mZsfihbPFR

Если мне нужно передать в метод класса аргумент таким образом как это на втором примере, то как заставить это работать, чтобы явно не писать например d4.roll(4), блядь, ибо смысл класса теряется, хули я могу тогда процедурно писать вообще. Кубики как пример ессесно.
Аноним 13/02/25 Чтв 11:55:22 3388266 180
>>3388197
> мне нужно передать в метод класса аргумент
> но не передавать аргумент
Чего блять? Вопрос сформулируй нормально.
И в питоне переменные camelCase'ом не пишут, используют snake_case
numberOfSides => number_of_sides
А вот имена классов уже UpperCamelCase
die => Die
Аноним 13/02/25 Чтв 12:39:30 3388317 181
>>3388108
>Где пыха быстрее?
Гугли тесты, везде быстрее.


>>3388165
>Какого отключения? Ты о чем вообще?
Ногил в 13.
>А в каких сценариях, кроме мультитрединга, он даже в теории мог стать быстрее? Ты вообще понимаешь что такое гил?
Во всех.
>Про какую нахуй проблему ты говоришь
Про медленность питона епт.
Аноним 13/02/25 Чтв 12:53:16 3388332 182
>>3388266
Я бухой, братик. Ща постараюсь.

Условно у нас есть класс:

class Class:
....def __init__(self, some_arg):
........self.some_arg = some_arg
....def my_method(self, some_arg):
........do_something(some_arg)

Создаём его инстанас:
a = Class(x)

При попытке вызвать a.my_method() получаем ошибку того, что нет требуемого позиционного аргумента. Получается инстанс класса не передаёт в метод some_arg, если указать аргумент явно a.my_method(x) то всё работает верно.

Так же вроде бы корректно работает конструкция вида:

....def my_method(self):
........do_something(self.some_arg)

Но вот как реализовать одновременно работу по аргументу, который мы передаём классу инстансу при создании, с возможностью сохранения явной передачи аргумента при вызове метода? Через попытку передавать в аргументы метода self.some_arg или через дополнительную переменную - вылезают ошибки.

И да я ковыряю питон и доки аж 5 час, мне просто нужно написать небольшой (строк на 4000) скриптик на питоне. И желания слушать "обучающий" гундёж на ютубе нет. По этому бест практикс, правильное форматирование кода и нюансы языка мне не ведомы, как-то так.
Аноним 13/02/25 Чтв 13:09:35 3388357 183
>>3388332
Так в чём проблема написать так:
....def my_method(self, some_arg = None):
........if some_arg if None:
............some_arg = self.some_arg
........do_something(some_arg)
Аноним 13/02/25 Чтв 13:41:27 3388380 184
>>3388317
> Ногил в 13
Какой ногил, это тестовая фича, которая параметром в билде устанавливается
> Во всех.
Значит ты еблан, который не знает что такое гил. Ты бы хоть минимально изучил вопрос, прежде, чем пукать что-то
> Про медленность питона епт.
В скольких компаниях был -- везде переезжали на питон для повышения производительности. А секрет очень прост -- внутри практически всех либ живет чистый си, который ебет даже плюсы по скорости, при этом позволяя разрабатывать раз в 10 быстрее, чем в случае чистого си
>>3388332
Тебе уже написали вот тут как можно это решить >>3388357
Правда можно написать даже короче, но тут скорее на вкус и цвет
....def my_method(self, some_arg = None):
........some_args = some_args or self.some_args
........do_something(some_arg)
Но ты уверен, что тебе это реально надо? Выглядит как хуйня ради хуйни плюс возможная протечка абстракции
Аноним 13/02/25 Чтв 13:43:04 3388382 185
>>3388380
>>3388357
Пасиб. Да к сожалению нужно, хотя возможно потом перепишу этот момент через какой-то адекватный интерфейс, но пока нужно заставить махорайку работать на уровне "хоть как-то".
Аноним 13/02/25 Чтв 14:03:23 3388391 186
>>3388380
>Какой ногил, это тестовая фича, которая параметром в билде устанавливается
Ну так изучи вопрос, прежде чем базарить. Почему питон не стал значимо быстрее во всех сценариях после отключения гила?

>Значит ты еблан, который не знает что такое гил. Ты бы хоть минимально изучил вопрос, прежде, чем пукать что-то
>Получается, проблема была не в нем? [не в гиле]

>В скольких компаниях был -- везде переезжали на питон для повышения производительности. А секрет очень прост -- внутри практически всех либ живет чистый си, который ебет даже плюсы по скорости, при этом позволяя разрабатывать раз в 10 быстрее, чем в случае чистого си
Заржал.
Аноним 13/02/25 Чтв 14:05:20 3388393 187
>>3388391
> Почему питон не стал значимо быстрее во всех сценариях после отключения гила?
Почему после релиза нового чатжпт не упали цены на квартиры в Москве?
Аноним 13/02/25 Чтв 14:19:54 3388400 188
>>3388393
Ну т.е. ты не знаешь. Иди книжки почитай какие-нибудь, того же Лутца можешь навернуть для начала.
Аноним 13/02/25 Чтв 14:56:41 3388429 189
>>3388400
Ну т.е. ты не знаешь. Иди книжки почитай какие-нибудь, того же Роджаса можешь навернуть для начала.
Аноним 13/02/25 Чтв 23:01:45 3388775 190
почему библиотеку для форматирования назвали блять "black" ?
Аноним 13/02/25 Чтв 23:25:13 3388795 191
Аноним 14/02/25 Птн 00:27:14 3388808 192
>>3388775
Почему во многих проектах, таких как Джанго, стали переименовывать ветки из master в main после того, как сдох нигер уголовник и наркоман? До этого 20 лет всем похеру было.
Аноним 14/02/25 Птн 03:59:37 3388844 193
>>3388775
Ты что-то путаешь, она называется ruff.
Аноним 14/02/25 Птн 10:05:50 3388906 194
>>3388775
Потому что примерно такого же цвета будут угли, которые останутся от сгоревшей жопы, после использования этого говна
Аноним 14/02/25 Птн 16:19:25 3389163 195
>>3375388
Первым же постом отпугиваешь конкурентов?
Ух хитрый негодяй.
Аноним 14/02/25 Птн 18:48:19 3389298 196
>>3388844
почему библиотеку для форматирования назвали блять "ruff" ?
Аноним 14/02/25 Птн 20:56:39 3389375 197
>>3389298
ruff, как существительное, относится к жестко накрахмаленному оборчатому или плиссированному круглому воротнику из ткани, который носили в XVI и XVII веках
Аноним 14/02/25 Птн 23:49:41 3389451 198
За сколько можно выучить питон до уровня автотестировщика?
Аноним 15/02/25 Суб 01:53:14 3389492 199
>>3388844
Скорее всего что-то типа rust-written fast formatter.
Аноним 15/02/25 Суб 04:03:39 3389508 200
>>3389451
Неделя, если кодил на ООП
Аноним 15/02/25 Суб 08:41:38 3389549 201
Есть программа на питоне в. exe формате, с сопутствующими скриптами в ее папке.
Перестала работать, пишет, что отсутствует несуществующий файл (поиском проходил), что может быть?
Питон обновлял, в архиве программы нету такого файла (infotor_2.py).
Софт: вьювер оффлайн-версии сайтов в sql формате.
https://drive.google.com/file/d/19E8UflBmd8OdGYvWytrX44MpE4DEH7HF/
Аноним 15/02/25 Суб 11:18:17 3389600 202
>>3389549
Всё, разобрался, нужно было переустановить Python и подключить legacy-cgi. Я как понимаю веб-сервер не эмулировался, от этого и ошибки.
Аноним 15/02/25 Суб 11:50:35 3389622 203
Аноним 15/02/25 Суб 14:44:07 3389717 204
>>3389622
>>3389508
Как?

Я ручной тестировщик. На джаве немного писал для себя,ооп понимаю.
С первого взгляда синтаксис питона показался проще джавы.
За месяца 2 смогу освоить полностью ?
Аноним 15/02/25 Суб 17:35:44 3389818 205
>>3389717
Чел... у меня пивной животик, я хочу себе отчётливые шесть кубиков на животе, скажи за сколько я смогу их получить ходя в спортзал? Мне надо шоп прям вырисовывались и тёлки текли. Вот скажи, за какое время они появятся? При том, что у меня была пятёрка по физкультуре и я катался на велике.
Аноним 15/02/25 Суб 17:45:34 3389823 206
Аноним 16/02/25 Вск 01:41:05 3390019 207
Зачем в питоне сделано, что до приватных методов все равно можно достучаться?
Аноним 16/02/25 Вск 01:46:59 3390020 208
>>3390019
А тебе не по хуй? Написано в доках не лезь, значит не лезь
Аноним 16/02/25 Вск 10:40:00 3390098 209
>>3390019
В питоне ооп как в джаваскрипте, без приватных полей и методов, используй черточки:
self._param1
self._myMethod1()

Сделано так потому что семантическое разделение проще как в реализации так и для программиста более выразительнее на самом деле, ибо позволяет без IDE от жидбреинс видеть что приватное а что нет.

Питон вроде как хотел быть легким простым, но даже несмотря на то что он разжирел тенденции таковы что вместо public private static protected abstract interface будет:

(async) function method(self_object, args...) //public
(async) function name(args...) // static
Аноним 16/02/25 Вск 11:28:38 3390124 210
>>3390019
Бредик не пишем. До приватных полей можно достучаться в любом языке с рефлексией(а это литералли все языки хоть сколько нибудь популярные). Так что если ты немного подумаешь, то задашь вопрос
> Зачем во всех языках так сделано, что до приватных методов все равно можно достучаться?
И ответ такой -- приват/паблик/протект методы это просто пометка для разработчика, не более. Есть одно функциональное назначение у приватных методов -- не допустить случайного переопределения метода в наследнике(допустим у тебя 50 уровней наследования и какой-нибудь метод self.update, который ты написал в своей реализации, может определяться каким-то из классов наследников и ты все сломаешь). Для такого в питоне есть name mangling с двумя нижними подчеркиваниями
Аноним 16/02/25 Вск 11:33:09 3390126 211
>>3390124
> Бредик не пишем
Ну так и не пиши. Съеби вообще нахуй отсюда, рачина.
Аноним 16/02/25 Вск 11:38:06 3390130 212
>>3390126
Говно, ебало захлопни и сиди тихонько. Ты даже смог осознать о чем я написал. Пиздец, какой наглый вкатун, услышал краем уха какую-то рыготину, извалялся в ней и пришел в питонтред ей размахивать. Попустись
Аноним 16/02/25 Вск 16:57:30 3390332 213
>>3390124
Не пизди, гадон, в топ-1 языке по популярности жс нельзя.
Аноним 16/02/25 Вск 18:14:10 3390383 214
>>3390332
Говно, я же тебя сказал -- ты не понимаешь о чем вообще говоришь. 5 минут в гугле
https://github.com/jwalton/babel-plugin-private-class-fields-to-public
Но я не удивлен, как бы классические 3 пункта, по которым легко поймать за руку долбаеба:
1. Получить доступ к приватным полям нельзя
2. Ну, если уж и можно получить доступ к приватным полям, то чем больше действий нужно предпринять разработчику для получения доступа к приватным полям, тем безопаснее что бы это нахуй не значило код
3. Если ограничение доступов никак с безопасностью, то уж наличие private полей и сложность доступа к ним извне это и есть инкапсуляция
Аноним 16/02/25 Вск 20:01:26 3390464 215
>>3390383

>babel-plugin-private-class-fields-to-public
>There's this TC39 proposal to add private properties to javascript classes, which are "hard private" - you can't access them from other scopes.
Вот же даун, пиздец

В джаваскрипте нет приватных полей, а если бы были как в джаве и пхп ты не можешь к ним обращаться чисто семантически, их нет в публичной области видимости, в этом их смысл.
Аноним 16/02/25 Вск 20:27:08 3390478 216
Аноним 16/02/25 Вск 20:52:55 3390492 217
>>3390464
> В джаваскрипте нет приватных полей
Это троллинг тупостью?
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_properties#syntax
> если бы были как в джаве и пхп ты не можешь к ним обращаться чисто семантически
В джаве и пхп точно так же обращаться можно
> их нет в публичной области видимости, в этом их смысл.
Нету, а обращаться можно. Как так?
>>3390478
Нет, а ты?
Аноним 16/02/25 Вск 21:25:59 3390499 218
>>3390492
Это недо-приват через спецсимвол (решетку)
Чтобы компилятор просто бил по рукам когда вне метода объекта пытаются обращаться к таким полям.
> В джаве и пхп точно так же обращаться можно
Как "точно так же"?
Аноним 16/02/25 Вск 22:31:07 3390530 219
>>3390499
> Это недо-приват через спецсимвол (решетку)
А "недо" потому что тебе не нравится?
> Чтобы компилятор
Ты даже не представляешь насколько глубока кроличья нора в жсе, зачем ты споришь?
> Как "точно так же"?
Точно так же через рефлексию и интроспекцию
Аноним 17/02/25 Пнд 22:18:20 3391241 220
pzdc.png 87Кб, 1162x868
1162x868
Сделал из питон-скрипта standalone екзе при помощи nuitka и получил пикрелейтед при проверке на virustotal нахуй
Пиздец

Как быть? pyinstaller не захотел переваривать мой скрипт, но подозреваю, что с ним будет подобное, если заставлю
Аноним 17/02/25 Пнд 23:06:30 3391263 221
>>3391241
Нахуя тебе exe файл? Что ты с ним собрался делать?
Аноним 17/02/25 Пнд 23:16:07 3391268 222
Аноним 17/02/25 Пнд 23:36:58 3391279 223
Без имени.jpg 5Кб, 225x225
225x225
Аноним 18/02/25 Втр 00:23:28 3391319 224
>>3391241
Все-таки осилил фризинг с pyinstaller (эта хуйня не любит мультипроцессинг и нужно вот так в импорте добавлять оный from multiprocessing import Pool, freeze_support )
Стало лучше, теперь вирустотал выдает 5/72
Аноним 18/02/25 Втр 00:31:18 3391324 225
>>3391319
ААА! Вирус! Не кочайти там вирус. Вот смотрите на вирус тотал БолгеносСканерПро показывает что там вирус ТороянНагибатор666
Аноним 18/02/25 Втр 02:00:24 3391343 226
>>3391268
Что ты там продавать собрался, шиз? И зачем для этого тебе exe'шник? Не проще создать какой-нибудь инсталлер для винды или хотя бы батник?
Аноним 18/02/25 Втр 02:07:44 3391345 227
Наверняка очередной скриптикид наебенил говноскрапер и пытается за 3 копейки продать его кому-то. Нет чтобы вкатиться на три-четыре сотыги и дунасить целыми днями -- будет хуйней страдать и собирать экзешники на продажу
Аноним 20/02/25 Чтв 09:16:01 3392927 228
image 21Кб, 660x257
660x257
image 44Кб, 765x598
765x598
image 43Кб, 759x551
759x551
Питоняши, помогите разобраться. Пытаюсь, разобраться как лучше всего организовать работу функции, но нейросети мне дают разные ответы, не могу прийти к одному решению. Как это делается обычно?

Допустим, есть функция пик1, которая делает действие, но с двумя условиями. Код каждого условия не слишком большой, но уже достаточен, чтобы сделать рефакторинг.

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

2. Сделать почти то же самое, что в предыдущем пункте, но разместить функции внутри самой управляющей функции. Пик 3

Попрошу не обоссывать меня, возможно с очень нубскими вопросами.
Аноним 20/02/25 Чтв 09:17:26 3392928 229
>>3392927
Забыл добавить, что в первом варианте меня смущает именно то, что само модуль будет "засорен" разного рода мелкими функциями. А при третьем варианте создается иллюзия кого-то порядка что ли.

Как делать принято обычно и как вы делаете чаще всего?
Аноним 20/02/25 Чтв 10:44:53 3392985 230
>>3392927
>пик1, которая делает действие, но с двумя условиями. Код каждого условия не слишком большой, но уже достаточен, чтобы сделать рефакторинг
Я не вижу для этого причины.
Аноним 20/02/25 Чтв 10:50:38 3392987 231
>>3392985
>Я не вижу для этого причины.
На самом деле причина есть, код в каждом условии уже довольно объемный и необходимость выделить уже сама навязывается.
Аноним 20/02/25 Чтв 10:52:28 3392989 232
>>3392985
Бро, вопрос тут не стоит делать рефакторинг или нет, для этого слишком мало данных. Вопрос стоит в том, как делать рефакторинг правильно из двух предложенных вариантов, ну или пусть с каким-то третьим вариантом.
Аноним 20/02/25 Чтв 11:00:27 3392995 233
>>3392989
В моём понимании не существует "правильного рефакторинга". Всё зависит от окружения.
Если у тебя там всего < 500 строк, то фигачь, что угодно вообще.
А если много кода, то зависит от окружающего кода.
Глядя на 3 картинки, я вижу самое понятное на первой.
Аноним 20/02/25 Чтв 11:03:45 3392998 234
>>3392995
>А если много кода, то зависит от окружающего кода.
Можешь предположить варианты? Первая часть понятна, что если кода мало, то можно делать как угодно, а если его много какие есть варианты?
Аноним 20/02/25 Чтв 14:08:45 3393118 235
>>3392998
Ну закинь код куда-нибудь на гитхаб. Проведём код ревью всем тредом.
Я не знаю, что можно сказать по обрывкам пары функций.
Аноним 20/02/25 Чтв 17:34:34 3393293 236
image.png 67Кб, 807x559
807x559
image.png 85Кб, 692x712
692x712
image.png 95Кб, 1229x627
1229x627
image.png 117Кб, 1211x771
1211x771
>>3392927
пик 1 делай максимально дотошно буквально чтобы как книгу можно было читать и выноси даже строчки, если оно тому надо

пик 2 можно еще сделать в виде классов общие по схожести функции чтобы еще больше ориентироваться в коде

пик 3 можно укоротить if и сделать строчки вряд тип если не оч напряжно будет выглядеть

пик 4 можно еще сделать возвращаемые типы и документацию к клоассам

такими шагами и работаем это база
Аноним 20/02/25 Чтв 17:45:26 3393304 237
>>3392927
Тебе надо сделать две функции вместо одной. У тебя принципиальная ошибка в том, что у тебя в принципе такая функция появилась. Если у тебя в зависимости от параметра функция начинает принципиально разно выполняться, то это две разные функции
Аноним 20/02/25 Чтв 20:42:30 3393410 238
Живая природа у[...].mp4 1772Кб, 440x480, 00:00:27
440x480
>>3393293
>пик 1 делай максимально дотошно буквально чтобы как книгу можно было читать и выноси даже строчки, если оно тому надо
Можешь пожалуйста развернуть мысль по этому примеру? Для меня это выглядит как пиздецовый огород, но судя по всему ты шаришь в этой теме, хотелось бы получить наставления.
Аноним 20/02/25 Чтв 21:03:23 3393439 239
>>3393410
Я сам чмо немного, этот тоже прав >>3393304

Вот задачу берем простую тип например вывести самое большое число, не кратное 3
На вход похуй какой массив

Описываем словами сначала шаги

"""
Создаем переменную result, даем ей значение -1 тк -1 это обычно принято, что ответа нет в задаче
Сортируем массив по убыванию
По каждому элементу проходим, пока не найдем не кратное трем
Результат равно найденному числу
Вернуть результат
"""
Почти каждое предложение/ шаг - функция. Показываем что принимает и чему присваивается ее результат (создаем - переменные, поэтому не считается за функцию)

"""
Создаем переменную result, даем ей значение -1 тк -1 это обычно принято, что ответа нет в задач

Сортированный массив = Сортируем массив по убыванию(массив)

Первое число не кратное трем = По каждому элементу проходим, пока не найдем не кратное трем(сортированный массив)

Результат равно найденному числу

Вернуть результат
"""

Переводим в английский, сокращая название чтобы не было тотальный пиздец в 40 символов + обьявлем переменные

"""
result = -1
sorted_massive(array) = sorting_array(array)
first_not_for_three = find_first_not_for_free(sorted_massive)
result = first_not_for_free
return result
"""

В итоге у нас появилось тело алгоритма рабочего, но нужно сделать еще 2 функции низшего уровня
sorting_array(array) и find_first_not_for_free(sorted_massive)

Там также описываешь что она должна делать
sorting_array(array) тут в питоне можно сразу sorted() или .sort() юзануть ТК язык позволяет, в других языках надо алгоритм подробнее описывать тк там нет такого и руками надо сортировать

В find_first...(Sorted_massive)
Берем элемент
Если он не кратен 3 то return элемент


Как-то так извиняюсь за говнокодьместами
Аноним 20/02/25 Чтв 21:04:37 3393440 240
>>3393410
А ну и главное помни, что функции, которые ты делаешь в ходе алгоса своего (низшие функции) стоят сверху по коду, поэтому как огород может выглядеть и то не идеально
Аноним 21/02/25 Птн 03:25:22 3393700 241
>>3393410
Не занимайся хуйней. Если у тебя функция в зависимости от параметра принципиально меняет свое поведение, то это хуйня. Этим просто невозможно пользоваться. По своему опыту гигасеньора рассказываю как будет через 10-20 часов разработки:
1. Окажется, что для апдейта нужно передать ещё 4 отдельных аргумента в конструктор, а для серча 6 аргументов, чтобы сделать фильтры. По итогу, у тебя будет монструозная функция с 15 аргументами, причем при вызове функции нужно передавать разный набор аргументов в зависимости от action. Эта хуйня постоянно будет падать, так как где-то не передал одно, где-то не передал другое. Где-то не поставил значение по умолчанию и половина функций отвалилась, а вторая половина отработала.
2. При апдейте возникает исключение, если поля конфликтуют друг с другом, а при некорректных фильтрах возникает уже свое отдельное исключение. По итогу, на каждый пук ты будешь писать 30 строк try except. Где-то вызвал функцию и забыл поймать какое-то исключение, где-то поймал слишком общее исключение и не смог нормально обработать его
3. Апдейт стал возвращать объект питона, а серч массив строк. По итогу, при каждом вызове тебе нужно проверять тип данных, которые тебе вернулись. Постоянно все отваливается, то у тебя приезжает массив туда, где ждали просто объект, то получаешь объект, когда ждали массив. И это ещё простая структура, если не повезет, то будет вложенный словарь словарей, где одна только валидация типа, который вернулся, будет занимать 100 строк.

Так что я повторюсь — не занимайся хуйней
Аноним 21/02/25 Птн 04:10:25 3393702 242
Аноним 21/02/25 Птн 10:52:28 3393837 243
че по ооп посмотреть?
Аноним 23/02/25 Вск 00:02:16 3395292 244
изображение.png 8Кб, 475x166
475x166
Воздуха набрали?
Аноним 23/02/25 Вск 00:03:54 3395294 245
изображение.png 9Кб, 431x122
431x122
изображение.png 80Кб, 503x921
503x921
>>3395292
превращается какой-то пиздец
Такая вот Numba.
Аноним 23/02/25 Вск 00:12:19 3395298 246
>>3395292
Обычная функция? У тебя как минимум 5 разных интерфейсов вызывается. Ты удивишься, но в эту "обычную функцию" с названием sum_array я могу запихнуть словарь, а на выходе получить массив словарей. Конечно, это нихуя не простая задача jit это скомпилить
Аноним 23/02/25 Вск 00:32:34 3395310 247
>>3395298
ну я там дальше компилю с четким указанием типов np.int64 - один вариант.

Тут прикол в том, что юзаются все возможные регистры в современных процессорах (xmm,ymm) и это еще долхый устаревший ноутбук
Аноним 23/02/25 Вск 21:31:46 3395791 248
>>3395292
А почему так, если можно итерироваться сразу по "a"?
Аноним 24/02/25 Пнд 01:26:12 3395863 249
>>3395791
Чел, если что, там изначально можно просто сделать sum(a) и не писать никакую функцию. Тут речь именно про numba и ее внутренние оптимизации, которые видимо довольно хуевые(я не особо шарю), но возможно дело в том, что чел использовал тип данных из нампая, а не из ctypes, но я не настолько хорошо знаком с исходниками спитона
Аноним 24/02/25 Пнд 10:18:41 3395992 250
>>3395294
Это охуительно оптимизированный код, долбоеб
Аноним 24/02/25 Пнд 12:40:09 3396107 251
>gradual typing
Слабоват
1) дженериковых типов нету в рантайме
2) майпай не очень может в паттерн матч
Чё там планируют как-то в эту сторону двигать язык?
Аноним 24/02/25 Пнд 19:44:59 3396454 252
>>3396107
Что ты насрал, переведи?
Аноним 24/02/25 Пнд 23:50:06 3396601 253
>>3395791
Мне так нравится.
Это промежуточные исследования для куска другого проекта.

Наконец-то я придумал пет-проект в котором это все действительно будет важно.
Аноним 26/02/25 Срд 10:21:23 3397565 254
IMG-20210620-WA[...].jpg 116Кб, 720x721
720x721
Прошаренный анон, который делал авторизацию через ЕСИА, дай ссылку (или напиши свой опыт) где нормально можно прочитать про способы авторизации. Хочу прикрутить для одной госсистемы cli, а то я заебался вручную там работать.
Аноним 26/02/25 Срд 12:35:24 3397616 255
>>3396454
Любитель динамической лапши, нахуй ты высрался?
Аноним 26/02/25 Срд 12:42:25 3397620 256
Доброго. Подскажите пожалуйста, почему не применяются миграции...
Мне нужно слепить свою бд в postgresql к джанго проекту.

проверил работу проекта. Сервер запускается. Но при смене бд (с sqlite по умолчанию) консоль ругается и высирается мне на голову ошибки. Что может быть?









Ошибки
Traceback (most recent call last):
File "A:\all_for_project\.venv\myshop\manage.py", line 22, in <module>
main()
~~~~^^
File "A:\all_for_project\.venv\myshop\manage.py", line 18, in main
execute_from_command_line(sys.argv)
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\__init__.py", line 442, in execute_from_command_line
utility.execute()
~~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\__init__.py", line 436, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\base.py", line 413, in run_from_argv
self.execute(args, cmd_options)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\base.py", line 459, in execute
output = self.handle(
args, options)
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\base.py", line 107, in wrapper
res = handle_func(args, kwargs)
File "A:\all_for_project\.venv\Lib\site-packages\django\core\management\commands\migrate.py", line 118, in handle
executor = MigrationExecutor(connection, self.migration_progress_callback)
File "A:\all_for_project\.venv\Lib\site-packages\django\db\migrations\executor.py", line 18, in __init__
self.loader = MigrationLoader(self.connection)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "A:\all_for_project\.venv\Lib\site-packages\django\db\migrations\loader.py", line 58, in __init__
self.build_graph()
~~~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\db\migrations\loader.py", line 235, in build_graph
self.applied_migrations = recorder.applied_migrations()
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\db\migrations\recorder.py", line 89, in applied_migrations
if self.has_table():
~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\db\migrations\recorder.py", line 63, in has_table
with self.connection.cursor() as cursor:
~~~~~~~~~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(
args, kwargs)
File "A:\all_for_project\.venv\Lib\site-packages\django\db\backends\base\base.py", line 320, in cursor
return self._cursor()
~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\db\backends\base\base.py", line 296, in _cursor
self.ensure_connection()
~~~~~~~~~~~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(args, kwargs)
File "A:\all_for_project\.venv\Lib\site-packages\django\db\backends\base\base.py", line 279, in ensure_connection
self.connect()
~~~~~~~~~~~~^^
File "A:\all_for_project\.venv\Lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(
args, kwargs)
File "A:\all_for_project\.venv\Lib\site-packages\django\db\backends\base\base.py", line 256, in connect
self.connection = self.get_new_connection(conn_params)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "A:\all_for_project\.venv\Lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(args, kwargs)
File "A:\all_for_project\.venv\Lib\site-packages\django\db\backends\postgresql\base.py", line 332, in get_new_connection
connection = self.Database.connect(
conn_params)
File "A:\all_for_project\.venv\Lib\site-packages\psycopg2\__init__.py", line 135, in connect
conn = _connect(dsn, connection_factory=connection_factory,
*kwasync)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc2 in position 61: invalid continuation byte
Аноним 26/02/25 Срд 13:22:29 3397653 257
объясните новичку как активировать окружение в терминале python?
Сделал проект, захожу заново и непоулчается, пробовал много чего. Разобрался как это делается через PowerShell, НО как блять это сделать просто в терминале Python? Без всякой магии и чего там. Основной код лежит в папке new_project, окружение в new_project\myenv. ОС window 11
Аноним 26/02/25 Срд 13:26:52 3397656 258
>>3397653
\myenv\scripts\activate . если ругается .\activate
Аноним 26/02/25 Срд 13:31:41 3397658 259
>>3397653

uninstall_windows.exe

$ install linux-mint-cinnamon
Аноним 26/02/25 Срд 18:32:17 3397881 260
>>3396107
> 1) дженериковых типов нету в рантайме
Ты ведь понимаешь чем тайпинг от статической типизации отличается? Дам подсказку -- загугли что такое статический анализатор кода и чем он отличается от компилятора
>>3397565
Там вроде бы тот же самый OAuth2.0, погугли гайды на эту тему
>>3397620
Ну вроде же четко написано, что у тебя стринга коннекта кривая
>>3397653
new_project\myenv\Scripts лежит куча файлов активаации для любого окружения. Батник для cmd, ps1 для повершела. Но блять вообще значит
> как блять это сделать просто в терминале Python
? Это что за набор слов вообще?
Аноним 26/02/25 Срд 19:26:43 3397910 261
Аноним 26/02/25 Срд 19:39:13 3397917 262
Аноним 27/02/25 Чтв 16:25:39 3398416 263
python python
Аноним 05/03/25 Срд 17:19:35 3402391 264
>>3397653
> в терминале python
Никак, венв это буквально отдельный экземпляр питона, изнутри запущенного питона ты это никак не сделаешь.
Аноним 05/03/25 Срд 18:33:49 3402427 265
>>3375375 (OP)
Поясните за дескрипторы, кто пользуется и в чём прикол?
Аноним 06/03/25 Чтв 04:27:25 3402643 266
Хочу подключиться к сайту TLS и получаю ошибку ssl_handshake. Там перед соединением с ресурсом должна идти проверка пользовательского сертификата на токене. Не могу заставить selenium запрашивать через плагин серт. Есть кто шарит?
Аноним 07/03/25 Птн 12:51:04 3403574 267
Снимок экрана 2[...].png 35Кб, 958x286
958x286
Дипсик написал мне бота для пересылки сообщений из тг-каналов мне в лс и через некоторое время я словил бан за флуд на 40 дней.
На пике совет от него.
Что скажешь? Я уже хз, доверять ли ему?
Аноним 07/03/25 Птн 14:29:54 3403641 268
>>3402643
А в чем у тебя конкретно трабл? Ты хочешь в обязательном порядке запрашивать или просто подключиться к сайту любым способом?
Аноним 07/03/25 Птн 14:40:29 3403651 269
>>3403574

Дополни контекст правилами, которые ты нарушил, если они есть в письменном виде.
Может быть там есть что-то конкретное, например "нельзя отправлять более 1001 сообщений в час, иначе мы расценим это как флуд и отправим Вас в бан".
Или добавь причину бана, если тебе написали, в чём заключался твой "флуд".
И потом снова заставь ai-падавана с обновлённым контекстом поправить код.
Аноним 08/03/25 Суб 06:06:09 3404133 270
Screenshot20250[...].png 163Кб, 1032x1178
1032x1178
Screenshot20250[...].png 160Кб, 1096x1194
1096x1194
>>3375375 (OP)

крудоделы на связи с идеальным эндпоинтами, зашлифованными в сотнях промтах десятка нейронок. Есть что улучшить?
Аноним 08/03/25 Суб 11:35:07 3404241 271
>>3404133
Аннотации типов где, макакич?
Аноним 08/03/25 Суб 15:56:54 3404460 272
Сразу говорю, питон не знаю, пытаюсь запустить чужой скрипт, при попытке установить нужный для работы пакет выдает кучу подобных ошибок:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
httpx 0.23.3 requires httpcore<0.17.0,>=0.15.0, but you have httpcore 0.17.3 which is incompatible.
fastapi 0.101.0 requires starlette<0.28.0,>=0.27.0, but you have starlette 0.30.0 which is incompatible.
Вроде раньше когда-то такого не было. Или Python стал очередным языком с неразрешимыми зависимостями, скрипты на котором можно запускать только на машине, где их писали (как руби)?
Аноним 08/03/25 Суб 17:13:30 3404514 273
>>3404460
Там же тебе написано, что версии пакетов нужны меньше чем установленные в системе
Аноним 08/03/25 Суб 17:45:06 3404525 274
>>3404460
pip install -r requirements.txt в помощь, ну или через что там зависимости у тебя
ну и виртуальное окружение используй, а не с винды своей запускай
Аноним 08/03/25 Суб 22:26:33 3404722 275
А как выглядят собесы на сеньку питониста вообще интересно? Вам задают вопросы ПАКИШОЧКАМ, типа как что-то там реализовано на плюсах под капотом или чисто по библиотечкам?
Аноним 10/03/25 Пнд 10:22:50 3405695 276
>>3404722

Легко. Без каких либо собеседований просим соискателя решить задачу и выслать решение в github. Задача такая - Допустим, есть у нас посты. У каждого поста может быть много репостов. И у репоста могут быть репосты, и так далее. Необходимо посчитать кол-во репостов каждого оригинального поста. В таблице лежат десятки миллионов записей.

Если у меня плохое настроение и припёрся соискатель вживую, то я обычно даю бумажку и карандаш и прошу написать функцию, которая инвертирует односвязный список.
Аноним 10/03/25 Пнд 10:28:57 3405699 277
>>3405695
Через пару недель приходит шеф и спрашивает, почему ещё никого не наняли ))

P.S. Что странно, когда я даю эти задачи соискателям на смежный Ruby проект, они, почему-то, решают их...
Аноним 10/03/25 Пнд 19:26:49 3406098 278
>>3405695
Так это просто алгосики аля яндекс, а конкретно знания питона на питонячьи вакансии вообще не проверяют что-ли?
Аноним 12/03/25 Срд 07:10:37 3407150 279
>>3404133
Какая же хуета, господи. Какой-то нахуй фасад нагородили, это просто охуеть. Не пробовал загуглить что это нахуй значит, прежде, чем использовать? Ну и в голос с КОДОВ ОШИБОК нахуй, это уже совсем нахуй за гранью. Пиздец, уноси эту хуйню и переписывай заново
Аноним 12/03/25 Срд 07:14:53 3407152 280
>>3404722
По разному, почти всегда просят написать декоратор с параметром и что-нибудь про индексы в бд спрашивают. А все остальное совершенно произвольное может быть от обсуждения системы коммитов в кафке и невозможности exactly once и до того, как gc работает в питоне(бтв довольно популярный вопрос, так как gc в питоне это не совсем тоже самое, что в других языках).
Аноним 12/03/25 Срд 11:03:14 3407270 281
>>3407150
спасибо, учтём ваше карланское мнение, спасибо, что вы не с нами, не дай бох ) счастья здоровья
Аноним 12/03/25 Срд 11:05:59 3407273 282
>>3407150
сразу видно отсталого, который в 2025 году ГУГЛИТ вопросы, а не ▓▓▓▓▓ их.

(Проверка подобность пациенту, пробел заполните сами)
Аноним 13/03/25 Чтв 17:08:03 3408115 283
image.png 93Кб, 1497x839
1497x839
image.png 10Кб, 404x125
404x125
image.png 8Кб, 510x84
510x84
Сап, подскажите, что делать с пик1? Пытаюсь накатить провайдеры на аирфлоу (пик 2) и такое возникает из-за amazon. Причем до этого запускал уже и все вроде нормально было. Ну и на всякий случай докерфайл (пик 3). Гпт толкового ничего не подсказал
Аноним 13/03/25 Чтв 18:19:41 3408150 284
>>3407270
> дедулай наебашил кодов ошибок и начал трястись, когда его отправили на порашу с этим говном
Наес
Аноним 13/03/25 Чтв 18:22:34 3408155 285
Аноним 13/03/25 Чтв 18:23:09 3408156 286
Аноним 14/03/25 Птн 22:37:29 3408933 287
Стоит ли изучать numpy, matplotlib и pandas?
Аноним 14/03/25 Птн 23:47:08 3408977 288
>>3403574
>
>Дипсик написал мне бота для пересылки сообщений из тг-каналов мне в лс и через некоторое время я словил бан за флуд на 40 дней.
>На пике совет от него.
>Что скажешь? Я уже хз, доверять ли ему?
Доверять ему? Да ты, бля, себе не доверяй, пока не научишься думать головой, а не жопой. Закрой рот, иди почитай документацию, и не позорься.
Аноним 15/03/25 Суб 02:36:07 3409009 289
>>3408933
Нет, не стоит, сиди тупым ебанатом
Аноним 15/03/25 Суб 13:22:54 3409148 290
Крик отчаяния.mp4 430Кб, 720x720, 00:00:07
720x720
Пидоры из JetBrain что-то сделали с PyCharm'ом. Переехал с pycharm-community-2024.3.1.1 на pycharm-professional-2024.3.2 ну и где посветка несоблюдения pep8?
Раньше он меня предупреждал даже когда я поставлю одну пустую строку между функциями, сейчас же просто молчит. Даже на длину строки ему наплевать. На всё стало наплевать. Он так сильно стал похож на VSCode, до блевоты просто.
Это же заточенный под Питхон инструмент, почему я должен лезть в настройки и выставлять всю эту блядоту как было, словно я в VSCode, который нужно выдрочить плагинами, прежде чем он начнет нормально работать. Да еще и искать где это было.

Может быть у анончика есть какой-то мануал, с помощью которого я могу поставить такие же настройки, как в прошлой версии PyCharm? Помоги пожалуйста.
Аноним 15/03/25 Суб 15:23:34 3409231 291
>>3409009
А если изучать, то не будешь тупым ебанатом? это мерило?
Аноним 15/03/25 Суб 16:26:07 3409248 292
>>3409148
Похоже, что у вас возникли проблемы с настройками инспекций и проверки кода в PyCharm Professional. Вероятно, после перехода на новую версию или смены редакции, настройки могли сброситься или измениться. Давайте попробуем восстановить функциональность, которая была в Community-версии.

### 1. Проверка включения инспекций PEP 8
- Перейдите в `File` → `Settings` (или `Ctrl+Alt+S`).
- В разделе `Editor` → `Inspections`.
- Убедитесь, что включена инспекция `PEP 8 coding style violation`. Она должна быть активна и настроена на ваш вкус (например, проверка длины строки, отступов, пробелов и т.д.).

### 2. Проверка настроек форматирования
- Перейдите в `File` → `Settings` → `Editor` → `Code Style` → `Python`.
- Убедитесь, что настройки форматирования соответствуют PEP 8. Например:
- `Hard wrap at` (длина строки) — обычно 79 или 120 символов.
- `Blank lines` — настройте количество пустых строк между функциями и классами.

### 3. Проверка включения автоматической проверки PEP 8
- Перейдите в `File` → `Settings` → `Tools` → `File Watchers`.
- Убедитесь, что у вас включен watcher для автоматической проверки PEP 8 (например, через `autopep8` или `flake8`).

### 4. Проверка использования внешних линтеров
- Если вы используете внешние линтеры (например, `flake8`, `pylint`), убедитесь, что они установлены и настроены в PyCharm.
- Перейдите в `File` → `Settings` → `Project` → `Python Interpreter`.
- Убедитесь, что нужные пакеты (`flake8`, `autopep8`, `pylint`) установлены.
- Затем перейдите в `File` → `Settings` → `Tools` → `External Tools` и настройте их использование.

### 5. Проверка настроек цветовой схемы
- Если подсветка ошибок и предупреждений пропала, возможно, проблема в цветовой схеме.
- Перейдите в `File` → `Settings` → `Editor` → `Color Scheme` → `General`.
- Убедитесь, что цвета для `Errors and Warnings` настроены и видны.

### 6. Сброс настроек (если ничего не помогает)
- Если ничего из вышеперечисленного не помогло, попробуйте сбросить настройки PyCharm:
- Закройте PyCharm.
- Удалите или переименуйте папку с настройками (обычно находится в `~/.config/JetBrains/PyCharm2024.3` на Linux или `~/Library/Application Support/JetBrains/PyCharm2024.3` на macOS).
- Запустите PyCharm снова — настройки будут сброшены до стандартных.

### 7. Проверка версии PyCharm
- Убедитесь, что вы используете актуальную версию PyCharm Professional. Иногда проблемы могут быть связаны с багами в конкретной версии. Попробуйте обновиться до последней версии.

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

P.S. Если вам не нравится поведение PyCharm Professional, всегда можно вернуться к Community-версии — она бесплатна и имеет большинство необходимых функций для разработки на Python. 😊
Аноним 15/03/25 Суб 19:25:28 3409324 293
Эй какой хороши[...].mp4 884Кб, 640x360, 00:00:14
640x360
Котик и чайник.mp4 1054Кб, 1280x1272, 00:00:07
1280x1272
Кот - когда озв[...].mp4 756Кб, 360x640, 00:00:10
360x640
Котейка любит д[...].mp4 4583Кб, 576x1024, 00:00:12
576x1024
>>3409248
>### 1. Проверка включения инспекций PEP 8
Спасибо, анончик, как я не догадался сразу спросить у какой-нибудь гопоты, сейчас попробовал, она даже на мой оригинальный пост написала.
>Понимаю твоё раздражение — переход на новую версию PyCharm Professional 2024.3.2 явно подкинул неприятных сюрпризов с подсветкой PEP8
Держи котиков.
Аноним 16/03/25 Вск 00:16:47 3409470 294
17408444555110.jpg 266Кб, 1000x832
1000x832
Спите вкатуны?
Спите и видите как получаете 300к наносек говнокодя на таком чудесном и простом языке как Питон.

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

10 лет опыта, знание сотен либ. базы, очереди, паттерны, микросервисы. Десятки прочитанных книг, куча интересных проектов в портфолио, опен сорс на гитхабе... И знаете что?

Меня нахер не завут на собесы даже за жалкие 250К вечно деревянных.

А на что вы надеетесь?

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

А знаете что? Это даже к лучшему, что Петухон погиб. На свете полно классных языков, которые учли ошибки своих предшественников и на них писать куда приятнее...
Аноним 16/03/25 Вск 06:50:56 3409504 295
image 196Кб, 510x653
510x653
>>3409248
Мне вот любопытно. Только у меня PyCharm с версии 2024.3 проводит проверку на нарушения PEP 8, но никаких предупреждений не показывает (пик стронгли релейтед): Settings: Editor -> Inspections -> PEP 8 coding style violation (No highlighting)
Если это нововведение, то какой тогда интересно в этом смысл, чтобы не ебать мозги человеку, а просто все тихо чинить при Ctrl+Alt+L?
Аноним 16/03/25 Вск 06:56:22 3409505 296
Пепе-клоун.mp4 3454Кб, 854x480, 00:00:17
854x480
>>3409470
> На свете полно классных языков, которые учли ошибки своих предшественников и на них писать куда приятнее...
Расскажи мне про язык на котором также приятно в нейросети, бэк, парсинг и решение разных рутинных задач.

> 10 лет опыта, знание сотен либ. базы, очереди, паттерны, микросервисы. Десятки прочитанных книг, куча интересных проектов в портфолио, опен сорс на гитхабе... И знаете что?
Сдается мне, что ты напиздюнькал нам, обманул, ввел в заблуждение, сказал неправду, не был с нами честным.
Аноним 16/03/25 Вск 06:56:55 3409506 297
image 160Кб, 968x717
968x717
Аноним 16/03/25 Вск 09:36:26 3409534 298
17411298922730.jpg 111Кб, 640x480
640x480
>>3409505
>Расскажи мне про язык на котором также приятно в нейросети, бэк, парсинг и решение разных рутинных задач.
ага, и в вакансия теперь тоже требуют и бэк и машинное обучение (и фронтенд в придачу), ну а хуле, язык то все позволяет, зачем нескольких специалистов нанимать, Антошка Сычев вон все сделает.
Только вот, что это совершенно разные области кабанчику пофиг.

>Сдается мне, что ты напиздюнькал нам, обманул, ввел в заблуждение, сказал неправду, не был с нами честным.
боюсь, что даже самую малость не наебал, как на духу все выложил, аки перед боженькой исповедался.
Аноним 16/03/25 Вск 18:01:23 3409749 299
А вы в курсе, что рекрутеры палят, что вы опыт крутите?
Хрюши давно сидят в ЦРМ-ках, которые собирают базу резюме, и в этой базе видно историю изменения резюме. А так же "отзывы" и дополнительные фильтры, чтобы автоматом отказывать.

talantix.ru, https://huntflow.ru/ да много их...

https://www.youtube.com/watch?v=b5tDa56GDmw&list=WL&index=12&ab_channel=%D0%90%D0%BD%D1%82%D0%BE%D0%BD%D0%9D%D0%B0%D0%B7%D0%B0%D1%80%D0%BE%D0%B2I%D0%9E%D1%81%D0%BE%D0%B7%D0%BD%D0%B0%D0%BD%D0%BD%D0%B0%D1%8F%D0%9C%D0%B5%D1%80%D0%BA%D0%B0%D0%BD%D1%82%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C
Аноним 17/03/25 Пнд 00:47:48 3409970 300
>>3409470
Как ты с таким опытом и стеком не можешь найти даже 250к, когда я работая auto qa макакой со стеком pytest/grpc/selenium/requests/allure получаю 360? наебалово какое-то, либо тебе надо поправить резюме и прокачать скилл собесов.
17/03/25 Пнд 03:25:50 3409988 301
>>3409970
Это в стране пиздоболии?
17/03/25 Пнд 03:29:17 3409989 302
>>3409470
Когда же до вас дойдет.. дело не в языке. Просто вас стало так дохуя, что работодателю нет теперь смысла платить тебе 250к. Желающих работать за 100 - сотни. Таких же как ты и даже лучше. И среди них выбирают.

Чекай что на рынке творится http://158.160.161.158/hh/
Аноним 17/03/25 Пнд 09:37:02 3410042 303
>>3409989
>Просто вас стало так дохуя
но не сразу понимаешь насколько дохуя. у меня буквально все знакомые скуфы понабрали кредитов и прошли питон курсы.

Вкатунам я искренее советую изучить, что на западе актуально и ТОЛЬКО НАБИРАЕТ популярность. и вкатываться туда. В Rust какой-нибудь или Zig или хуй знает во что еще.

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

А ты что думаешь? как дальше кодеркам выживать?
Аноним 17/03/25 Пнд 11:58:15 3410156 304
>>3410042
На западе пару лет назад толпы разработчиков выгнали нахуй на мороз, в том числе и пидорастеров из мозилы.
В отрасли кризис, она была изначально раздута как по штатам так и по капитализации, все последние года айти-сектор держался на сказках инфоцыган что вкладываю сюда вы вкладываете в гугл в 2001.
Аноним 17/03/25 Пнд 12:43:24 3410188 305
17415180047140.jpg 145Кб, 700x563
700x563
Аноним 17/03/25 Пнд 14:38:23 3410306 306
>>3410042
>Вкатунам я искренее советую изучить, что на западе актуально и ТОЛЬКО НАБИРАЕТ популярность. и вкатываться туда. В Rust какой-нибудь или Zig или хуй знает во что еще.
Ебать дебил.
Аноним 17/03/25 Пнд 15:24:43 3410344 307
Даже Wildberries туда же - ищут питониста со знанием реакта.
Казалось бы - серьезная компания не должна такой хуйней заниматься, у нее миллиардные обороты, что нельзя что ли 2 разработчиков нанять.

https://hh.ru/vacancy/118436422
Аноним 17/03/25 Пнд 15:34:52 3410357 308
hq720.jpg 19Кб, 686x386
686x386
Вакансия в Контур

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

Сегодня убрал зарплату в резюме и мне наконец ответили с Контура:
>Спасибо большое. Я хочу внести ясность отнсительно наших вилок. >Верхняя граница оклада сеньора 240 на руки + премии, в среднем по году >до 280 на руки. Но по нашей матрице верхняя граница сеньора - это >почти TechLed. Граница мидл+/сениор ЗП до 190 на руки, с премиями >средняя по году около 215.

Контур — экосистема для бизнеса. Наши сервисы помогают каждой третьей компании России делать рабочие процессы проще и эффективнее: вести бухгалтерию, сдавать отчетность в госорганы, обмениваться документами без бумаги, общаться друг с другом на удаленке и многое другое. С нами жизнь 2,5 млн предпринимателей и их сотрудников становится легче.
Вот такая маленькая и бедная компания Контур, понять и простить...
https://career.habr.com/companies/skbkontur
Аноним 17/03/25 Пнд 16:20:55 3410424 309
>>3410357
А нахуй ты там за 250 тыр нужен? Питонистов и жаваскриптеров на рынке как собак нерезанных, а рыночек айти в рф схлопывается и режется. Сеньки за 30 тыр за забором стоят, лучше их взять чем такого важного синьора как ты.
Аноним 17/03/25 Пнд 17:32:58 3410478 310
>>3410424
ты конечно перетолстил но в целом так и есть, за 250 уже лидов ищут.
Аноним 17/03/25 Пнд 17:37:16 3410481 311
>>3410478
Да не перетолстил. Только сегодня обсуждал аутстафферские направления. На одну вакуху с распространными технологиями типа Реакта за час набирается 50 вакансий. Ждать что тебя охуенного примут и дадут 250к+ я бы не стал. Особенно без собственного бренда.
Аноним 19/03/25 Срд 01:51:51 3411318 312
>>3409988
нет, это в стране мтс auto qa. 360 гросс.
Аноним 19/03/25 Срд 02:17:05 3411327 313
>>3409470
Ну я вот на работе в процессе перехода с питона на гоуленг.
Думаю дело не в питоне, а в том, что бекенд на нем писать сложновато. Без pydantic+mypy проект становится говном буквально мгновенно. Потом его очень больно поддерживать. Я вот на поддержке питон легаси хуитки сидел и это полная параша. Динамикродрисня на бекенде это вообще зло я считаю.

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

>>3409505
Питон как раз хорош для универских лаб и курсачей. В универе я на нем делал практически все. Потому что очень быстро и удобно. Но для продовых решений в энтерпрайзе питон не годится, получается говно практически всегда и везде.
Аноним 19/03/25 Срд 10:10:28 3411464 314
>>3411327
Да вот только говно и жаба - это два стула, ну и писать тырпрайз на говно, который вообще для другого это пиздец.
Аноним 19/03/25 Срд 14:48:16 3411675 315
17422338624832.jpg 181Кб, 639x680
639x680
>>3411327
База анончик, вот я 7 лет назад по той же причине из PHP в Python перекатился. Теперь ситуация повторяется - теперь на Python в России мало новых проектов.

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

Сколько времени у тебя занял перекат и какой стек на проекте? Все на станддартных компонентах или используете орм\фремворки?
Аноним 19/03/25 Срд 17:00:21 3411832 316
>>3411675
>
>Сколько времени у тебя занял перекат и какой стек на проекте
Мне прям на работе дали новый проект и сказали его на Го делать.

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

>>3411675
>Все на станддартных компонентах или используете орм\фремворки
Да, по большей части все стандартное используем.
Фреймворки вроде gin и DI контейнеры по типу uber/fx не брали - все сами пишем. Используем обычный net/http вместе с chi. Орм еще не брали, используем сейчас sqlx + pgx для постгри. Может быть gorm попробуем затащить в один из микросервисов и в дальнейшем будем с ним жить.
Аноним 20/03/25 Чтв 10:35:45 3412166 317
Аноним 20/03/25 Чтв 12:43:26 3412247 318
Какие посоветуете книжки или курсы для совсем вкатышей? Интересно начать, но не знаю как подступить. Желательно конечно не совсем старые, а актуальностью в год-два. Уже имею некоторых опыт на Powershell и Bash, немного в SQL могу.
Аноним 20/03/25 Чтв 19:13:39 3412545 319
>>3412247
Я начинал с Python crash course, нормальная книжка. Хотя, если есть кое-какой опыт, то возможно слишком нубская.
Я года 3 назад с неё начинал, щас уже вкатился.
Аноним 20/03/25 Чтв 21:13:45 3412600 320
6621081834.webp 19Кб, 415x591
415x591
6441210133.webp 46Кб, 702x1000
702x1000
>>3412247
С начала можешь любую книгу выбрать, я читал "Простой питон" так как Лутц дает слишком много подробностей и тонкостей, для новичка это лишнее.

А потом обязательно эти две.
Аноним 21/03/25 Птн 08:39:08 3412759 321
Есть задача сделать веб портал, что-то типа магазина, с товарами, личным кабинетом, отзывами итд
Писать с нуля на Джанго точно не хочу, тк хуёво шарю во фронте. Думаю взять готовую CMS, а в ней уже потом допиливать нужные свисто-перделки.
Что лучше взять? Вроде как везде хвалят wagtail. А еще есть django cms, она вроде мощнее и больше свободы, но по ней в разы меньше документации.
Аноним 21/03/25 Птн 10:23:36 3412834 322
>>3412247
>для совсем вкатышей
>питон
Земля пухом.
Аноним 21/03/25 Птн 10:32:28 3412846 323
>>3412600
Это для совсем вкатыша ты такие книги выбрал? Давай тогда сразу завтра ищешь в интернете книжку Dive into python. Пофиг если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. Потом зубришь, именно, сука, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало. Когда напишешь свою первую имиджборду, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую Tornado или Gevent. Как переделаешь имиджборду, чтобы выдавала по крайней мере 5 тысяч запросов в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, MapReduce. Отсос хиккующих выблѣдков / просто неудачников типа рейфага или сисярп/джава-удососов, которые сосут уд по жизни не заставит себя ждать и уже через пол года ты будешь получать такие суммы, что любая баба будет течь при одном упоминании твоей зарплаты.
Аноним 21/03/25 Птн 10:43:28 3412859 324
Аноним 21/03/25 Птн 10:44:10 3412861 325
Аноним 21/03/25 Птн 11:01:00 3412880 326
>>3412861
А зачем? В шараге учил, что-то даже писал уровня калькулятора, но нахуй он пошел из моей головы.
Аноним 21/03/25 Птн 11:05:17 3412883 327
>>3412880
Ты сам написал
>для совсем вкатышей
Паскаль решает конкретную проблему - обучение программированию. Питон решает другую(е) проблему(ы), питон тебе не нужен.
Аноним 21/03/25 Птн 12:20:16 3412947 328
>>3412846
Ну хз, вкатываюсь третий месяц пока 438 запросов в секунду. Думаю для небольшой борды вполне сойдет.
Аноним 21/03/25 Птн 13:33:08 3413006 329
Бля, это реально все так >>3404133 эндпоинты пишут?
А нахуя? Почему нельзя ПРОСТО прописать так, как предлагается в доке? В этом есть какой-то практический смысл?
Аноним 21/03/25 Птн 13:34:39 3413009 330
>>3407152
>По разному, почти всегда просят написать декоратор с параметром и что-нибудь про индексы в бд спрашивают.
Литералли то же самое, что у меня на джуна спрашивают на собесах.
Аноним 21/03/25 Птн 14:21:38 3413036 331
>>3413006
так эндпоинты пишут милорды синьоры, наберись опыта, подучись и всё поймёшь.

Но судя по лексике ты в IT недавно, так что, как говорится, "караван идёт, а собаки лают".
Аноним 21/03/25 Птн 14:23:33 3413038 332
>>3413036
>Но судя по лексике ты в IT недавно
Естественно, поэтому и спрашиваю.
Аноним 22/03/25 Суб 16:45:20 3413726 333
Подкиньте материальчика как нормально писать на питоне, современно, модно, молодежно. Я перекатился с плюсов и код у меня выходит архиуебищным, с кучей классов, абстракций, иерархиями, попытой в метаклассы. Но все либы на питоне которые я читаю написаны по-другому, более кратко, плоско, емко. Короче нихуя не понимаю идеологию питона.
Аноним 22/03/25 Суб 17:02:11 3413730 334
Аноним 23/03/25 Вск 17:15:10 3414361 335
>>3413006
Потому что писал обезумевший от паттернов и солида клинкодокретин. За такую хуйню в нормальной команде переломают колени и отправят переписывать
Аноним 25/03/25 Втр 20:06:02 3416015 336
я придумал новый синтаксис. можно будет создать переменные, которые устанавливаются только при первом вызове функции и в дальнейшем будут видны только этой функции.
это нужно чтобы не создавать внешних переменных, коротким способом.

def say_hi_once()[done: False]:
if not done:
done = True
print("hi")
Аноним 25/03/25 Втр 23:15:40 3416135 337
Подправьте код, чтобы работало, мимо домохозяйка

x=0
n = input("Enter n:")
for i in n:
x=(x+33000)*1.0167
print(x)
Аноним 26/03/25 Срд 00:38:09 3416171 338
>>3416015
Почему бы тебе просто не сделать так:

def say_hi_once(done = False)
Аноним 26/03/25 Срд 01:42:31 3416182 339
>>3416015
Конечно! Ваш код имеет несколько ошибок, которые нужно поправить, чтобы он работал корректно:
input() возвращает строку, а нужно число.
Переменная n используется в цикле for, но вы хотите повторить цикл n раз — значит, нужно привести n к int.
Внутри цикла нужен отступ.
Комментарии или пояснение могут помочь "домохозяйке" разобраться, что происходит.

Вот исправленный и понятный вариант:

x = 0
n = int(input("Введите количество месяцев: "))

for i in range(n):
(отступ)x = (x + 33000) * 1.0167 # добавляем 33000 и прибавляем 1.67% ежемесячно

print(f"Итоговая сумма: {x:.2f} руб.")

Пример:
Если ввести 12, то это значит "в течение 12 месяцев мы добавляем по 33000 и начисляем 1.67% ежемесячно".

Если что-то нужно упростить или сделать интерфейс ещё понятнее — могу помочь.
Аноним 26/03/25 Срд 01:57:29 3416184 340
>>3416182
Благодарю за предоставленный ответ! Ваше пояснение оказалось весьма полезным: вы корректно указали на необходимость приведения input() к int, добавления отступа в теле цикла и уточнили логику расчёта. Также ценю комментарии, поясняющие происходящее в коде — это действительно помогает лучше понять процесс. Спасибо за помощь!
Аноним 26/03/25 Срд 15:18:29 3416620 341
У меня небольшой скрипт на питоне для приема сообщений из телеги. Есть ли какая-то разница в скорости работы между запуском скрипта из вижуал кода и напрямую?
Аноним 26/03/25 Срд 21:28:48 3416883 342
Аноним 26/03/25 Срд 23:39:20 3416960 343
Ананасы, помогите, пожалуйста. Я не Питонист, ничего про язык и его фреймворки не знаю.
Проблема такая: есть Python приложуха на Гитхабе, которую я хочу установить. Она подтягивает зависимости через pip. Однако мне важно, чтобы она была полностью самодостаточна, чтобы рут папку можно было переименовать или перенести по новому пути, на новый компьютер, без дозагрузок через pip. Какой лучше подход использовать? Пробовал создавать venv и устанавливать все туда, но там суровый хардкод путей. Даже вручную пути заменял все, все равно что-то ломается. Пробовал создавать новый venv, переносить туда папку Lib из старого, но тоже что-то не так. Походу нужно как-то каждый pip package заново устанавливать в новую директорию, а не просто файлы мигрировать. Что делать, куда копать? Буду рад, если выручите, а то я уже голову сломал. В идеале вообще батник какой-нибудь собрать, который будет "мигрировать" venv с одного пути на другой и пересобирать всё как надо.
Аноним 26/03/25 Срд 23:49:17 3416962 344
>>3416960
То что ты ищешь скорее всего называется Nuitka и позволяет запаковать приложение как бинарник.
Если хочется избежать, то можно попробовать uv, но не обещаю что получится.
Аноним 27/03/25 Чтв 00:04:45 3416967 345
>>3416962
С бинарником сразу мимо, ибо важно оставить файловую архитектуру как она есть и есть возможность пуллить приложуху с Гитхаба. Про uv сейчас почитаю, спасибо.
Аноним 27/03/25 Чтв 14:02:53 3417253 346
ты точно вкатиш[...].png 331Кб, 1992x1544
1992x1544
Аноним 27/03/25 Чтв 15:00:46 3417296 347
>>3416967
посмотри, как реализовано в питон-дистрибутиве yt-dlp.
Аноним 27/03/25 Чтв 16:35:49 3417362 348
Начал проходить курс по этому вашему питону и сращу вопрос, нахуя столько условий для переменных? И какого хуя они зависят от регистра? Вот в том же Powershell все намного проще и логичнее
Аноним 27/03/25 Чтв 16:44:04 3417373 349
>>3417362
Может потому, что а и А это разные символы?
Аноним 27/03/25 Чтв 17:03:11 3417387 350
>>3417373
Надо ж быть такими ебанутыми.
Аноним 27/03/25 Чтв 17:18:49 3417396 351
>>3417362
Все сколь-нибудь серьезные языки программирования чувствительны к регистру, добро пожаловать.
Аноним 27/03/25 Чтв 18:31:50 3417464 352
Аноним 27/03/25 Чтв 18:59:17 3417496 353
>>3417362
> И какого хуя они зависят от регистра? Вот в том же Powershell
Виндоадминство до добра не доводит
Аноним 27/03/25 Чтв 19:39:29 3417555 354
Аноны помогите пж.
Есть таблица SQL, всего на 7 строчек.
Создал функцию (собственную, def).
Таблица SQL - это исходные данные для этой функции.
С помощью multiprocessing запустил параллельно 7 процессов (то есть как бы 7 экземпляров моей функции), но из 7 строчек исходной таблицы тот процесс, который соответствует строчке с id = 7 ниху не робит. А когда его отдельно запускает - то все окей. Блять ума не приложу, перегуглил все че можно нах. Как такое может быть? Если этот процесс в одиночку запускать, то все ок. В функции ошибки быть не может, ведь она единая для всех процессов
Аноним 28/03/25 Птн 10:42:14 3417918 355
>>3417555
У пистона нумерация с 0 идёт.Ты правильно id указал?
Аноним 29/03/25 Суб 18:02:29 3418937 356
>>3414361

Ты прав, что данный код исповедует и solid и применяет паттерны и это python style вменяемых кодеров, что для обычных нормальных команд в твоём заштатном мирке, это предел понимания.
Аноним 29/03/25 Суб 20:08:18 3418996 357
image.png 385Кб, 1269x833
1269x833
Аноним 30/03/25 Вск 10:17:17 3419312 358
>>3417918
>У пистона нумерация с 0 идёт.Ты правильно id указал?
видимо ошибся, да...id = 6
Аноним 30/03/25 Вск 21:34:11 3419829 359
carbon(4).png 125Кб, 1380x744
1380x744
ЗАДАЧА ДЛЯ СЕНЕК

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

А теперь я задумался, а что тогда делать есть нужна транзакция с несколькими запросами, ведь делать такое на стороне бекенда означает пиздец производительности:

1 накладные расходы на ввод вывод между бд и бэком.
2 в точках await происходит прерывание и пока корутина не возобновит работу транзакция простаивает блокируя строки в бд.

Или я не прав и сплошь и рядом транзакции пишут на стороне бекенда?
(на сам псевдокод внимания не обращайте, он нужен только для демонстрации концепции).
Аноним 30/03/25 Вск 22:59:14 3419862 360
>>3419829
Транзакция должна вызываться за один запрос.
Если у тебя в бд есть хранимка, что мешает ее запрос разом послать, без промежуточных получения данных и новых запросов?

Транзакция, в которой бек получает промежуточный запрос и отправляет следующий в рамках одной транзакции, это конечно срань какая то.
Аноним 30/03/25 Вск 23:20:24 3419870 361
>>3419829
>в точках await происходит прерывание и пока корутина не возобновит работу транзакция простаивает блокируя строки в бд.
Ну так ты несколько обработчиков питона запускай. У тебя один сервер что-ли?

"лид" прав в том, что хранимые процедуры создают горячее немасштабируемое место в районе сервера БД, а вот масштабирование бэнкедов более-менее подъемное и встречающееся дело.
С другой стороны, может он просто не знает pl/sql
Аноним 30/03/25 Вск 23:22:52 3419872 362
>>3419829
>в точках await происходит прерывание и пока корутина не возобновит работу транзакция
Кстати, тут ты не прав. Залипание транзакции возникает на сетевом вызове, так что никаких проблем с масштабированием не будет. Если ты конечно все технологично написал и юзаешь библиотеку с поддержкой async io
Аноним 30/03/25 Вск 23:52:38 3419883 363
>>3419872
напиши подробнее, что ты имеешь в виду?
в чем конкретно я не прав?
ты утверждаешь, что прерывание корутины не замедляет транзакцию?
Аноним 30/03/25 Вск 23:54:42 3419884 364
>>3419862
да, вот мне тоже кажется, что срань.
Аноним 30/03/25 Вск 23:57:55 3419885 365
>>3419870
>Ну так ты несколько обработчиков питона запускай. У тебя один сервер что-ли?
так проблема не в простое бекенда, а в простое базы.

из-за общения с бекендом записи в базе долго остаются заблокированными.

смысл в том, чтобы транзакция как можно быстрее выполнялась. Особенно это важны когда изоляция репитебл рид или сериалайзабл.
Аноним 31/03/25 Пнд 21:32:42 3420480 366
>>3418996
Ввел "n". Твои действия?
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов