Этого треда уже нет.
Это копия, сохраненная 9 ноября 2022 года.

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

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

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

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

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

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

— А что ещё можно читать?
Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html

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

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

— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.

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

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

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

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

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
2 2462098
почему значок не желто-блакитный, что за русофобия?
3 2462108
>>462098

>почему значок не желто-блакитный


Кто придумал этот "блакитный"? В известной песенке

> Під синьо-жовтим прапором свободи



На ОП лого питона, если его подсветить фиолетовым фанариком.
4 2462110
>>462108

>фанариком.


фонариком
5 2462114
>>462098
нужно писать ЖОВТО а не жёлто
6 2462228
Хочу девочку питонистку в чвлочках и без хуя, чтоб скромная была
7 2462260
>>462228
Перехочешь.

пойти на хуй
говнокод.webm3,9 Мб, webm,
1280x720, 0:26
8 2462390
9 2462413
>>462085 (OP)

>Очень годный ролик на американском языке про многопоточность и асинхронность



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

Он не годный.
12.png130 Кб, 1518x610
10 2462419
Какой смысл указывать в схеме поля, которые отсутствую модели? Мы же никуда их сохранить не сможем, и чел их просто так отправит в запросе
11 2462646
>>462413
Это единственная проблема шапки?

>— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать


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


Человек, написавший это, не читал ни sicp, ни свою хуйню. И тем не менее написал. Теперь мир стал чуточку хуже из-за него. И спорим что этот чел свято уверен, что никак не повлиял на ввод войск на украину?
164410456330-damion-club-p-kufiya-zmeya-zhivotnie-31.jpg149 Кб, 1080x1080
12 2462721
Привет!
Работая сись админом понял чем хочу заниматься,
гуглив, выбирая из c#, node.js, python, go,
выбор пал на питона, хочу вкатиться в DevOps,
По жизни кодил мало, еще в на засратых курсах, давно короче, линуксом не пользовался, планирую поставить ubuntu и изучать его попутно.

По поводу питона, хочу найти курсы на торрентах, которых миллион, что же выбрать?
В шапке какие-то мутные ссылки, большинство не базовые и упор держащие именно на синтаксис языка,
Хочу общий начальный курс питона с торрентов, который наведет на путь истины и даст возможность изучать более сложные стези языка, желательно на русском, уровень английской B1, средний.

Кто уже крутится в этом, какой курс вы бы посоветовали, так сказать с нуля? Или может быть книгу?
По поводу Луца, 1.3к страниц, надо ли?
13 2462813
>>462721
Посмотри на "автоматизацию рутинных задач на питоне", думаю это больше зайдёт. Лутц совсем так себе вариант
14 2462816
>>462413
Да ладно, упругие деды в лайвкодинге разбирают кишки питона. Есть что лучше?

Шапка устарела вообще:
Лутц в принципе говно, неправильно его форсить в шапке. Don't think about yellow elephants.

Харьянов на любителя. Джанго уже четвертая версия. SICP говно, от него даже в MIT отказались, а питон-курс только частично на питоне, потом они меняют его на схему и вообще неполный.
15 2462863
>>462413
Ну так поставь, кто мешает?
16 2462897
>>462816

>SICP говно, от него даже в MIT отказались


Да, сразу после того, как сам эмайти стал говном.
17 2462903
>>462884 (Del)

раз в год пишу это сообщение, кстати


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

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

>>462887 (Del)
Предложи нормальный вариант. Пока были только ссылки на свою страницу от какого-то анона, но там был какой-то непригодный рандомный шлак

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

Харьянов и SICP в меньшей степени.
18 2462924
>>462721
Запишись на яндекс.практикум у них там есть курс по питону.
19 2462933
>>462924
У питона хороший учебник в официальной документации, в шапке ссылка
https://docs.python.org/fr/3/tutorial/introduction.html

Вот нашёл перевод документации на русский язык
https://digitology.tech/docs/python_3/tutorial/introduction.html

Я бы вообще рекомендовал всем не искать книги левые и курсы, а начинать с официального учебника от сообщества. Он действительно хороший.
20 2463008
>>462935 (Del)
Мы об одном и том же ролике говорим? Ты его смотрел? Я не вижу там никакого перечисления АПИ и никаких рекомендаций в духе how to. Обычно все ролики показывают примеры, как что-то сделать.

А там другой концепт, "хочешь понять как работает операционная система - напиши свою собственную". Вот там начиная с базы показывают проблемы тредов и шаг за шагом строят модель свой собственный event loop. Как посмотришь, так сразу будет понятно, как это работает.
21 2463019
>>462937 (Del)
Ты прав в целом. Но у питона есть отличие от других языков: питон вырос в академической среде, он пришёл оттуда. В этой среде очень много тех, кто специализируется на образовании и умеет учить, составлять материалы обучающие. Поэтому и для питона сделали очень хорошие обучающие материалы.

Официальные обучающие материалы по питону очень хорошие, образцовые. Ещё очень хорошие материалы по джанго. Вот со всем остальным уже слабо, хорошо если API мало-мальски адекватно задокументируют.
image.png30 Кб, 484x281
22 2463051
Аноны, какие есть мнения по пикрилу?
23 2463060
>>462085 (OP)
Короче, предлагаю обновление шапки, ссылка на новый исходник
https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
(dumpz больше не разрешает ссылки), ниже текст, другим постом комментарий

Тред, посвящённый языку программирования Питон, #149

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

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

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

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

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

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

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

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

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

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется
23 2463060
>>462085 (OP)
Короче, предлагаю обновление шапки, ссылка на новый исходник
https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
(dumpz больше не разрешает ссылки), ниже текст, другим постом комментарий

Тред, посвящённый языку программирования Питон, #149

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

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

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

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

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

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

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

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

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

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

1) выпилено мёртвое хранилище книг, две ссылки, которые стали с регистрацией или антиадблоком, добавлена другая, где можно указывать код с url

2) выпилена ссылка на ЧАВО на гитхабе. Оно было старое и бесполезное.

3) переделаны пункты "что изучать", упор на учебное пособие от комьюнити, Лутц и другие косвенно.

4) Чуть подправлено про джанго, пара общих слов про фреймворки.

5) Ролик про асинхронность оставлен, ссылка на Харьянова оставлена, ссылка на Киви оставлена, ссылка на SICP оставлена. Пусть будут.

Мне кажется, надо изучить, что сейчас доступно по записям лекций. Наверняка что-то более интересное появилось.Но мне лень этим заниматься.
25 2463069
>>463067
>>463060
У кого гнев, изливайте! У кого предложения, тоже давайте сюда их!

Старой шапке больше двух лет уже было, без изменений вообще.
26 2463070
>>463060
блин, это обрезанная версия, полная:
Тред, посвящённый языку программирования Питон, #149

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

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

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

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

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

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

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

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

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

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

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

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

старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
26 2463070
>>463060
блин, это обрезанная версия, полная:
Тред, посвящённый языку программирования Питон, #149

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

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

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

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

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

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

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

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

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

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

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

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

старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
27 2463074
>>463069

>У кого предложения, тоже давайте сюда их!


Для автотестеров инфы бы. Хотяб абзац и/или ссылку для фронтеров и бекеров.
bopytest2.jpg1,1 Мб, 2250x2700
28 2463083
>>463074

>Для автотестеров инфы бы


Если не брать синтаксис языка, то, думаю, книги с пика хватит. Сам не читал, не знаю настолько хороша англ. А у селениума хорошие доки, статьи в интернете - тут книги не нужны.
29 2463089
>>463085 (Del)
У тебя не будет нормального понимания, если ты просто будешь запоминать правила, как что-то работает внутри. Вот ты когда сам что-то попробуешь реализовать, или хотя бы посмотришь, как это другие делают, то сразу получишь огромный буст в своём уровне, многие вещи становятся очевидными, что до этого было непонятной магией.
30 2463220
>>462085 (OP)
Как изменить имя переменной? Дайте пример пж. Именно имя, словарь не хочу.
31 2463224
>>463220
a = 10
b = a
print(b)

Обращайся, друг.
32 2463249
>>462810 (Del)

>Если ты не новичок - Седер читай. Это очень краткая книжка.


Тоже какое-то говно мамонта. Переизданное и подретушированное.

В книжке ни слова про typing. Ни слова про asyncio. Ни одного использования оператора := . Ничего про датаклассы, не говоря уже про внешние пидантики. Ничего про тестирование в unittest/pytest. Экскурса в продвинутые темы вроде многопотока тоже нет, хотя бы поверхностного.

f-строки есть, появились в 3.6, но это не делает книгу современной.

Ладно асинхронщина, это сложная нишевая тема, далеко не всем надо в принципе. Но нельзя в современном питоне без хотя бы поверхностного обзора аннотаций типов. Ты открываешь примеры документации и видишь там аннотацию, как этот код читать и понимать?
33 2463262
>>463224
Это другая переменная. Ты создал новую и присвоил ей значение старой, теперь у тебя их две. А мне надо одну переименовать.
34 2463264
>>463262
Тогда так
a = 10
b = a
del a

И у тебя снова будет одна переменная. Это переименование, ты можешь проверить по id(a), id(b). Надеюсь ты знаешь, что в питоне всё объект, а переменные всего лишь указатели на них.

Задавай следующий вопрос.
36 2463289
>>463265
Ему без словаря надо. Выше самый адекватный способ.
37 2463298
Сап двач. Есть задача пик1 и ее решение пик2.
Вопрос. А что если в условии задачи не стояла бы необходимость в замене города на дефис, что нужно прописать в тернарном операторе и почему его невозможно использовать без else ?
И почему тогда list comprehension на пик3 можно использовать и с else и без?
38 2463382
>>463298

>тернарном операторе


>невозможно использовать без else


Тернарный без елс би лайк: в чем разница между уткой?

>можно использовать и с else и без


Наверное потому что не всякий иф создает тернарник, а в хвосте компрехеншнов иф имеет другое значение. Ознакомься с синтаксисом компрехеншнов и все встанет на свои места.
изображение.png580 Кб, 1042x1131
39 2463407
Возрадуйтесь, методисты!
Переведен и украден свежий Рамальо https://t.me/it_books_tg_archive/824
14777292432570.jpg392 Кб, 1080x1108
40 2463463
>>463407
Спасибо, почетайу
41 2463482
Питон нормальный выбор для вкатуна с нулевым опытом?
42 2463484
>>463482
А мы не знаем. Ты же тут вкатун, а не мы.
И спросить по-честному не у кого. Ведь вкатунов, которые не вкатились тут нет по очевидной причине.
14950438821650.jpg223 Кб, 1022x1022
43 2463503
>>463482
Нормальный.
44 2463545
>>463482
Смотря куда вкатываешься. В бэке вот не оч много пайтона. В дата анализе он по сути монополист.
45 2463601
>>463407
Для тех кто только учится она не годится?
46 2463622
Господа, вкатываюсь, поясните как работает....

y = "string"
x = y[a:b:c]
47 2463630
>>463622
Все, я понял.
Старт, конец, шаг.
Жесть я тупой
48 2463634
>>463630
Да, ты тупой.
Выкатывайся.
49 2463635
50 2463643
>>463634
Посмотрите на этого вкатуна, который пытается избавиться от конкурентов итт
51 2463654
>>463643
Я пишу асинхронные многопоточные приложения на питоне, а ты сосешь хуй.
52 2463685
>>463601
смотря чему учится.
в аннотации написано что для продвинутых.
но ты можешь например начать с нее изучать asyncio, в отличие от невнятного ролика на "американском" языке
53 2463701
Возможности для логирования действий юзеров в django.
Выявил две опции:
1) from django.contrib.admin.models import LogEntry
2) pip install django-activity-stream

Первый вариант попроще, вторая сильно более мудрёная, но там и функционал более разнообразный. Сталкивался ли кто с такой задачей и\или юзал что-то подобное?
54 2463744
Привет, анонче. Глянь плиз курсы по Тестированию? Автоматизация на питоне будет, может, кто что подскажет, фигня ли или еще ничего.

https://profidigital.gosuslugi.ru/courses/18733
https://skillfactory.ru/qa-engineer-python-testirovshchik-programmnogo-obespecheniya
55 2463967
>>463744
Слишком дохуя часов на левую поебистику - первые три модуля. Вся ручная теория и тулы максимум 36 часов. И то если начать не с ютюба, а с Савина, в противном случае можно за 24 часа управится, вместе с практикой на тренажерах от комьюнити.

Слишком мало часов на питон и автоматизацию. Особенно учитывая, что это не чистые часы проведенные за кодом, а размазанные сопли "преподов" в видеоформате. Так что смело дели на два или даже четыре.

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

Яб за такое даже 20к не отдал, даже не смотря на то, что вся инфа есть в свободном доступе, либо на бесплатных курсах. А уж 105к...
56 2463997
Аноны, а как правильней инициализировать пустую переменную (для строки в моем случае)?
string = "" или string = str()
57 2464005
>>463997
s = "" и только так. Тоже самое относится и к словарям со списками, через {} и [] соответственно.
58 2464024
Недавно начал писать на Питоне и не до конца понимаю методы импортирования своих функций в другие проекты.
Если короче, то создаю папку под проект, в ней папку например lib, куда кладу файлы скриптов. Как мне из lib вызвать класс Down, который лежит в файле down.py? from lib import down.Down?
59 2464025
Это нормально, что я работаю 20-40 минут, потом около часа втыкаю в двачи/ютуб, как перестать прокрастинировать?
60 2464030
>>464025
Да, нормально. У меня так же.
20-40 минут погромирую на питоне асинхронные многопоточные приложения, потом около часа втыкаю в двачи/ютуб.
61 2464043
Я большую часть рабочего времени трачу на то чтобы разобраться как в технологии х работает фича y, за вчера по-моему, ох не пройду испытательный....
62 2464278
>>464005
А почему через str() нельзя? Оно вроде работает.
63 2464301
>>464278
Можно, но нахуя? Со скобками нагляднее.
Есть смысл так инициализровать только пустой сет, потому что {} забито под словарь.
64 2464302
>>464301
С кавычками то есть.
65 2464331
>>464278
Очень некрасиво и ненаглядно. Со строками отдельный разговор, потому что строки это иммутабельный тип. Ты не можешь дополнить строку, ты можешь только перезаписать переменную новой строкой. Даже если ты делаешь
s += 'tail'
будет создана новая строка. Поэтому str() совсем лишено смысла.

Со словарями и списками это стандартная рекомендация и общепринятая практика, так нагляднее и не перегружено. Хотя в pep8 вроде бы ничего нет про это.
66 2464339
>>464278
А ещё должно быть единство стиля. Пустые объекты это частные случаи просто объектов. Ты же стрки с содержанием не через str() создаёшь? И списки, в которых что-то есть, через скобочки скорее всего. И словари. Почему в случае пустых объектов должна быть особая политика?
67 2464349
>>464331
>>464339
Справедливо, спасиб.
68 2464621
>>464349
Забей, там аргументов у него нет, одна вкусовщина
69 2464720
Если знаю базовый синтаксис, теперь куда двигаться дальше? Не хочу просто дрочить сидеть, хочу проводить время с пользой и потом со свободной душой делать что хочу.
70 2464724
>>464720
Начни с прочтения нескольких книг/статей/курсов, потом выбирай направление, фреймворк, дрочи их, пиши пет-проекты.
71 2464740
>>464720
Вот тебе скрипт для проверки поёбанных и починенных после майнинга видеокарт.
https://pastebin.com/NFSaukdn
Меня впечатлило в своё время. Это тебе не символы считать в задачках для даунов.
image.png574 Кб, 1282x721
73 2464852
>>464746
Клавиатура прикольная в питон-цветах. Где такую купить можно, если в МСК?
74 2464957
>>464852
Это украинские цвета
75 2465107
>>463503
>>463545
Слышал, что питон сейчас якобы на хайпе у вкатунов и питон джунов ещё больше, чем в других языках, или это хуйня?
76 2465145
>>465107
Это так, но если ты не тупой, то тебе это не помешает.
77 2465160
>>465107
Так, но если у тебя знаний больше чем у них, то поебать. Ну вернее не совсем поебать, если тебя отфильтруют до того как ты эти знания сможешь продемонстрировать, надо ведь сначала до собеса дожить, или хотя бы тестового, но дальше уже поебать.
78 2465292
С помощью каких инструментов это делать? Как так визуализировать и анимировать данные и процессы?
https://www.youtube.com/watch?v=PTTIZ8EmbEQ
79 2465304
>>465292
С чего ты взял, что это питон?
А так, стандартный пигейм, но хз, сможет ли он в такое, я с ним не возился.
80 2465317
>>465304
Предположил что питон, там много библиотек для раьоты с данными, думал просто где-то библиотека с визуалом прикручивается
81 2465326
>>465292
больше на жабу похоже
82 2465334
>>465317
Я глянул список его видео, там есть про это, какая-то кастомная хуйня.
https://www.youtube.com/watch?v=uI2WqUa8FaI
83 2465346
>>465326
>>465304
>>465292
Есть ли аналогичные библиотеки для математического моделирования и визуализации и анимации в python/js ?
84 2465347
>>465334

>Pixilang


Какое то дрочево
Ладно, будем смотреть
85 2465350
>>465346
p5.js глянь.
86 2465379
>>465346
пайгейм, матплотлиб
87 2465708
>>463051
Кормит
88 2465832
>>463051
Когда переходишь в определенные типы проектов становится вообще похуй что там на вебморде
преисполнилась.jpg79 Кб, 1080x1026
89 2465986
90 2466010
>>462085 (OP)
а на основе чего вы собираете свои docker-образы? чёт на убунте как-то жирно по 600мб по сети гонять
91 2466019
>>466010
Alpine
92 2466045
>>466019
говно на musl жеш
93 2466101
Хочу программировать на питоне, но у меня макпук. Я бы даже и заплатил за пользование пайчармом, но иностранные компании не хотят брать мои деньги. Какие есть варианты, чтобы кодить на маке?
image.png58 Кб, 974x403
94 2466111
>>466101
А в чём проблема то? Качай питон, качай любую идешку и вперёд щас бы деньги за иде платить лол
95 2466122
>>466101
Если ты не додумался спиратить пайчарм или скачать бесплатный визикод, то не надо тебе в питон, у нас тупые, но не настолько.
96 2466125
>>466010
В докерхабе ж есть прям под питон заточенные.
97 2466148
>>466125
Анон про другое я думаю. Базовый образ очень большой, он 900 мегабайт. Если ты на его основе делаешь свой образ, от будет ещё больше. Если ты по сети гоняешь готовый образ, то будешь гонять все 900 мегабайт. А собирать на другой машине докер тоже не вариант, потому что тебе внутрь надо класть какие-то данные с машины разработки.

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

Самый правильный подход в этих случаях, это двухшаговая сборка. Когда снячала на основе тяжёлого образа собирается всё, а потом копируется в лекговесную альпину нужные файлы и окружение. При желании можно вообще с нуля собирать сумерлёгкий образ, но это извращение и так не принято.
16567607239376.jpg19 Кб, 530x529
98 2466216
Мои плaны нa жизнь?... Жить!... Причём с удовольствием!
99 2466313
>>464724
>>464746
Ну так сказать легко. Посоветуйте материлов, куда двигаться дальше.
100 2466343
>>466148
Ты эти 900 метров гоняешь один раз, и то если у тебя нет в кэше слоя с убунтой от другого образа. Дальнейшие обновления будут гонять только изменившийся слой, то есть твои 2кб говнокода.
101 2466394
>>466343
Это если ты настроишь локальный репозиторий, а не будешь гонять образы целиком. Но для этого его надо создавать и настраивать, организовывать процесс, чтобы закачивать туда образы и т.п. Наверное это правильно, но сложно.

А вот отправить образ целиком - просто, через docker image save
102 2466399
>>466394
Кэширование слоев работает независимо от того, что за репозиторий используется. По-дефолту передаются только недостающие слои.
103 2466403
Ну че, питоноблядье, как сосется? Нормально?
https://www.youtube.com/watch?v=eTucYT2LpNU
104 2466422
>>466399
Это как?
Вот я делалаю
docker save -o exprort.tar my_image
и получаю огромный tar-файл. Я могу его только целиком выслать. А на другом компьютере его уже загрузят
105 2466430
>>466403
А что тебе не нравится?
106 2466444
>>466422
Надо сделать докерфайл, который развернет такую хуйню на основе стандартной болванки, ты же просто развернутую хуйню пересылаешь, это бессмысленно.
107 2466466
>>466430
Ломающие изменения в минорном релизе, например. Или что какой то долбоеб решил что большие числа это волнерабилити, может тогда все вычисления без доказуемой константной стоимости выкинуть, хуле.
108 2466471
Привет почаны. Хорошо знаю Жанго, OpenCV, numpy и всякую другую мишуру. Хачю заработать бабосек, вопрос собсна в "Где деньги Лебовски". Слышал что у мои дружки-пирожки в конфах прогеров сидят и там иногда просят всякую жижу написать, но сам я никогда не торчал в таких местах, где для пиитонеров такое? Сам я опыт коммерческой имею, пару проектов писал, но сейчас где заказы брать хз, пробовал на фриланс сайтах, но там меня в только игнорили, а потом нахуй выкинули с сайта после 24 февраля. Где работу то найти, чтобы скрипточек накалякать и кайфовать? И мб у кого конфы питонистов есть?
109 2466478
>>466444
Я другой анон, чем вот этот >>466010 но его проблемы понятны.

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

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

Арифметика с большими числами сохраняется. Они убрали только возможность печатать сверх большие числа в недвоичном виде. Но зачем тебе на экране число в 10 тысяч знаков? Причём если надо, то исправляется одной строчкой.
111 2466486
>>466478

> Например выкачивать из гит-репозитория.


Он уже должен быть при разработке. Но возней ты считаешь это, а не пересылание гигабайтов бессмысленного говна.
112 2466493
>>466486
Не всё нужно хранить в гите. У тебя может быть масса отладочных артефактов, они нужны для запуска отладочной копии, но не нужны в гите. Тебе могут понадобиться какие-то медиа файлы, которые ты не хочешь держать в гите. Даже код, у тебя может быть тестовая версия. Я так понимаю, что тут вопрос отладки.

Другие нюансы: у тебя образ собирается например
FROM python:3.10
а вот здесь >>466403 приводится пример, что после минорного апдейта по разному работают интерпретаторы. Вот пусть ты печатаешь число в 30k знаков. На одной версии работает, на другой нет. Как отлаживать?
113 2466495
>>466483
Я то видео смотрел, но только я не такая внушаемая Манька как ты и если мне на говно говорят это не говно - я все равно не поверю в это.

> Но зачем тебе на экране число в 10 тысяч знаков? Причём если надо, то исправляется одной строчкой.


Чтобы посчитать любимый факториал, зачем еще скриптовое говно нужно. Откуда я вообще просру про эту строчку и нахуя мне это надо, я просто хочу нормально работать с длинной арифметикой и мозги не ебать.
А эти "срочные" обновления для вашей же безопасности это вообще отдельная тема для рейджа. Индустрия пизданулась, уж лучше сидеть по 50 лет ничего не обновлять чем так.
114 2466813
КАК БЛЯТЬ установить версию моего пакета? Я, сука, что только не делал, но на importlib.metadata.version("моя_хуйня") он выдаёт полную хуйню. Я сейчас все нервы себе сожгу от злости.
115 2466830
>>466493

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


>видимо не в курсе существования веток


>не указывает конкретную версию корневого образа


>На одной версии работает, на другой нет. Как отлаживать?


Я бы начал с найма кого-то компетентного.
116 2467215
>>467036 (Del)
Так а как установить? Я вроде setup.py, pyproject.toml, прописывал __version__ в __init__.py, нихуя не сработало. Может я на каком-то моменте проебался просто.
117 2467515
Двигать папку .venv плохая затея?
Лучше фризить пакеты и заново пересоздавать?
118 2467521
>>467515
Не, там говноскрипты для развертывания окружения и файлы кастомных пакетов, не должно ломаться.
119 2467525
>>467521
Ну у меня после перетаскивания и активации пипки команда
pip -V
начинает выводить ошибки (в активной (.venv) оболочке), либо ссылается на глобальную пипку (C: appdata).
120 2467529
>>467525
В пределах одного сетапа ОС или разных?
121 2467536
>>467529
В пределах одной ОС (винда).
122 2467542
>>467536
Глянул, там есть зачем-то хардкод пути в activate.bat для шинды. Можно там подкрутить попробовать, ну или фризить и разворачивать наново.
123 2467556
>>467542
Да у меня даже на линуксе часто проблемы с этим были, походу да, лучше фризить и переразворачивать.

Вроде есть какой-то аргумент --relocatable, но есть подозрения один хер где-нибудь будут абсолютки.
124 2467734
Ниже пишут, что языки с динамической типизацией говно и используются чтобы написать пару скриптов, а нормальные продукты пишут на Java или С++.

Стоит ли дальше учить пистон этот ваш или лучше в Джаву катитьсякак же я не хочу писать эти ебучие джава-простыни на весь экран
125 2467762
>>467734

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


Ну и ты пиши, если хочется.
126 2467774
Почему не удается применить код 307 для flask в методе
return redirect('/index', code=307). Выдает 405 Method not allowed, хотя в справочнике кодов HTTP четко указано, что лучше применять 307 вместо 302.
127 2467783
>>467774
НИ РАЗУ за дохуя лет не видел 307. 302 или 303 для редиректа, 301 и 304 для некоторых других целей.
По 307 написано, что надо использовать тот же метод, у тебя есть ручка пост на /index?
128 2468745
>>467734
По твоему вопросу видно что ты не знаешь чего хочешь.

Если ты хочешь научиться кодить ты должен хотеть кодить.
Ты должен хотеть хотеть писать свои программы, решать свои задачи.
129 2468759
https://www.pythontutorial.net/
Годно для новичка?
130 2468764
Чота не могу сообразить, как с помощью url_for в Flask сделать подключение стилей к странице.
Сделал include "_style.html", в нем пишу
{% for style in stylesheets %}
<link rel="stylesheet" href="{{ url_for('static', filename='css/style') }}">
{% endfor %}
Естественно это не работает. Как добраться до переменной style?
131 2468765
>>468764
Сделал так, но чувствую, что можно было бы сделать изящнее.
{% for style in stylesheets %}
<link rel="stylesheet" href="/static/css/{{ style }}">
{% endfor %}
132 2468772
>>468759

>https://www.pythontutorial.net/


>Годно для новичка?


Кстати очень прилично, и даже не только для новичков, там продвинутые вещи есть и как-то очень внятно изложены
133 2468775
>>468772
>>468759
Ещё чуть дополню, вряд ли это может быть пособием по введению в программирование с нуля, но если самую базу на любом языке умеешь, то уже нормально.

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

Очень годное собрание. И воды мало.
134 2468790
И снова здравствуйте. Я опять по Flask.
Хочу присвоить css-атрибуты полям формы. На SO пишут, что можно делать что-то типа class_=".btn-primary" прямо в аргументах wtforms. Насколько это правильно? Есть ли другой способ, потому что во всплывающих подсказках по формам нет такого аргумента как class_.
135 2469741
Суп, анончики. Дайте, пожалуйста, идей для программок. Ковыряю сам, книжки не читаю. так интересней
Калькуляторы писать не интересно, а ничего кроме них на ум не приходит
136 2469759
>>469741
Криптографический алгоритм какой-нибудь реализуй, лол.
137 2470102
Норм курс-тутор для вкатуна?
https://www.youtube.com/watch?v=XKHEtdqhLK8&t=1873s
138 2470109
>>470102
Нет
139 2470115
>>470109
Почему?
140 2470195
>>470115
Слишком долго
819408df69ab1bd6ae2585168345a98c.jpg61 Кб, 564x564
141 2470517
дайте какой нибудь фреймворк на петухоне, есть задача, нужно сделать гуи, в котором кнопка input json, распарсить жсон и сортировать, звучит просто

так вот, как лучше это реализовать?
142 2470810
>>470517
tkinter
143 2470812
>>470810
Древнее говно мамонта.
Про TCL\Tk который у него там внутре уже никто и не помнит.
Но под задачу подходит, даже можно кроссплатформенное приложение наваять.
14702368465180.jpg19 Кб, 301x395
144 2470813
>>468790
Да, это какой-то хак.
Но если работает, то хуярь.
145 2470850
>>470195
Толсто. Зачем вообще писать, если не можешь пояснить?
146 2470906
>>470850
Ну так включи и посмотри, сделай выводы, удобен он для тебя или нет. 12 часов, не так много.

Но если ты думаешь, что за 12 часов много чему научишься, то нет, не бывает так.
Screenshot8.jpg19 Кб, 633x140
147 2470917
Начал тренироваться по базовым гайдам. Решил ввести то, что тут: https://docs.python.org/3.10/tutorial/interpreter.html
Пикрил результат
ЧЯДНТ?
148 2470919
>>470917
В пайчарме работает, но судя по гайду это нужно вводить не там
149 2470926
>>470917
после if в следующей строчке должна быть отбивка табуляцией или пробелами того, что под if
150 2470936
>>470926
Затуп на 10 минут. В итоге понял, что нужно нажать таб после if и перед print. Вроде сработало. Я правильно понял? Пока что не совсем понимаю логику этих действий, надо поискать статью отдельную
151 2470958
>>470917
Ясным текстом написано "expected an intented block after 'if' statement.
Сука, какие же вы тупые, пиздец просто
152 2470970
>>470936
В питоне нет скобок и группировка выражений в условных операторах и операторах цикла достигается табуляцией.
153 2470993
>>470958
Пошел нахуй пидор грязный
154 2471009
>>470993
А может это ты пидор
155 2471074
156 2471095
>>471074
Да он ебнется его запускавши!
157 2471113
>>471095
Да вроде не сложно же, плюс кроссплатформа
158 2471138
>>471113
С кроссплатформой точно ебнется
изображение.png396 Кб, 1115x748
159 2471242
Есть у кого-нибудь ссылка на релейтед список скиллов?
160 2471278
помогите распарсить строку плез

ПЛЮСКОВ АЛЕКСАНДР НИКОЛАЕВИЧ16.6.1987ОБЛ. НИЖЕГОРОДСКАЯ, Г. ВЫКСА, МКР. ГОГОЛЯ, ДОМ 49, КВАРТИРА 202208088371ОТДЕЛЕНИЕ УФМС РОССИИ ПО НИЖЕГОРОДСКОЙ ОБЛ. В ВЫКСУНСКОМ Р-НЕ
161 2471352
>>471278
Собирай вещи, сынок. Пора защищать Донбасс
162 2471389
>>471242
Жид брейнс уже в списках скилов?
163 2471443
>>469766 (Del)
А для каких игор можно на питоне моды писать?
мимо другой интересующийся анскил
164 2471469
>>471443
Пиши моды для визуальных порноновелл на ренпае
165 2471480
>>469741
Напиши гуишную программу, чтоб клиент для кубернейтса, редиса, постгри был сразу. Вкладки или еще что угодно.
Для кубов, просмотр подов, секретов, возможность удалить, масташтабирование и т.д
Для постгри - структура таблиц, вьюх, триггеров, возможность выполнять запросы, модификация полей после вывода и т.д
Редис - просмотр баз, просмотр содержимого, поиск ключей и т.д.

Все это не трудно, просто обертка над консольными программами. Если отсутствуют - предложи скачать
166 2471809
>>471480
И через двадцать лет приходи.
167 2471945
>>471809
Это можно написать за месяц, если выдрачивать гуи.
А если нет, недели за 2-3
168 2472020
Въебал полдня на 5 строк, а как прошел ваш день?
169 2472046
>>472020
Сделал возможность запостить без обновления страницы на своей борде, которую просто так делаю для себя самого
170 2472125
Двач, как наложить одну фотокарточку на другую?
Есть две фотки, одна побольше, другая поменьше. В той которая поменьше есть альфа канал и она меньше чем первая.

Как ее наложить на первую с прозрачностью? ОпенЦВ ебет мозги, что они разных размеров.
171 2472130
>>472125
Вообще в целом мне подойдет, если подскажите как ресайзнуть изображение, чтобы оно увеличилось в размере, но сама картинка осталась нетронутой, просто по краям увеличилось место с прозрачностью.
172 2472190
Как сделать так чтобы сервер на фласке + nginx принимал данные (видео поток) с приложения на плюсах передавал его программе на плюсах ,принимал изменные данные и отправлял обратно два пути через
cycpyton интерпритировать в Си, но тогда нужен ли Wsgi 2 , написать отправку на плюсах и вообще через gstreamer.
173 2472206
>>472020
Две недели отпуска прошли.
Я как-то 3 дня убил, чтоб один символ поправить. Но там ошибка локально не ловилась, а на проде подробного логгирования пользовательских данных не было.
image.png36 Кб, 568x175
174 2472231
>>472125
Почти разобрался, дело осталось за малым

Код пикрил выдает ошибку error: (-215:Assertion failed) (mtype == CV_8U || mtype == CV_8S) && _mask.sameSize(*psrc1) in function 'binary_op'

Маску при этом выводит нормально, как и должно? Что я делаю не так? Я даже не нагуглил, что эта ошибка означает. В результате должна получиться одна картинка наложенная на другую по маске.
175 2472232
>>472231

> как и должно?


как и должно.
14907079000020.png5,2 Мб, 3840x2400
176 2472375
>>472046
Хуя ты крут!
177 2472439
>>472020
Въебал пару дней на алкоголь, рикаминдую.
Ты что-то напрягаешься,таски-хуяски, стресс. А тут пару дней пропало, почта ломится, все ноют, а ты лежишь и чувствуешь облегчение.
Потом догнался, отпизделся и по новой. Красота.
Хотелось бы ещё заноркоманить, но это меня убъёт, жалко.
178 2472813
Ку, пару лет назад освоил книгу "кусь писюна". С тех пор много времени утекло, вот хочу опять поробовать в изучение языка. Посоветуйте книжку/курсы для нубика :3
179 2473156
Ребята, можете посоветовать что почитать про сетевое программирование, веб программирование на Python. Я понимаю как делать базовые задачки, но не секу как, например, делать архитектуру веб приложения и прочее. Хотелось бы такую книжку, которая покажет все на примерах от сырых сокетов, до какого-то фреймворк-монстра, которым можно решать прикладные задачи веба. Спасибо
180 2473171
как пилить монококи?
181 2473284
>>473156

>покажет все


если ты ничего не знаешь, то тебе не нужно "всё"
начинай с простейших примеров и по нарастающей
182 2473303
>>473284

>примеров


И где их брать? Есть ли статьи или книги на эту тему?
184 2473376
>>473370

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


>сайт

185 2473385
>>473156
Бампану.
186 2473461
>>473370
Ебать ты вкатутося
187 2473818
>>472046
Осталось только написать запарсить двач и сделать своих искуственных постеров
makaka.jpg11 Кб, 546x92
188 2473850
189 2473869
>>472813
гайс ответьте
190 2473902
а
191 2474604
>>462085 (OP)
Хеллоу работяги. Какие шансы вкатиться без матеши? Никогда не понимал как работают задачи и алгоритмы.
192 2474670
>>462085 (OP)
Cап аноны.
Даётся массив чисел и какое то число x. Нужно найти в этом массиве 3 значения сумма которых наиболее близка к данному числу x.
Короче я сам делал, но на сайте пишет что код нихуя не оптимальный и занимает слишком много времени. Потом я махнул рукой и скопировал чужой код (кстати алгоритм как у меня, но чуть чище и лучше написано), но сайт его тоже не принимает. Как тут можно ещё оптимизировать?
https://codeshare.io/OdvJW7
193 2474996
http запрос с кукисами, есть рабочий код в powershell adg16 194 2475028
Сап двач, я тут второй раз в жизни поэтому ссаным тряпкам буду рад
Для РАБоты нужно хуйню автоматизировать, в программировании я как в сексе чисто листва 33 уровня, спиздил с девтулсов хрома хттп запрос powershell, работает как часы
Попытался по старой памяти че-то на c# высрать, нихуя не получилось, прыгнул на питон, тут все как-то почеловечнее, все равно нихуя 401 unathorized
Помогите пожалуйста понять где я еблан а где я хуесос
Кукисов там добавляется штук 20, я подтер их на всякий случай:
https://pastebin.com/yvun88GJ
195 2475066
>>474604
Тебе поздно, иди водителем, пока не получишь повестку
196 2475079
>>474670
Это у тебя какой-то бинарный поиск в две стороны сразу. Но какой от этого профит в данном случае, хз, не проще ли просто брать про три значения с начала?
197 2475080
>>475028
Кукисы могу и протухнуть, это далеко не гарантия что такой же запрос пройдет дважды.
198 2475095
>>475080
так в том то и дело что я каждый раз пробую павершел запрос, всё работает как часы
199 2475112
>>475095
Ну, то, что у тебя в по ссылке на питон не похоже ни разу, берешь реквестс, там и даун разберется.
Есть класс сессии, можно туда напихать печенек и заголовков.
https://requests.readthedocs.io/en/latest/user/advanced/
200 2475126
>>475112
я пытался, бро
но я валенок, нихуя не выходит
тупо powershell до буквы на питоне переписываю - похуй ноль реакции
201 2475154
>>475126
Добился того что оба запроса выглядят АБСОЛЮТНО идентично (чекаю в фидлере), павершел по прежнему 200 в любой ситуации, питон 401
Памагити пж :(
202 2475157
>>475154
Покажи пикчу.
203 2475184
Блин, не у кого спросить, поэтому тут.
Как сделать так, чтобы по переключателю (radio) в HTML открывалось или закрывалось дополнительное текстовое поле под ним? Я даже не знаю как нагуглить такое, сорян.
204 2475189
>>475184
Раньше такое делалось на жквери и гуглилось за пять сек. Сейчас за жквери закидают ссаными валенками, но тебе сойдет небось. Но нормально гугли, по-английски.
Я не фронт вообще, чтобы в это говно лезть.
205 2475191
>>475189
Я тоже не шарю в этой теме. Спасибо, попробую нагуглить что-нибудь.
206 2475208
>>475079
это ни разу не бинарный поиск потому что j k меняются максимум на единичку за цикл
207 2475212
>>475208
Так и в чем смысол с обратных сторон идти в этом варианте?
208 2475226
>>475212
Не знаю какой смысл. Я вообще не уверен что оно всегда правильный ответ находит
ohyou.jpg44 Кб, 800x450
209 2475240
>>475226
Ну короче, я почитал, это реально вариация на тему бинарного поиска. Вместо три раза брутить тот же список вложенными циклами он сортируется и потом индексы сдвигаются с одной из сторон, если сумма больше или ниже ожидаемой. Третий индекс просто идет с начала.
Компуктер саенс!
210 2475275
>>474604

>Какие шансы вкатиться без матеши?


Математика и не особо нужна. Даже в дата саенсе там она на уровне первого курса тех вуза.
Сортировки всякие, поиски знать надо. Но это всё осваивается быстро.
211 2475469
>>475275
да как нахуй
ну вот как буквы можно множить на буквы какой долбоеб это придумал
212 2475490
>>475066
А мне 16
213 2475533
>>475469

>буквы можно множить на буквы какой долбоеб это придумал


Хз о чем ты, но наверное можно. Представь вместо букв цифры, например 2 x 3 это 2 + 2 + 2 или 3 + 3. Что тебе мешает вместо цифр подставить буквы и сложить букву a b раз?
По факту тебе нужно освоить всякие мелочи, адекватно называть переменные, соблюдать стиль кода, писать максимально понятно, чтобы любой кто будет допиливать код после тебя легко понял что ты там хотел сделать. Комментировать свой код или писать документацию.
На самом деле от большинства кодеров никто не ждёт что они будут изобретать охуенные алгоритмы или высчитывать миллионные цифры после запятой в pi. Достаточно просто хорошо делать свой минимум и этого уже достаточно чтобы вкатиться в айти. Даже вышка не нужна.
214 2475551
>>475533
Менторишь? С чего начать в питоне? Я неосилятор гуманитарный и боюсь обосраться в прогерстве.
215 2475562
>>475551
Скинь для начала свой анус с супом в тред, а дальше я подумаю менторить тебя или нет.
216 2475572
217 2475636
чзх поч

>>import random, time #не работат, а


>>import random


>>from time import sleep #работает



v3.8.9
поясните
218 2475637
>>475572
тебе жалко что ли?
image.png75 Кб, 1468x390
219 2475947
>>475636
Больше похоже, что ты криворукий.
220 2476368
В редисе через set устанавливаю запись и ex параметр, через сколько устаревает. Почему когда заканчивается ttl, то запись не удаляется?
221 2476369
>>476368
В StrictRedis
222 2476541
>>475947
-_______-
возможно
223 2476627
>>474604
Бамп
224 2476690
Боевые дроны на петухоне программируют или нет?
225 2476780
если функция на выходе имеет yield feez, buzz можно ли сделать так:

feez, buzz = func_with_yield()
226 2476787
>>476780
Да, делай.
227 2476825
>>475154
гугли curlconverter
также копируешь в дев тулзах curl запрос и прогоняешь его через эту хуйню
228 2476881
Знаю на ок кресты, пишу на них всякое CV, чтоб быстро работало (cuda, sse и прочее говнецо). Упёрся в то, что в более-менее адекватных конторах хотят питон как основной язык.
Отсюда вопрос - с чего быстрее вкатиться, минуя темы для нюфань про алгоритмы, ооп, классы, и всякое такое?
229 2476883
>>476690
Только дроны для сборки мусора.
230 2476980
>>476690
Нет. Ты че, ебанутый. Это гражданскую поеботку еще лепят на питоне. Хули там задач то, слетать по координатам, сделать фото в нужных точках.
В том же мавике какая-то своя хуйня на основе, емнип, руби, для пульта и связи с ним. И чето низкоуровневое для железок дрона.
231 2477028
Как получить номер, на котором находится элемент в списке?

Допустим есть list [0,2,5,7,12,6,9,1]

Я итерирую с середины списка и дохожу до 12. Как мне узнать, что он на 4 месте?
232 2477034
>>477028
Фундаментально? Веди подсчёт, на каком по счёту элементе ты находишься. Потом значение этого счётчика возвращай.
Есть несколько функций, которые сделали это за тебя.
233 2477037
>>477028
enumerate
234 2477038
>>477037
Чёт глянул на for с enumerate и проиграл - это ж ебать создаётся объект-корутина, который на каждой итерации for возвращает кортеж, для которого делается flatten. При этом счётчик в цикле или range() считается non Pythonic.
235 2477039
>>477038
Тебе шашечеки или ехать?
236 2477040
>>477038

>объект-корутина


Это ты closure так "перевёл"? Корутина это отдельное понятие, и оно тут не при чём.
И где ты flatten нашёл?
237 2477042
>>477040
Вот дока:
https://docs.python.org/3/library/functions.html#enumerate
Написано:
Equivalent to: ... yeld ...
Выглядит как ко-ко-ко-рутина, которая по совместительству closure (лямбда-функция) в контексте вызова.
Вызов видимо такой:
for idx, val in enumerate(list) : print(idx, val)
где idx, x и есть flattening кортежа
238 2477048
>>477042
Клозуры это не корутины, хз с чего ты это взял.

>где idx, x и есть flattening кортежа


Ты имеешь в виду destructuring? Flatten совсем другое понятие.
239 2477051
>>477047 (Del)

>генераторная функция


Она называется "функция". Но по факту это безымянный объект, хранящий состояние для возврата управления через yeld. Да, это не асинхронный вызов выполнения работы в отдельном потоке. И естественно, что по сравнению со счётчиком, эффективностью тут не пахнет.

>распаковка


Ну да, а как ты ещё доберёшься до полей безымянного кортежа, возвращаемого методами типа __next__()?
240 2477055
>>477052 (Del)
Слыш, ну чо ты сразу с козырей-то заходишь? Дай поцану объяснить тебе, как он это видит. Он лучше знает, что эффективнее, чем какой-то там таймер.
241 2477056
>>477048

>Клозуры это не корутины


Я этого не говорил. Closure - это лямбда. Вызываемый объект, захватывающий параметры из области видимости.
Корутина тоже вызываемый объект, но она хранит состояние, которое влияет на результаты вызова. Может быть ленивой и выполняться отложено в том же потоке (это генератор) или собственно асинхронной (это видимо питонячья корутина).

>destructuring


да
242 2477057
>>477056
Хз, ни разу не видел, чтобы генераторы корутинами называли. Так-то и мотоцикл можно машиной назвать, он ведь это техническое устройство, выполняющее механические движения для преобразования энергии, материалов и информации, но во избежание путаницы так не делают. Так и тут, есть устоявшееся понятие для сабрутины и для генераторов (которые в определённой классификации являются их сабсетом) его не применяют.
243 2477059
>>477052 (Del)
совсем чота жестко приложил чувачка
244 2477065
>>477052 (Del)
И чё ты этим сказать хотел? Что операция доступа по индексу в цепном списке это долго? Тебе же сказали что надо счётчик использовать.
245 2477067
>>477066 (Del)
Не надо хвостом вилять. Разница не так велика и вангую из-за того, что ++ и -- не завезли.
image.png34 Кб, 912x385
246 2477072
>>477042
То что в доке написано "equivalent" работает в несколько раз медленнее. Очевидно встроенный enumerate как-то дополнительно заоптимизирован.
247 2477075
>>477068 (Del)
range тоже не так плох. Хотя доступ через [] тянет за собой лишнюю арифметику.

>питоник вей


Python’s lists are really variable-length arrays, not Lisp-style linked lists.
Список это не список, а генератор это не сопрограмма.
Ладно, попробую как-нибудь затерпеть. Деваться всё равно некуда.
248 2477078
>>477028
list.index(value)
249 2477079
>>477057
Вы тут все такие умные, вам череп не жмет?
250 2477114
>>477079
я человек - корутина
251 2477297
Здравствуй Двачик, недавно начал изучать питон и заглох на вот этом. Суть в том, что нужно реализовать способ в котором пара ключ+значение будет равняться ключем в другом словаре. Я изначально достал список Person, затем разложил его на ключи и значения і превратил спиоск [1,2,3] в кортеж. Однако при попытке собрать все это назад через zip получается хуйня. Подскажите, что делаю не так

dct = {'person': {'in_dict': [1, 2, 3],
'after_list': {4, '5'},
'after_set': ('hello', )}}
252 2477310
>>477305 (Del)
'in_dict' ,(1,2,3) : value
'after_list , (4, 5) : value
'after_set , ('hello') : value

Я так понимаю такой результат нужен
253 2477312
>>477305 (Del)
Реализовать способ, при котором каждый элемент данного словаря (ключ и значение) станет ключом в другом словаре. Если в качестве значения выступает последовательность (список), значит – каждый элемент списка становится ключом + сам список также становится ключом (для этого превращаем его в кортеж). Помним: цикл может включать в себя вложенный цикл. Сам функционал нацелен только на этот словарь.
254 2477346
>>477312
Ебанутая задача.
Разве что только в качестве упражнения в брэйнфакинге годится.
255 2477347
>>477335 (Del)
Нужно через дикт компрехеншен делать у меня пока только с третим вышло
dct3 = {element: element for element in zip((dctKeys[2], dctValues[2]), dctValues[2])}
и выводит:
{('after_set', 'hello'): ('after_set', 'hello')}
256 2477352
>>477312
>>477348 (Del)
Это и есть точное описание
257 2477428
>>477312
Что за упоротый хуесос придумал такую хуйню и нахуя оно нужно???
258 2477441
>>477428
Задание на курсах. Я в принципе сделал, если примут то скину сюда
259 2477502
>>477441
Такое впечатление что эти задания на курсах придумуывают специально чтобы поиздеваться.
260 2477506
>>477076 (Del)
Я хз, только начал принюхиваться. В Сисечке нет ссылок, кста.
261 2477507
Сап, объясните ньюфагу в питоне.

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

Т.е. условно первый массив [1.5, 7,8], второй - [0.5, 10.6]. Если значение первого массива больше, оно делится на значение из второго, если меньше - наоборот. В итоге должен получиться массив типа [3.0, 1.358].
262 2477510
>>477502
Это скорее хорошо. Хоть голова работает
263 2477528
>>477507
result = []
for i, j in zip(arr1, arr2):
____result.append(do_something(i, j))
image.jpg32 Кб, 534x405
264 2477533
>>477057
> не видел, чтобы генераторы корутинами называли
Видел еще лет 10 назад как к генераторам приделывают трамплин какой-то и получаются типа корутины. Нахера это надо народному хозяйству я так и не понял.
265 2477535
>>477533

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


На случай, если генераторы есть, а корутин нет (во всяком случае на вики так написано)
266 2477550
>>477528
Спасибо! Забыл про существование zip()
267 2477552
>>477550
zip это оптимизация для
for i in range(len(arr1)):
__arr1
__arr2
изображение.png28 Кб, 355x103
268 2477576
Возможно ли эту штуку заморозить, чтобы невозможно было двигать?
269 2477600
>>477552
Нет, там идет итерация, а не просто высчитывание индекса, в зип ты можешь генераторы засунуть.
270 2477666
Здарова мужики. Есть код типа такого

https://ideone.com/vhh2HO

Там на методы нужно декораторы цеплять чтобы экспешены хэндлить. При этом декораторов может быть несколько. Мне нужно добавить возможность в рантайме добавлять/удалять эти декораторы при каком-то условии. Как это лучше сделать? Пока что план вешать 1 декоратор с списком пар эксепшен-колбэк, а этот список как раз в рантайме генерировать. Какие есть ещё варианты и чтобы много не переписывать?
271 2477672
>>477666
Есть ещё вариант в декораторе добавить опциональный аргумент кондишен и если он false, то игнорить этот хэндел и уже в рантайме нужным хэндалам проставлять этот кондишен в зависимости от рантайм данных. Что ещё можно придумать и какой вариант лучше?
272 2477675
>>477672
Бля, пиздец, а зачем такие сложности?
273 2477678
>>477675
Ну писались эти хэндлы до меня. Мне новый нужно добавить. Но чтобы работал он когда процесс в определёном окружении запущен. Метод детекта окружения я сделал. Теперь бы как-нибудь этому хэндлу сказать срабатывать только в нужном окружении. Дргие хэндля переписывать не хочу. И сделать хочется красиво, а в голову одни костыли лезут
image.png27 Кб, 706x151
274 2477700
Делаю для работы с orm отдельный класс. Типовые методы будут для многих моделей повторяться, поэтому решил вынести в базовый класс логику, но вот какая хуйня - если делать для каждой модели свой репозиторий, то класс модели известен и можно прямо в методе его юзать, а в случае с базой - придётся каждый раз передавать параметром. Оцените решение - хуйня или норм?
275 2477703
>>477700
Из self нельзя достать __class__?
276 2477711
>>477703
он же будет на сам репозиторий ссылаться, не? Или ты предлагаешь как свойство прописывать класс используемой модели в репозиториях?
image.png51 Кб, 753x686
277 2477722
>>477711
Не очень тебя понял, на какой репозиторий он будет ссылаться?
278 2477924
>>477312
Всем привет еще раз. Задание приняли, как и обещал делюсь кодом

https://ideone.com/nEOV92
279 2477929
>>477925 (Del)
Та обычна домашка. Кроме непонятно написаного задания ничего ультрасложного не оказалось
280 2477935
>>477928 (Del)
Задание заключалось в том, чтобы каждый Клемент словаря сделать ключом и если идёт список или другой словарь то разобрать его и сделать ключом каждый отдельный елемент.
281 2477936
282 2478029
>>477935
почему людей так ебут?
283 2478030
>>476881
Если знаешь ок кресты, какие проблемы с питоном могут быть?
284 2478034
>>476881
По собственному опыту - за один вечер читаешь вводную часть любого самоучителя про синтаксис, за второй вечер пишешь реальную прогу, не хелловорлд. На этом все, вкат закончен.
И да, на ооп и классы надо обратить основное внимание ибо там много петухон-специфики, но в принципе за 1 вечер осваивается, далее шлифуешь на практике.
285 2478035
>>477678
Пчел, тут нет простого пути.
В любом случает будет геморроидальный глюкодром с отладкой.
286 2478096
>>463407
На английском есть?
287 2478124
>>478119 (Del)
Вторая версия? Полгода назад искал, только препринт был.
288 2478131
Анонасы, какой бест практис в предоставлении passphrase приложению? Через переменные окружения? Можно в истории это посмотреть. Через файл, доступ к которому имеет только юзер, который и запускает приложение, типа как www-data?
289 2478137
>>478129 (Del)
Хорошо, спасибо.

>>478131

> Можно в истории это посмотреть.


Шелл умеет не сохранять историю при желании пользователя. В современных достаточно пробел поставить перед командой.
А так сейчас systemd получил несколько фич этого направления
https://systemd.io/CREDENTIALS/
290 2478139
291 2478148
>>477928 (Del)
Принимают не все, прошлое задание дало нужный результат, но там был настолько хуевый код, что препод заставил переделывать
292 2478232
>>478030
Мне больше для собесов надо. Именно особенности и как по-нормальному на нём писать, а не c-style (если понадобится какое-то тестовое натужить).
293 2478475
У меня есть основной поток программы. Как в неё запустить отдельный тред, который будет себе тихонечно параллельно жить и не мешать основному потоку?
294 2478505
>>478475
Никак. У питона GIL.
295 2478508
РОССИЮШКА ОФИЦИАЛЬНО СТАЛА ЕЩЕ БОЛЬШЕ!
296 2478512
>>478505
А чем GIL принципиально мешает? Он работает и работает, просто подтормаживает основной поток
297 2478514
>>478512

> не мешать основному потоку


>просто подтормаживает основной поток

298 2478515
>>477533
Под капотом корутины это генераторы
14896453481761.jpg97 Кб, 572x296
299 2479030
>>478475
Зачем тебе? Не лезь, она тебя сожрет.
300 2479053
>>479030
Нужно лайтовый веб сервер поднять, который будет периодически опрашивать основной поток и обновлять инфу по урлу
302 2479069
>>479061 (Del)
Ухх бля, вспомнил как два года назад это было первое что я по программированию порочитал. Прослезился
303 2479204
>>462085 (OP)
Пишу бекенд и аналитику на питухоне да и вообще, но не прошел тест на навыки в LinkedIn , лул, как такое возможно? Вроде все правильно ответил, ну бля, смех. Допускаю что было пару ошибок, но бля 13/15 мало что ли ?
304 2479280
>>479204
Не нужон тебе этот линкедин
305 2479329
>>479280
как нойти роботу тогда ? чувствую вырос из текущего места работы
306 2479570
всем советую питон очень прикольный. но все таки знания js и с в скором времени пригодятся если метить высоко
307 2479591
>>479570
спасибо помогло
308 2479601
>>479053
Делаешь threading.Thread(daemon=True)
Внутри демон-треда запускаешь веб сервер из стандартной библиотеки например
https://docs.python.org/3/library/wsgiref.html#module-wsgiref.simple_server
После этого основной поток программы сам по себе, веб сервер сам по себе. Никакой multiprocessing не нужен.
309 2479711
Вопросы от джависта.
Я привыкч что мне все подсказывает IDE, я по сути больше 1/3 названия метода никогда не запоминаю, не говоря уже про количество и имена параметров метода. Привык к постоянному пользованию автокомплитом. Начал изучать питон как второй язык и просто охуел. Пайчарм мне выдаёт в лучшем случае мессиво с кучей ... kwargs, "", ... | "arg_name1", Union[ABC] и подобного бреда, если вообще что-то выдает. Ни о какоц всплывающей документации речи не идет. Нередко подчеркивает желтым поля к которым обращаюсь, хотя я блять знаю, что они там есть и программа работает. В общем, я в полной растерянности.

Питонисты, вы реально пишите код с открытой во второй полоаине монитора документацией и каждый раз когда хотаите что-то найти в ней пользуетесь ctrl+F??? И вы реально запоминаете названия всех методов, названия аргументов, ИМПОРТОВ?? У меня ощущение, что я что-то делаю не так. Неужели я должен реально днржать в голове всю эту бесполезную инфу, вместо того, чтобы думать над более полезными вещами, типа быстродействия написанного алгоритма или правильной архитектуры?
310 2479713
>>479711
Фигню несёшь какую-то.
Всё работает. И дополнения и документация. Всё работает.
311 2479775
>>479713
Если постоянно указывать типы
>>479711
Указывай типы, тогда будет работать. Но в таком случае смысл питухона пропадает
image.png47 Кб, 803x523
312 2479776
>>479713
Как мне узнать, что такое bind, без того, чтобы держать открытой документацию в браузере?
313 2479778
>>479775

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


У меня были точно такие же мысли. Видимо придётся как-то надрачиваться сидеть с докой в отдельном окне :/

джава-анон
314 2479780
>>479778
Если тебе бекенды писать - пиши на Go, я питухон использую для аналитики, мл и подобных штук, так как таких либ ни под что больше нету
долбаеб года.jfif11 Кб, 208x242
315 2479783
>>479711

>Я привыкч что мне все подсказывает IDE, я по сути больше 1/3 названия метода никогда не запоминаю, не говоря уже про количество и имена параметров метода. Привык к постоянному пользованию автокомплитом.

316 2479840
Кто шарит в асинхронность, подскажите плиз - правильно я делаю или хуйню?

В общем, хочу реализовать метод для выполнения задачи по таймеру.
Погуглив стало ясно, что для этого на высоком уровне кода есть либо threading.Timer либо asyncio.sleep.

Решил пока написать на асинхронно слипе, т.к. он вроде просто понятнее.
Как я понял, при вызове такой функции в event loop будет поставлен таймер, а сама программа может выполнять дальше другой код. И всякий раз при вызове этой функции в event loop будут отгружаться новые таймеры, ну а когда слип закончится будут отправлять запросы.

```
async def asend_task(self, task, time_to_run):
await asyncio.sleep(time_to_run)
self.send_request(task)
print(f"Task with timer {time_to_run} sended")

```

если я вызову этот метод дважды, сначала с таймером 1 день, а потом 1 час, то вызова функции отправятся в event loop, и сначала сработает с таймером на час, а потом на день, соответственно.

asend_task(task, 60),
asend_task(task, 60*24)
317 2479846
>>479840

asend_task(task, 60),
asend_task(task, 60*24)

>>>Task with timer 60 sended


>>>Task with timer 1440 sended

318 2479886
Уважаемый двощь. Хотелось бы узнать как вы организуете окружение на Винде(10). Пробовал винду и линук. Винда однозначно говно. Так вот назрела делема, как быть. Есть варик через подсистему линук на винде(wsl) или же линукс на виртуалке или же можно как то грамотно на винде заебенить. Интересно ваще мнение
319 2479891
>>479886
Накатывай сразу всл2. У десятки надо какие-то обновления загрузить. У 11 сразу можно ставить.
https://learn.microsoft.com/ru-ru/windows/wsl/about
320 2479924
Ребят всем привет, вкатываюсь в питон и пока знания желают оставлять лучшего.

Так вот, может кто помочь сделать код с использованием библиотеки pypred -if is and then comment contains country city

Скажем условие - если ты из ДС1 то, молодец.
321 2479987
>>479975 (Del)
Конечно спасибо и за такой ответ. за "pet" учту, за остальное опустил так опустил что хотел эту библиотеку изучить :с
322 2480032
>>479711
Работаю в виме, автокомплит любых названий по табу, работает шикарно во всех языках.
Если у какой-то херни совсем непонятный API то либо грузишь ее в ipython шелл чтобы потыкать, либо ставишь в проге перед непонятным местом ipdb.set_trace() и разбираешься какой вариант работает и делает то что нужно конкретно в этом контексте.
323 2480106
>>479886
Пользуюсь WSL на win10, всё норм в целом. Но докер на ней так просто не запустится ибо systemd нет, и поэтому с ним вероятно будет попаболь. Хотя в последних версиях вроде завезли systemd, но я не пробовал
324 2480173
>>479840
Чуть сложнее, если делать так, то ты должен оформить вызов в виде задачи
asyncio.create_task(asend_task(task, 60))

Ещё есть вариант, чтобы использовать low-level подход, и делать вызов
loop.call_later
https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.loop.call_later
325 2480205
>>480173
Изначально как раз нашел код с использованием low-lever API, но затем прочел в доке, что в "бытовых целях" чаще всего стоит использовать именно highl-lever интерфейс, ну и показалось что слип\таймер самое простое.

За наводку спасибо.
326 2480217
>>480205
Ну смотри, в low-level случае ты получаешь возможность вызвать синхронный коллбэк. Если тебе дальше надо делать асинхронный вызов из этого колбэка, то не подходит в любом случае. Но если что-то простое синхронное, то вариант

Задачи более тяжеловесны, но если что-то сложное или асинхронное, то лучше их
327 2480350
>>479780
А чем тебе питон для бека не нравится? Здесь же есть пару охуенных фреймворк с которыми го пока не сравниватся.

Го хоть и легкий язык и имеет всего там около 20 ключевых слов, но все же разработка какого-то большого проекта на нем мерзость, лучше уж питон с его фастапи/django/flask идеальной документацией, а не голанг где разработчики даже не запариваются называть переменные.

А когда ты у них спрашиваешь, почему у вас большинство переменных в 1-3 буквы, они говорят - Ну так надо, ты че не понимаешь? Очевидно же.. Сверх челы какие-то.

Го это когда ты заходишь почитать нормальную документацию какой-то либы, а 80% ее даже не пишут видимо, так набросали немного кода, функций че делают на основном сайте го и хватит.

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

Го это когда миллиард фреймворков как и в питоне для разработи какого-то веба, но нихуя нормального наподобие фастапи нет

Лучше используйте ноду/c#, чем го, для меня го это зайти написать какую-то обертку для докера/кубера других девопс штучек и т.д
328 2480352
>>480350
Например вот пишу небольшой проектик который будут стримить логи с докера в фронтенд реалтайм, вот для этого го подойдет
329 2480384
>>480350

> большинство переменных в 1-3 буквы


Кстати вот почему у некоторых так горит пердак от коротких переменных?
Математики обижали в детстве?
330 2480391
>>478554 (Del)
Вообще для такого селери слишком жирно. Можно глянуть на эти две либы

https://pypi.org/project/futurist/ Это просто удобная обёртка на тредами. Никаких зависимостей и нет HA
https://pypi.org/project/taskflow/ Это штука то же самое, но сохраняет своё состояние в редис и резервный воркер может продолжить выполнять таску если главный упадёт. Это у него такой HA

Выбирай
331 2480411
>>480384
Не математикой единой. Железячники и красноглазики тоже любят по 3 буковки: dc, ctx, wd, sz, err, msg, num, val, buf.
Другое дело, что пердиксов-питонистов никто не пустит хайлоад или фреймворки пилить.
332 2480422
Пучарм 2022.2.2 в фоне при некоторых открытых проектах свёрнутый кушает 20% цп на 6(12) ядерном процессоре. Раньше такого не было.

Другие проекты кушают 0% в фоне, и 3-5 при редактировании и прокрутке.
Я кликнул repair ide - и оно выдало какую-то ошибку джавы мне, и отправило об этом репорт. Но функционально всё работает, ну по крайне мере из очевидного.
Что я ещё могу сделать? Мне не норм, что кулеры гудят и мешают.
333 2480425
>>480422
Хм. Переставил с 10.6 на 10.7 - теперь из четырёх многофайловых проектов только один вызывает 10%, хотя до этого было 3 по 20%.
334 2480430
Ждём Питон наущающий скорость света, ибо он слишком крут - дабы просто её превысить.
335 2480506
Какие сигналы у целери есть на главный процесс? А то все относятся к воркерам. Тупо в лог хочу старт записать и стоп
336 2480516
>>480425
они вшили майнер?
337 2480521
>>480350

>А чем тебе питон для бека не нравится? Здесь же есть пару охуенных фреймворк с которыми го пока не сравниватся.



Разве что FastApi

Не нравится тем, что типы опциональны, один человек их пишет, другой нет, поскольку сам язык для девочек 3класниц хуевое комьюнити вкатунов, действительно профессионалов питонистов я встречал пару человек, в большинстве хуевая документация, одна документация Django как пример. По FastAPI в принципе хорошая, но мне вообще не понятно нахуя нужны фреймворки, в гошке стандартная библиотека делает ВСЕ что мне надо, единственное, я использую роутер не стандартный,но который реализует интерфейс стандартного net.http роутера

>разработка какого-то большого проекта на нем мерзость


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

>называть переменные


а нахуя их называть в функции 10 строк , где после := понятно что происходит, ну слабенько вижу у тебя по пониманию кода, раз это для тебя проблема. Где нужно переменные делают нормальной длины, где уместно оставляют короткими
Твои проблемы и придирки. Как говорят французы, сир, вы не компетентны.

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



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

>Го это когда миллиард фреймворков как и в питоне для разработи какого-то веба, но нихуя нормального наподобие фастапи нет



Пиздун, еще раз, тебе изначально не нужен никакой фреймворк и уж тем более ОРМ чтобы писать ВЫСОКОНАГРУЖЕННЫЙ веб.

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



Лучше молчите, Сир.
337 2480521
>>480350

>А чем тебе питон для бека не нравится? Здесь же есть пару охуенных фреймворк с которыми го пока не сравниватся.



Разве что FastApi

Не нравится тем, что типы опциональны, один человек их пишет, другой нет, поскольку сам язык для девочек 3класниц хуевое комьюнити вкатунов, действительно профессионалов питонистов я встречал пару человек, в большинстве хуевая документация, одна документация Django как пример. По FastAPI в принципе хорошая, но мне вообще не понятно нахуя нужны фреймворки, в гошке стандартная библиотека делает ВСЕ что мне надо, единственное, я использую роутер не стандартный,но который реализует интерфейс стандартного net.http роутера

>разработка какого-то большого проекта на нем мерзость


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

>называть переменные


а нахуя их называть в функции 10 строк , где после := понятно что происходит, ну слабенько вижу у тебя по пониманию кода, раз это для тебя проблема. Где нужно переменные делают нормальной длины, где уместно оставляют короткими
Твои проблемы и придирки. Как говорят французы, сир, вы не компетентны.

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



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

>Го это когда миллиард фреймворков как и в питоне для разработи какого-то веба, но нихуя нормального наподобие фастапи нет



Пиздун, еще раз, тебе изначально не нужен никакой фреймворк и уж тем более ОРМ чтобы писать ВЫСОКОНАГРУЖЕННЫЙ веб.

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



Лучше молчите, Сир.
338 2480542
>>480032
А как же ты таб для пробелов используешь? Если для автокомплита нужно в режим команд переходить - то это пиздец
339 2480551
>>480516
Нет, это какой-то баг кеширования или индекса пучарма, и вот то что он ошибку с джавой выдал ещё. Если посмотреть, там внутри пучарма были треды с загрузкой по 0.3-0.5 процентов из одной и той же dll-ки, но несколько десятков штук.

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

В общем я просто все файлы пучарма поудалял, оставив только мои файла кода, и переоткрывал папки как проекты, и стало норм. Что-то забыли протестировать, и пучарм вис и баговал из-за своих старых файлов кеша или что он там делал.
340 2480560
>>480551
понятно, пучарм кстати частенько багует, это раздражает
341 2480598
>>480560
Джавапрограмма без прямого управления памятью, чего ты хотел.
342 2480625
Пара вопросов по датаклассам.

1) Есть ли смысл тайпхинтить что поле имеет стринговое значение из ENUM? Типа

class Color(Enum):
--RED = "RED"
--BLUE = "BLUE"
--GREEN = "GREEN"

@dataclass()
class Data(object)
--color: Color

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

2) Можно ли как-то изъебнуться и указать:

@dataclass()
class Data(object)
--color: str
--type: str
--backup: Data

Рекурсивно передавать данные внутрь не интересует, просто чтобы хинты подсказывали что Data().backup.color это валидное поле, ну или Data().backup.backup.type. Это будет все на первом уровне вложенности. Просто в backup планируются держать поля color и type. Иначе придется как-то так?

class Backup(object):
--color: str
--type: str

@dataclass()
class Data(object)
--color: str
--type: str
--backup: Backup

3) Дефолтные значения для полей которые пришли как None можно поставить в 3.9.5 питоне? Я читал как это делали люди на SO, через __post_init__ (который вроде как и не работает с frozen датаклассами, поэтому и не подходит), там еще костыли предлагали, но может в этой версии такой инструмент появился нативный. Или в 3.10, я бы тогда обновил.
342 2480625
Пара вопросов по датаклассам.

1) Есть ли смысл тайпхинтить что поле имеет стринговое значение из ENUM? Типа

class Color(Enum):
--RED = "RED"
--BLUE = "BLUE"
--GREEN = "GREEN"

@dataclass()
class Data(object)
--color: Color

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

2) Можно ли как-то изъебнуться и указать:

@dataclass()
class Data(object)
--color: str
--type: str
--backup: Data

Рекурсивно передавать данные внутрь не интересует, просто чтобы хинты подсказывали что Data().backup.color это валидное поле, ну или Data().backup.backup.type. Это будет все на первом уровне вложенности. Просто в backup планируются держать поля color и type. Иначе придется как-то так?

class Backup(object):
--color: str
--type: str

@dataclass()
class Data(object)
--color: str
--type: str
--backup: Backup

3) Дефолтные значения для полей которые пришли как None можно поставить в 3.9.5 питоне? Я читал как это делали люди на SO, через __post_init__ (который вроде как и не работает с frozen датаклассами, поэтому и не подходит), там еще костыли предлагали, но может в этой версии такой инструмент появился нативный. Или в 3.10, я бы тогда обновил.
343 2480982
>>480521

>ВЫСОКОНАГРУЖЕННЫЙ веб


Это что за зверь такой? Высоконагруженность решается через масштабирование на уровне архитектуры. Можно писать хоть на пыхе как мета с гуглом делала.
344 2481014
>>480217
Я с асинхронностью знаком путём nodejs, в питоне юзал мало. И тут не прямо уж из коробки функционал идет, т.е. asynio юзать надо, в отличии от js с его интерфейсами типа promise, setTimout и тд.

Но мне кажется суть должна быть та же самая, потому что цикл событий это универсальная абстракция. Я понимаю, что в Python есть GIL, т.е. по сути Event Loop в питоне всегда будет в одном треде, и при последующих (в рамках запущенного процесса) все новые таймеры\корутины\фьючеры и тд будут в рамках одного event loop'а
345 2481017
>>481014

> и при последующих (



при последующих асинхронных вызовах, разумеется
346 2481028
>>481014
В JS тоже один поток. Неким аналогом промисов в питоне служат Future, но в норме тебе с ними работать не надо, это конкретный low level.

В ноде довольно много путаницы, потому что изначально нода была построена на коллбэках, все старые библиотеки там такие. А механизм async/await, который внутри другой, принесли в ноду позже. Из-за этого появляется лапша из разных подходов, что неудобно.

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

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

В общем это проблема, но не фундаментальная.

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

Проблема однопоточности overhiped
347 2481031
>>481014
Но в принципе в ноде проще асинхронность, точнее входной уровень ниже, проще ли она на самом деле - не факт

Модель async/await в питоне всё-таки намного более проработана. Надо только въехать в неё, потом уже легко будет
348 2481034
>>481014

>Python есть GIL, т.е. по сути Event Loop в питоне всегда будет в одном треде,


И здесь уточнение. В любом случае тред стартует только тогда, когда ты руками его создаёшь и вызываешь. Ты можешь стартовать несколько тредов, но из-за GIL в каждый момент будет работать только один тред. Кроме того, asyncio не threadsafe, там тебе придётся довольно сильно возиться, чтобы совмещать многопоток и асинхронность.

Это уже продвинутая тема, но может быть востребована в каких-то случаях, например когда ты делаешь GUI приложение с асинхронностью.
349 2481052
>>481028

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



А насколько безопасно использовать event loop, если он запускается в child proccess воркера?
Допустим воркер всего один и он всегда запускает один и тот же child proccess. Как в этом случае на низком уровне будет происходить взаимодействие с циклом событий? Или цикл событий Твёрдо и Чётко один на одну запущенную питоновскую программу и все асинхронные задачи\таймеры находятся в одном пространстве имён и в одной области памяти?
350 2481067
>>481052
Я не очень понимаю, как может быть несколько event loop, если ты только сам специально несколько не запустишь?

Технически ты можешь в нескольких тредах запустить по своему event loop, но тебе придётся это делать явно, там больше магии, недостаточно даже asyncio.run() просто сделать.

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

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

Скорее всего тебе надо хранить данные в каком-то внешнем сервисе, вроде редиса, очередей, БД и т.п.
351 2481095
>>481067

>одна сессия обрабатывалась одним инстансом и т.п.



Да, тоже об этом подумал. Думаю, пока что остановиться на gevent пуле, вроде пока что это то что надо, как раз честный один поток, + операции только IO bound
352 2481120
>>481095
В 2022 gevent не нужен. Это легаси изобретение до-asyncio времён, сейчас несерьёзно в принципе. Асинкио работает хорошо и достаточно. Это стандарт современного питона.
353 2481137
>>481120
Разве можно без использования воркера, запускать асинхронные задачи на сервере?

Я имел в виду однопоточный воркер в Celery, это в нём у меня IO задачи крутятся
354 2481148
>>481137
Не очень понятно, что тебе надо. У тебя есть какой-то сервисный процесс на сервере, который выполняет какой-то функционал. В нём крутится один event loop.

Дальше тебе надо как-то с этим процессом взаимодействовать. Например снаружи, через http/websocket, тогда ты его ставишь за nginx. При необходимости запускаешь несколько воркеров, а nginx балансирует нагрузку.

Либо же твой воркер подключается к очереди сообщение или чему-нибудь в этом духе. Под Celery, насколько я помню, работает rabbimq или redis, ты можешь напрямую работать с редисом через aioredis, там есть поддержка pub/sub паттерна. Либо можешь подключаться к раббиту. Ну или к целери.

Либо ты можешь со своим воркером работать через сокеты, но это скорее всего будет изобретением велосипепдов.
15836651346100.png644 Кб, 640x640
355 2481218
за нубские вопросы по питону ИТТ нахуй посылают? питон не первый мой язык и я хочу его освоить просто по приколу, но некоторые вещи с первого раза не гуглятся и мне чот лень запариваться
356 2481243
>>481148
Дело в том, что некоторые воркеры могут создавать несколько потоков, в каждом из которых будет event loop, а мне надо чтобы контекст у всех асинхронных вызовы был один, иначе будет лажа а результат может быть непредсказуемым.

По этому мне нужно чтобы был один потокТвёрдо и чётко, с одним циклом событий. Вот и всё.
357 2481256
>>481218

>хочу его освоить


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


Катись нахуй, долбаеб
358 2481326
>>480542
В начале пустой строки таб делает таб, после буквы таб делает автокомплит.
Расширение ervandew/supertab
359 2481371
>>481243

>Дело в том, что некоторые воркеры могут создавать несколько потоков, в каждом из которых будет event loop,


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

Если у тебя много потоков по какой-то причине, то держи только один поток с асинкио, создавай его на старте приложения. Но потом придётся сложно с ним коммуницировать, потому что основные примитивы асинкио не threadsafe. Поэтому тебе надо будет пользоваться функциями вроде loop.call_soon_threadsafe, внутри которой, например, класть что-то в асинкио-очередь. А из асинкио возвращать данные в прочие потоки тоже через очереди, то уже из модуля queue, потому что они потокобезопасные, в отличии от asyncio.Queue

Но есть подозрение, что ты пока плохо понимаешь, что тебе надо, и делаешь что-то не то, за что потом тебе будет стыдно
360 2481373
Какие книги/ресурсы про обработку изображений, в том числе вычленение текста почитать?
image.png383 Кб, 1833x1157
361 2481378
Резонирует с вашим опытом?
362 2481425
Аноны, а где можно почитать подробнее как питон работает с памятью для встроенных типов. Вот например.
a = 500
b = 500
В данном случае это один объект
А вот если сделать так
b = b + 1 - 1
То это уже два разных объекта

В каких случаях происходит присвоение одинакового айди и когда он меняется?
Гарантируют ли разные айдишки выделение памяти на каждый объект или под капотом может быть так, что эти переменные все ещё ссылаются на один участок памяти с 500?
363 2481427
>>481425
Если id разный - это разные участки памяти
364 2481428
Сааап гайс.

А вы где потом работать собираетесь?

Вот пример на скрине, за сутки, 400 желающих, дс2.

Вы же понимаете, что скорее всего вам не повезет с работой и будете дальше дебажить свой пайтон от злости в фап тредах?
Screenshot2022-10-04-11-37-58-018ru.hh.android.jpg437 Кб, 1080x2340
365 2481430
>>481428

>вот скрин

366 2481434
>>481428
Вкатился на вакуху где было 300 откликов. Не ебёт
367 2481436
>>481430
Там некорректный счётчик скорее всего. Они недавно его в веб версию вставляли, потом убрали. Так вот, там счётчик показывал глобальные отклики судя по всему, с момента создания вакансии. Если вакансия старая, закрывалась-открывалась, то счётчик не сбрасывается судя по всему.

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

По id вакансии можно понять, старая она или новая.
368 2481437
>>481430
У меня 9 лет опыта. Хрюши сами бегают за мной. Пусть набирают вкатунов, через некоторое время поймут, что 90% из них делают лютейший кал без присмотра. Тогда уже они готовы выделить бюджет на более разрабов
369 2481439
>>481425
По-моему сейчас до 256 у тебя гарантия, что объект будет один, иначе уже разный. В твоём случае одинаковый изначально потому, что тут из констант он инициализируется. А вообще тебе не нужно об этом думать вообще, это всё детали реализации машины. Тебе со значениями надо работать, а не со ссылками.
370 2481443
>>481430
Эта вакансия старая
https://hh.ru/vacancy/69953066
id до 70M, поднятая, а счётчик там некорректный >>481436

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

Написал тестовое задание на - FastAPI/Docker/K8s/SQLAlchemy, но тестами не покрыл, дефолтные крудики.

Я уже имел коммерческий опыт разработки на питоне, но все мои собеседований были не больше 30 минут, иногда даже за 10-15 минут заканчивали техническое собеседование, я не знаю почему так выходило и вопросы в целом были легкие. Уже долгое время не проходил прям технического интервью.

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

Я думаю смогу пояснить за то какие HTTP методы есть, что такое REST, распределенные транзакции, шердинг БД, как правильно делать распределение БД по вертикали или горизонтали, в каких случаях это нужно, солид, асид, нормализация - все это зазубрил как отче наш, знаю около 10 +- паттернов и в целом сейчас пытаюсь разобраться в архитектуре, читаю боба.

К каким можно серьезным вопросам готовиться? Мой первый заваленный собес был из-за того что я не знал что такое нормализация и в целом плохо понимал БД, индексы и т.д.
372 2481486
>>481439
У меня просто есть очень большой стейт (на 500 мб) который представляет из себя многоуровневый словарь где ключи и значения представляют из себя строки до 5 символов. При этом уникальных значений этих строк немного, около 10к, они часто повторяются и известны заранее и кроме добавления/удаления по данным их приходящих жсонов и далее с ними никаких действий не производится. Собственно я бы хотел что бы каждое одинаковое значение было гарантированно одним объектом, так как потенциально это бы сильно сократило потребление памяти. Пока в голову ничего кроме того, что бы сделать свои строки-синглтоны в голову не приходит.
373 2481501
>>481489 (Del)
Спасибо, кажется то что нужно
image.png224 Кб, 1280x1310
374 2481537
>>481489 (Del)
Так, это я где-то в расчетах обосрался или это действительно так эффективно?

Первый вариант - 0.011 MB
Второй вариант - 513.0784 MB
375 2481666
>>481371
Согласен, бро, возможно я делаю костыли, но выхода нет, надо пробовать, только так можно чему то научится.

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

Ну вот и я сначала пробовал с asyncio, теперь с Celery и asyncio.
Что я придумал? Я запускаю в воркере задачу на опрос, в этой же задаче смотрю результат, и если в нём есть условия на таймер, то спавню новую celery задачу - поставить таймер и вернуть управления в главный поток, чтобы воркер мог дальше запускать опрос сервера каждые 5 минут. Когда таймер закончится - отправить данные.
376 2481675
>>481451
Ну че как прошло?
377 2481719
>>481537
Ты что-то не то меряешь.
В варианте с sys.intern будет у всех одинаковых строк одинаковое id() поэтому result вообще больше 100 никогда не растет.
Если твои 500мб это стандартные ключи плюс какие-то полезные значения то так и надо мерять -- чтобы все 10^7 ключей оставались в памяти висеть
378 2481721
>>481675
Крч, прошел собеседование на джуна, вопросы были такими

1 - АСИД
2 - Солид
3 - Отношения в БД
4 - Индексы(Sparse,Dense)
5 - Транзакции
6 - GIL - Конкуретность, процессы, треды и т.д
7 - DJANGO - Lasy QuerySet
8 - N+1 проблема
9 - Вопросы по фастапи
10 - Какие тесты писал, пирамида тестирования
11 - типы данных
12 - как работает внутри сет
13 - неизменяемые изменяемые
14 - генератор итератор

+ Тестовое задание, сделал хорошо как он сказал, но был 1 вопрос почему не использовал GROUP BY вместо фильтра в алхимии.

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

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

Задача - Напиши мне генератор которые выдает четные числа

(как я сделал) - Он говорит. а так мы будем выдавать всегда одно значения? Я охуел и подумал, точно блять, какой же я даун, переписал
1 Вариант
even_numbers_generator(num:int) -> int:
if num % 2 == 0:
yield num

2 Вариант

even_numbers_generator(num:int) -> int:
for i in range(num):
if i % 2 == 0:
yield i

for number in even_numbers_generator(10):
print(number)

Он говорит, что окей, но как мы можем сделать это через другой способ? - И вот тут я охуеваю и начинаю жестко тупить - Какой второй способ? Ну можно через класс сделать, он говорит не надо, другой способ, тут тоже все будет через цикл, я начинаю тупить и писать что-то вроде for i in yield(), он начинает подсмеиваться, я начинаю уже пиздец тильтовать, я давно не проходил собесы + нервничал.

Потом дошло, что через while можно, но и я начал тупить тут, писать типо while num < 10 и не понимать что нужно конутер добавить.

Ну и как-то так

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

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

1 - АСИД
2 - Солид
3 - Отношения в БД
4 - Индексы(Sparse,Dense)
5 - Транзакции
6 - GIL - Конкуретность, процессы, треды и т.д
7 - DJANGO - Lasy QuerySet
8 - N+1 проблема
9 - Вопросы по фастапи
10 - Какие тесты писал, пирамида тестирования
11 - типы данных
12 - как работает внутри сет
13 - неизменяемые изменяемые
14 - генератор итератор

+ Тестовое задание, сделал хорошо как он сказал, но был 1 вопрос почему не использовал GROUP BY вместо фильтра в алхимии.

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

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

Задача - Напиши мне генератор которые выдает четные числа

(как я сделал) - Он говорит. а так мы будем выдавать всегда одно значения? Я охуел и подумал, точно блять, какой же я даун, переписал
1 Вариант
even_numbers_generator(num:int) -> int:
if num % 2 == 0:
yield num

2 Вариант

even_numbers_generator(num:int) -> int:
for i in range(num):
if i % 2 == 0:
yield i

for number in even_numbers_generator(10):
print(number)

Он говорит, что окей, но как мы можем сделать это через другой способ? - И вот тут я охуеваю и начинаю жестко тупить - Какой второй способ? Ну можно через класс сделать, он говорит не надо, другой способ, тут тоже все будет через цикл, я начинаю тупить и писать что-то вроде for i in yield(), он начинает подсмеиваться, я начинаю уже пиздец тильтовать, я давно не проходил собесы + нервничал.

Потом дошло, что через while можно, но и я начал тупить тут, писать типо while num < 10 и не понимать что нужно конутер добавить.

Ну и как-то так

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

Все же думаю у меня есть шансы что возьмут, так как ответил на все вопросы и затупил только на решение этой хуйни, но до харакири не далеко.
379 2481722
>>481719
Так если я буду юзать обычные строки, то они будут уже давать этот оверхед в 500мб, просто потому что они вообще используются. Это не говорит о том сколько будет весить итоговая структура, но показывает сколько можно сэкономить.
380 2481731
>>481721
Ну если это единственный заметный проёб то имхо всё ок
381 2481735
>>481451
Смотришь что у них в вакансии написано и это. Повторяешь в 1ю очередь
382 2481742
>>481731
Да, тоже так думаю, но мало ли
383 2481744
>>481735
Я привык ничего не повторять, у меня как вроде хороший фундамент, мы в унике это все прям зубрим ещё, просто я практически не практикуюсь, я не знаю какие пет проекты писать, дефолтные круды не хочется делать, что-то сложное идей нет. Поэтому пытаюсь найти работу, что бы начать делать стоящие вещи.
384 2481761
>>481722
Ну смотри: строка 5 символов это 5 байт (6 если с нулем), 64-битный указатель это 8 байт.
Если ты интернишь строки то в твоем гигасловаре все равно ключи будут занимать минимум по 8 байт. Потому что каждый ключ должен ссылаться на уникальную строку.
Поэтому сравнивать вариант когда result длиной 10^7 и когда он 100 получается некорректно.
Сделай result = list() и добавляй туда все строки. Тогда померяется ровно оверхед от строк.
385 2481765
>>481722
а блин я тупой, там же меряется только sys.getsizeof а не вся потребляемая память
Fb3k5ZbVsAApn6z.png372 Кб, 856x601
386 2481766
У кого какой второй язык? Виду что много питонистов в голанг вкатываются... во что ещё есть смысл позалипать?
387 2481774
>>481761

>строка 5 символов это 5 байт (6 если с нулем)


Питонячьи строки это не только ее содержимое, но и метаданные дающие по 49 байт

>As you can see, depending on the content of a string, Python uses different encodings. Note that every string in Python takes additional 49-80 bytes of memory, where it stores supplementary information, such as hash, length, length in bytes, encoding type and string flags. That's why an empty string takes 49 bytes of memory

image.png344 Кб, 1833x1157
388 2481826
389 2481873
Питонисты, к вам вопрос: допустим есть директория и нужно рекурсивно во всех директориях внутри нее открыть файл с одним названием.
Например в баше могу сделать так - cat /home/*/config.conf, как на питоне так же сделать? Желательно покороче
image.png44 Кб, 938x774
391 2481892
>>481873
>>481887
Вот так работает:

мимо спс, тоже надо было
image.png2 Кб, 201x52
392 2481929
Самый простой способ получить дату и время в таком формате?
393 2481932
>>481929
time.strftime + читай доку про формат
394 2481944
Вот в opencv есть функция findcounturs.
Контуры сохраняются в вектор. А, собственно, вопрос : какие цифры он сохраняет? Что они значат?
изображение.png751 Кб, 1062x956
395 2481966
>>481944
А документация не открывается?
https://docs.opencv.org/3.4/d3/dc0/group__imgproc__shape.html#ga17ed9f5d79ae97bd4c7cf18403e1689a
А потом гуглишь пример с питоном и смотришь как там возвращаются контуры и иерархия.

Это уже не говоря о том, что мне готовая демка с пояснениями выпала по первому запросу.
И не говоря о том, что поглядя на формат выдаваемого значения можно самому догадаться, что это координаты, сгруппированные (видимо по отдельным контурам). Я не смотрел, но вот они нарисовались так же, как функцией drawContours.
Screenshot2022-10-04-11-37-58-018ru.hh.android.jpg437 Кб, 1080x2340
396 2482017
>>481766
>>481766

>во что ещё есть смысл позалипать?


В то, куда потом с этими скиллами сможешь устроиться.

Конкуренция жеж бешо́нная, если разве что повезет.
397 2482047
>>481766
Че за голанг? новомодный язык пориджей?
398 2482062
Привет! помогите с заданием

>Дана функция, принимающая рандомное количество элементов и выводящая на принт множество- длина которой не более 10 элементов. Здесь понадобится преобразование типов.



если кратко то список нужно как-то превратить в set через функцию
k = func2([1],2,3)
кккккк.png12 Кб, 969x118
399 2482064
>>482062
Пытался сделать так, но очевидно выдает ошибку
400 2482082
>>482017

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


Просто будь лучше чем 80%, тогда проблем не будет.

>>482047
Да
401 2482083
>>482064
Изменяемые типы не могут в сет входить
402 2482089
>>482083
Да потому его надо изменить, но я не могу понять как
16639653483130.jpg68 Кб, 597x559
403 2482103
>>482089
Чел
404 2482119
>>482089
Тут без навыков телепатии не разобраться что имеет ввиду задающий задачу.
Пытаясь максимально удовлетворить запрос, я бы что-то такое примерно написал(https://pastebin.com/FYJN47XX), которое по возможности пытается разворачивать списки.
405 2483334
>>482062

> k = func2([1],2,3)


это из задания или ты сам придумал? а то хуй знает, если бы задача была на обеспечение хэшабельности объектов, может бы об этом поподробнее сказали

а то вот я преобразовал тип аргс из листа в сет:
def f(*args):
return set(args[:10])
406 2483375
В каком формате лучше (в плане быстродействия) всего хранить таблицу
1) в которую в три столбца записываются некие id, короткая строка и достаточно длинная строка.
2) из которой надо быстро доставать либо конкретную строку со всеми данными, либо случайную строку по фильтру

Я сейчас использую библиотеку SQLite3, но может зря?
407 2483382
>>483380 (Del)
За пару месяцев накопилось 133 тысячи
408 2483440
Анон, нужно на питоне написать скрипт который будет открывать несколько приложений на пк + открывать браузер и производить в не определенные действия.
Писать планирую на питоне, какую необходимую базу нужно иметь под рукой, если ты нихуя не понимаешь в этой теме?
409 2483442
>>483440

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


самофикс
410 2483566
>>483454 (Del)
в остальном пока не планировал. Погуглил про пюпитр, не совсем понял такой момент - в этих ваших интернетах пишут, что это безголовый браузер, я не понял он будет какие-то действия без визуализации производить, или с помощью него я буду открывать свою уютненькую оперу на автомате?
411 2483854
Сап.
Есть целери и прометеус. Прометеус будет забирать метрики из легковесного сервера с одной страничкой.
Сервер поднят в основном процессе селери. Так вот, как этот ебаный регистр для многопроцессорной сборки метрик сделать? Или я дебил или что-то не так. Он писать в файлы должен, но каталог пустой.
image.png49 Кб, 793x478
412 2483991
>>482017
Вот смотрите, аноны. Этот скрин анон сделал 4 октября в 11:37.
Было 347 откликов

Сейчас 7 октября, а откликов только 417. За более, чем три дня, добавилось только 70 откликов

Правда вакансия до сих пор не закрыта. Но не очень показательно ещё потому, что там "отклик без резюме", можно напрямую по почте высылать, это в статистику не попадает
413 2484064
>>462085 (OP)
Всем привет
Наверняка тут есть местные, которые разворачивали свои сайты
Планирую написать сайт на джанге (эксперимента ради), сайт простой с точки зрения функционала (всего парочку таблиц и скриптов), но хочу его сделать относительно пестрым, красивым и быстрожействующим
На какие параметры сервера мне ориентироваться? Гиг оперативы мне вряд ли хватит под джангу, если ничего особо спецом не крутить? Или как раз хватит?
414 2484189
>>484064
В 2 раза меньше хватит.
415 2484238
>>484064
Сама джанга ничего не жрёт. Хватит гига и на питон с джингой, и на постгрес
image.png29 Кб, 812x206
416 2484246
Цель: парсер, который 24/7 собирает данные и сохраняет в Json файл.

Если просто загружать Json, добавлять элемент и сохранять, это ведь хуевый вариант, да? Если вдруг при очередной записи пойдет что-то не так, то может похериться весь файл. Как по уму это сделать?
417 2484255
>>462085 (OP)
У Героя есть 5 разных характеристик, они могут варьироваться от 1 до 10. Надо при старте их рандомно сгенерировать. Проблема в том что общее число поинтов которое будет распределено тоже рандомно - от 20 до 30. Как это сделать?
418 2484259
>>484246
Сохранять в новый файл, а потом удалять старый
419 2484262
>>484246
Будет лучше, если ты не будешь перезаписывать файл, а откроешь его, и не закрывая будешь по мере поступления дописывать в него новое. Или открывай в режиме append, где запись в уже имеющуюся часть файла запрещён.
Тогда если что-то сломается, старая часть будет целая.

Я не знаю умеют ли такое pickle и json в питоне - я бы просто открывал файл в бинарном режиме, через json или что тебе нужно данные просто в bytes закидывал (можно ещё какую-то метку, чтобы если что-то сломается и будет неправильны размер записан - можно было найти метки на начала частей - или вовсе хранить их рядом в соседнем файле в виде небольшой таблицы, где хранится начало в файле, размер и хеш), и писал бы в файл размер новой части и эти байты. Старые уже записанные данные бы не трогал естественно вообще.
420 2484267
>>484262
В json так по-определению не получится
421 2484273
>>484255
Рекомендую использовать вариант с sample.

>>484267
Чего? По какому ещё определению, совсем ту-ту? Ты не можешь свою функцию придумать, которая без перезаписи будет дописывать в файл второй json?

Что мне мешает данные (json или что угодно ещё) записать в свой бинарный файл как мне захочется?
У тебя 4 байта идёт размер следующего json-а, а потом его бинарное представление, потом ещё 4 байта размера и ещё одно представление json-а, и так сколько захочешь раз.
422 2484276
>>484267
А, ты про то что json надо обновлять...
Так у тебя же акцент на том, чтобы данные не повредились. Ты полученные изменения-обновления сохраняешь отдельно, а потом объединяешь. Если один кусок не правильно загрузится, и хрен с ним - все остальные будут целые и корректно сохранены.
Это и безопаснее, и эффективнее.

Типа, если у тебя там будет 10000 отдельных кусков, то слить в конце можно за 10000 операций, а если ты на каждом шаге будешь открывать json размера 1, 2, 3... 9998, 9999 и всё в нём менять, то это довольно медленно будет, не говоря уже про беднягу жёсткий-диск (или что у тебя там). Ну, если там данные накапливаются, а не перезаписываются, естественно.
423 2484298
>>484264 (Del)

>Используй csv


А в чем преимущество перед Json в данной задаче? Можно отдельно перезаписывать часть, а не весь файл?
424 2484302
>>484276
Смысл в том, что в json есть замыкающие скобки и т.п. Поэтому просто делать append не получится. Поэтому тебе надо придумывать какие-то грязные хаки.

Если надо обновлять файл целиком, то стандартный паттерн такой, что создаётся новый файл сначала с новыми данными, а потом старый и новый переименовываются. Есть варианты с символическими ссылками, не суть.

Другие варианты - это уже придумывать свои БД. Скорее надо не придумывать, а брать готовые решения. Ну или придумывать свои схемы по аналогии с тем, как это используют в известных системах.
image.png29 Кб, 1162x212
425 2484304
>>484301 (Del)
Ебать, реально. Спасибо большое!
426 2484425
>>484302
Я понял. Я про то, что если новые данные приходят каждую минуту - тебе не нужно перезаписывать файл, можно дописывать полученный кусок данных в виде, в котором он пришёл (в бинарном, мать его - и итоговый файл, это не json, а твой собственный сырой формат). Вообще не важно что там со скобками или без.
А уже потом открываешь и объединишь.

И это не бд, это 4 строчки на сохранение, и столько же на загрузку. Или около того.

>Скорее надо не придумывать, а брать готовые решения.


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

Это как я загуглил как в торче оператор лапласс к тензору применить - и там предлагают целую либу загружать через пип. Хотя такой оператор, это очень просто и требует только 3 строчки, название класса, перегрузка функции и одна строчка кода. Это, блять, просто пиздец. Уже пошёл готовые решение использовать. Вместо a+b буду писать pip install add_two_number, и потом использовать add_two_number.sum_two_number(a, b). Ну а хули, готовое решение, нужно использовать. Поехавшие.
И я почти уверен, что такая либа есть. Не знаю шутки ради или не совсем, но почти точно есть что-то подобное.
427 2484469
Гайс, как продолжить обучение после учебника начального уровня? Дальше долбить книжки особого энтузиазма нет, хочется часами втыкать в сложный код и охуевать. Где можно найти реальные задачи? Или может начинать осваивать фреймворк? Какой посоветуете попроще и интереснее?
428 2484624
Помогите студенту, преподка нихуя не понимает, я нихуя не понимаю. Почему 160 выводит программа? Если сумма всех дней меньше 160 судя по терминалу, но если считать ручками( то будет 149.5)

current = 10
sum = 0
progress = float(1.1)

for i in range(1,11):
print(i, '', current, 'км')
current += progress
sum += current

print(int(sum))
429 2484625
>>484624
если че потом изменил 'i' на 'day', роняя калл менял имена переменных чтобы вам было проще воспринимать код
430 2484641
>>484469

>Где можно найти реальные задачи?


На работе

>Или может начинать осваивать фреймворк? Какой посоветуете попроще и интереснее?


Тебе нужно вкатится, смотришь вакухи в твоем городе, если находишь что-то кроме джанги стараешься устроится туда. Фастапи, аиохттп, саник, не важно. По сути все это вебморда для микросервисов, а джанга это полный комбайн в виде монолита. С первым на порядок больше шансов найти компанию с более современным стеком.
431 2484652
>>484624
ты сначала увеличиваешь рекорд дня на 10%, а затем прибавляешь его к сумме, тем самым пробежав в первый день 11 км вместо 10

вот так получится 149.5:

daily_distance = 10
total_distance = 0
progress = 1.1

for i in range(10):
total_distance += daily_distance
print(f'День {i+1}: {daily_distance:.1f} км')
daily_distance += progress

print(total_distance)

но это неверное решение, потому что тебе по заданию нужно на 10% увеличивать дистанцию дня, а прибавлять к ней 1.1 км каждый раз

> преподка нихуя не понимает


проиграл
432 2484654
>>484652

не прибавлять к ней 1.1 км каждый раз


фикс
433 2484657
>>484641

>если находишь что-то кроме джанги стараешься устроится туда. Фастапи, аиохттп, саник, не важно.


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

Стандартный учебный пример - это какой-то простенький чат
434 2484686
>>477072
он просто пади на cpython тупо написан, а петухон как фреймворк для него.
хз зачем он приводит в пример работу кода петухоновского если там написано что это просто эквивалент.
435 2484687
>>480384
Потому что заебешься потом сидеть разбираться как это говно работает.
Разве проблема сразу сделать нормально с первого раза?
436 2484688
>>481721
чот какое то душнилово как по мне

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


кого вообще это ебать должно, важно что ты понимаешь для чего он нужен.

>>1 - АСИД


лол
437 2484772
>>483991

>Правда вакансия до сих пор не закрыта.


Блять тут в питере многие вакансии вижу месяцами и год наверное висят. Причем там на отклик никак не реагируют зачастую даже.
С какой целью размещают такой сомнительный околоскам хз — заявить о своей компании, мол заказчики загуглять а там ебаать тевстировщиков за 100к ищут и питонистов за 150к, ниххуя себе контора!¡ (таких идиотских студий куча)

Либо эйчары развлекаются так.
Screenshot2022-10-04-11-37-58-018ru.hh.android.jpg437 Кб, 1080x2340
438 2484773
>>484469
А ты реально думаешь, что сможешь найти работу?

Кааа́амон меен, ты реально способен конкурировать с 4-мя сотнями этих ребят, которые несколько лет штруделировали алгоритмы в вузике и олимпиадах?
439 2484806
>>481721

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


Анон, сейчас я тебя ещё больше расстрою, потому что есть
range(start, end, step)
и ты мог бы написать for i in range(1, 10, 2) (или до 20, не понял твою задачу)
ну или можно
for k in range(10): return 2*k

Со стороны твой подход и твои слова смотрятся стрёмно, но да ладно, все иногда обделываются
440 2484807
>>484806

>range(1, 10, 2)


fix: от 0, конечно, если чётные нужны
441 2484809
>>484688

>чот какое то душнилово как по мне


Ну ты зря, ХЗ кто в конкретном случае собеседовал и что у него в голове, но эти вопросы на то, чтобы оценить твой кругозор, общее понимание платформы, как мозги работают и т.п. Ещё как ты реагируешь на вопросы, ответы на которые не знаешь.
442 2484811
>>484772

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


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

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

Совсем оскотинились хрюши, писали бы хотя бы "мы может быть рассмотрим Вас, когда вновь наступит 2021", я бы всё понял
443 2484896
>>479886
Линукс основной системой, винду в виртуалке.
444 2484901
>>479776
Открываешь сорц declarative_base и читаешь
445 2484905
>>476690
Ты наркоман что ли? Ещё б джаву предложил.
446 2484963
>>484809

>>чтобы оценить твой кругозор, общее понимание платформы, как мозги работают


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

Написал так
requests.get(link, timeout=100)

Но он всё равно ждет 15 секунд и завершается TimeoutError.
С другим интернетом более быстрым всё нормально
448 2485170
>>485158
разобрался. на выгрузке у меня таймаута не хватало а не на запросе
449 2485184
>>484905
А че такова? Я бы запрограммил на петухоне без проблем.
16452069005840.jpg97 Кб, 900x900
450 2485207
Аноны, подскажите нормальные курсы или книги, чтобы въехать в джанго
451 2485237
>>485207
Зачем тебе въезжать в говно?
452 2485238
>>485207
Зачем тебе въезжать в говно?
453 2485345
>>485207
документация на сайте джанги, она хорошая!
454 2485356
Помогите придумать алгоритм для отслеживания появления различных баннеров на сайте
Баннеры на хтмл появляются в рандомном порядке и мешают дальнейшему парсингу
Как закрыть баннер я знаю, а как сделать постоянное отслеживание появления определенных элементов с известными айди - я не представляю
Использую селениум, но интересует именно алгоритм
Я нуб, могу что то не знать
В общем ткните носом
Спасибо
Screenshot2022-10-10-14-35-46-178com.google.android.gm.jpg344 Кб, 1080x2400
455 2485431
Почему я уже несколько месяцев как зарегался на хз, а он мне выдает одну хуйню в вакансиях, которые даже к программированию отношения не имеют.

Какого хуя? Как вкатываться в этот ваш питон то?
456 2485458
>>485345
Да, лучше не найдешь!!!!

И где он работать собрался, его же не возьмут нигде.
457 2485461
Мдаа ребята, тред дохлый, как и айти в РФ после начала войнушки.
458 2485462
>>485431
лол, что за ад? криворукий кодил алгоритм подбора похоже
459 2485533
Гайз, есть вопросы.
Допустим я импортирую две библиотеки через import jopa и import govno, в которых названия функции zalupa пересекаются. В коде я использую соответственно a = jopa.zalupa() и b = govno.zalupa() Результаты будут разные или одна функция заменит другую из-за названия, так как две библиотеки импортированы подряд? Тогда стоит ли постоянно использовать from jopa import zalupa - jopa.zalupa()- from govno import zalupa - govno.zalupa()
460 2485570
>>485461
либераха порвался.
с политотой дуй в другой раздел
461 2485573
>>485207
офф дока + практика создания какого нибудь сайтика.
462 2485574
>>485533
через обычный импорт должно все работать
463 2485583
>>485574
должно? то есть ты предлагаешь мне самому пойти вручную проверять?
464 2485597
>>485583
мне за тебя еще и код пописать?
дуй и сам проверяй тогда
465 2485602
466 2485874
Так, какого хуя?
изображение.png3 Кб, 244x130
467 2485878
>>485874
Известная же фигня.
В принте напиши {float:.8f}, например.
468 2485885
>>485878
Ты мне предлагаешь форматирование. А есть ли способ сделать сами числа точными в питоне?
469 2485888
>>485885
Вопрос на миллион
470 2485893
>>485888
Ну там - числа с хуйной точностью или еще чего нету?
1665456407605.jpg6 Кб, 251x123
472 2485973
>>485893
Есть хуй. Будешь?
473 2486000
with open (path, 'w') as file:
____d = json.load(file)

d = json.load(open(path, 'w'))

Эти два варианта тождественны? Второй автоматически закрывает файл или нет?
474 2486050
>>485885
Да, есть. Символьные вычисления. И я думаю что в питоне уже есть для них либы.
475 2486111
>>486000
Во-первых, ты можешь это проверить создав свой объект и смотря за его __del__, __exit__ и другими.
Во-вторых, даже наоборот, у тебя значение переменной file останется, просто для него выполнится метод __exit__, а во второму случает у тебя никаких переменных не останется.

Вроде как разница в том, что если у тебя в функции json.load произойдёт исключение, то будет немного отличаться что-то.
476 2486147
Лучшая либа для работы с S3 хранилкой? Вижу что везде написано про boto3, но мб есть какие-то альтернативы? Учитывая что мое приложение будет только читать данные из бакетов, ничего не создавая. Может есть что-то асинхронное?
477 2486422
print (bool (1 and 3 in range (2,5)))

>true


Почему так нахуй ??? and же
and.PNG6 Кб, 556x201
478 2486442
>>486422
Сначала вычисляется 1 and 3, затем in. Почему возвращаются такие значения, можешь почитать здесь:
https://realpython.com/python-and-operator/#using-pythons-and-operator-with-common-objects
479 2486498
>>486442
аа, понял, спасибо
480 2486500
>>462085 (OP)
Привет.
Помогите разобраться с concurrent.futures.
Генерируется число функцией random()
Записывается в переменную authtoken
Переменная записывается в словарь data['Token'] = authtoken
К data['Token'] прибавляется еденица и записывается в переменную badtokensum
Вывод:
IP: 2.2.2.2 Token: 0.5771020017377818
IP: 2.2.2.2 TokkenSUM: 1.202102093048409
Более конкретный пример который можно запустить:
https://pastebin.com/EJsxuM15
481 2486549
>>486422
откуда взял такой вопрос?
вспоминаю свои собесы на джава-джуна, по сравнению с теми вопросами эта детский уровень
482 2486557
Посоны, кто знает
Почему один крупный сайт палит работу хромдрайвера через селениум?
Я перепробовал почти всё и у меня всё заработало с помощью библиотеки selenium-stealth. Но на днях скрипт опять перестал рабоать.
С помощью вот этого сайта bot.sannysoft.com я узнал что написанный мной бот на selenium-stealth почему то не подменяет web-gl и возможно именно из за этого сайт палит меня как бота

Так или иначе, может быть кто то знает как скрыть работу хромдрайвера чтобы сайт не понял, что работает скрипт?
Или может быть кто знает аналоги для автоматизации действий на сайте
483 2486558
>>486557
Палит сразу при заходе на сайт? Если нет, то через какое количество запросов в минуту?
юзай fake user_agent, прокси, вместо перехода по ссылкам используй . click ()
484 2486559
>>486558

>Палит сразу при заходе на сайт?


Нет, палит при введении логина и пароля - не логинит.
Если без бота, то всё норм

>юзай fake user_agent, прокси, вместо перехода по ссылкам используй . click ()


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

Хелп. Любая помощь. Я всё перегуглил
Может подскажете где спросить?
485 2486560
>>486558

>Палит сразу при заходе на сайт?


Хотя вот может быть селениум в консольке начинал ругаться на web-gl как только я заходил на сайт (в гугле где я через селениум гуглил этот сайт, типа я человек - всё норм, консоль молчит)
Повторюсь, после ввода логина и пароля - не логинит.
сори я отрубаюсь, но надеюсь на советы. Спасибо)
486 2486561
>>486560
Я сейчас не могу сказать точно когда конкретно палит, потому что не за рабочим компом
image.png79 Кб, 827x971
487 2486580
>>486422

погодь, а почему должно быть как-то иначе?
я питонодебил и реально не понимаю, что тебя смущает
488 2486584
>>486000
нет, не тождественны. второй должен быть таким:

> file = open(path, 'w')


> d = json.load(file)


> file.close()



но даже в этом случае будут не тождественны, так как файл не закроется при эксепшне во время обработки джейсона, а with в этом случае автоматически закроет файл. называется context manager
489 2486671
Использовать флаги в коде дурной тон? Услышал от знакомого, и теперь боюсь опизрючется от тех, кто читать мое полотно будет
490 2486688
Позвали на собес на стажера бэк-энд разраба на пайтон по знакомству, сам искал позиции аналитика, так как пайтон не особо знаю, да и в целом прогаю так себе. Согласился, так как сказали, что по языку знания минимальные, типа всяких массивов, множеств, списков. Что могут попросить написать по этим темам? И как вообще за пару дней получше подготовиться? Сказали, что в первую очередь будут смотреть на софт скиллы.
491 2486734
>>486688
Аналитики самые бесполезные черви-пидоры. Учи давай программинг сука.
Страна в опасности в кольце врагов, а ты все хочешь на дурачка проскочить.
492 2486780
>>486688
Какие к хуям массивы в питоне?
изображение.png6 Кб, 267x163
493 2486785
>>486422
Даже если не задаваться вопросом почему и как оно считает - при любом порядке вычислений там будет true.
494 2486786
>>486671
твой знакомый уёбок
496 2486789
>>486787
ни разу в жизни не пригодилось. питоню разное от сайтов до игор с 2014 примерно. нампай юзаю иногда

мимо
497 2486791
>>486789
Пригождается для байтоёбства.
498 2486793
>>486787
Библиотеки - это другое.
499 2486807
>>486793
Это кор либа, итертулс или функтулс тоже не то?
500 2486823
>>486789
Да тебе и хуй ни разу в жизни не пригодился
501 2487013
>>486549
Я этот вопрос не искал, столкнулся прост. Там надо было проверить одновременное находение в диапазоне
502 2487015
>>487013
нахождение*
image.png8 Кб, 556x201
503 2487016
>>486580
Ну тип там должно и одно, и второе число в диапазон входить. Должно быть false. Ну вон анончик выше пояснил, как это правильно сделать
image.png45 Кб, 750x537
505 2492481
>>484624
У меня так получилось после фиксов
1) У тебя в первый день он пробежал 11, а должно быть 10
2) На второй день у тебя должно получится 10 + 10%, а у тебя там фмксированное число прибавляется
506 2501622
Привет, двач, нужна помощь.
Есть значения словаря котыре нужно превратить в сет
ewfwef = '9', qqwe='12334',green = 'graas', a = '123', f=[7])
нужно добавить проверку и перед выводом превратить список в тюпл. Как это можно сделать?
Тред утонул или удален.
Это копия, сохраненная 9 ноября 2022 года.

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

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