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

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

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

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

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
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 2213582
>>2213470 →
ни разу с этой хуйней не работал
но асинхронные коллбеки в пистоне могут работать по разным принципам, их могут высирать в отдельном треде, а могут запускать в asyncio ивент-лупе как в жс

чтоб проверить тред, введи логирование и передай туда threading.current_thread().name и threading.current_thread().native_id
image.png106 Кб, 1411x392
3 2213687
>>2213368 →
И как же по-твоему работает вот этот код, м? Понять хоть можешь, почему он так написан? (один хуй что жс, все то же самое тут)
4 2213693
>>2213368 →
Видел на ютубе плейлист от не очень популярного чела, который к асинхронщзине на последнем видео проходит весь путь начиная прям с оси, это наверно тебе нужно. Пиздуй искать.
5 2213749
>>2213470 →
https://stackoverflow.com/questions/55868685/update-a-gtk-progressbar-from-another-thread-or-process

Glib.idle_add или Glib.timeout_add, видимо, использовать надо.
image.png57 Кб, 200x200
6 2213821
Прошел собес в Хуяндекс на Мидла. Ни одного вопроса по технологиям, все вопросы по питону, 2/3 собесов так вообще чисто по алгоритмам с литкода.
Ахуенно они хантят. А если я даун и не умеют работать с эластиком, постгресом, кубером, реббитом, кафкой? Все равно возьмут лол, прост потому что алгоритмы надрочил. Каеф.
7 2213832
>>13821
что за вопросы, пиши здесь
8 2213843
>>13821
да им похуй, хуяндекс обычно рабов набирает
9 2213846
>>13832
Есть 2 ветки: одна базу корраптит, другая секретные ключи сливает, какую в мастер зальешь, какую в прод соберешь?
10 2213851
>>13846
в мастер корапт заливаешь, ключи себе забираешь
5e6b559a540815e0cdc55816ba630c02.jpg18 Кб, 300x299
11 2213858
>>13851
вы приняты
12 2213951
>>13821

>Прошел собес в Хуяндекс на Мидла.


>А если я даун и не умеют работать с эластиком, постгресом, кубером, реббитом, кафкой?


Дык их надо знать не кодеру, а ДевоПсу. Тебе просто дадут гайдлайн, где будет описано, в какие интерфейсы что в каком формате слать и как в stdout выводить.
image.png12 Кб, 600x315
13 2213994
Почему это говно провалилось?
14 2214002
>>13994
Нормально на нем проектов, сам работал. Но он тупо устаревший уже и сейчас нахер не нужен.
15 2214012
>>13994
Выпустили нативную асинхронщину
16 2214137
Поясните, нахуй нужен петон?
Куда с ним можно устроиться кроме МЛ и БигДата?
Ну выучил я синтаксис питона, что дальше делать?
Вот у жскрипетров все понятно - фроненд он и есть фроненд.
17 2214140
Сап, Антоны.
В общем, ковыряю я джангу на локалхосте, только учусь.
И смотрю я так, там есть всякие удобства для работы с БД, реально круто всё.
НО.
Мне как-то с базами привычнее общаться на кастомном SQL.
В том числе самому рулить вьюшками и функциями с нарезанными правами и обозначенными транзакциями. Видимо, сказывается опыт Operations-универсала и ВУЗовские времена с дипломом на Delphi.
Скажите, плиз, работать в джанго будет эффективнее через модели или таки через чистый SQL.

А ещё, пока писал, подумал -- если мне модели никуда не упираются, то, может, проще Flask взять? Я, правда, о нём толком не читал даже, но, вроде, из MVC у него свой Controller, вместо Models я могу использовать чистый скуль, а View наверняка реализуется той же Jinja, только её нужно отдельно подключить?..
А работает Flask вроде бы как быстрее.
18 2214161
>>14137

> что дальше делать?


Ничего.
19 2214162
>>14137
тут буквально недавно чел удачно продал попку яндексу: >>13821
похоже что на бэк
20 2214165
>>14137

>Куда с ним можно устроиться кроме МЛ и БигДата?


Технически - куда угодно.
Хочешь - в бэк на Django/Flask, хочешь - на десктоп (PyQt, Tkinter), хочешь - в автоматизацию и так далее, и тому подобное.
В принципе и на мобилках что-то есть, но там такое... Есть PyQt в Sailfish/Аврора и Kivy, который вроде ругали, но не вполне понятно, за что.

Впрочем, самые традиционные сферы - это backend в том числе крупных проектов: Инстаграм, Пинтерест, Нетфликс, Дропбокс, Реддит и т.д., плюс у многих есть отдельные системы на Python даже если сайт на каком-нибудь позорном .NET и те, где Python используется как "штука, на которой можно быстро набросать ПО для связки": BD, ML, QA и т.п.

Впрочем, есть немало компонентов и крутых систем, написанных на чистом Python, например... нашёл занятный список: https://proglib.io/p/great-python-projects
У больших контор ещё всегда есть огромный зоопарк бэк-сервисов (типа "а вот эта хуйня у нас поднимает и настраивает виртуалки, а вон та - следит за актуальностью пользователей и интегрирует 1С:Кадры или как её там? А, похуй! с AD, а вот это наш IdM, тут рулятся права") и они очень часто пишутся на Python потому что просто, быстро и надёжно.

Я лично на нём пишу пэт-проекты для web (в том числе API) и CLI с перспективой в Desktop а, если повезёт, то и в iOS.
21 2214182
Аноны, подскажите, что делает array[1:]?
22 2214186
>>14182
Выводит срез массива без первого элемента.
Подробнее:
https://pythonworld.ru/osnovy/indeksy-i-srezy.html
23 2214187
>>14186
Вернее не "выводит", а "возвращает".
24 2214188
>>14186
Спасибо
25 2214254
>>14165

>пишу пэт-проекты для web


Для этого надо жс знать все равно же?
26 2214257
Анон, здравствуй. Есть задача на степике: "На вход программе подается два натуральных числа a и b (a < b). Напишите программу, которая находит все простые числа от a до b включительно.
Формат входных данных
На вход программе подаются два числа, каждое на отдельной строке.
Формат выходных данных
Программа должна вывести все простые числа от a до b включительно, каждое на отдельной строке."

Объясни, почему работает код на первой картинке, но не работает код на второй картинке(выводит единицу).
27 2214258
>>14257
Потому что это разный код
28 2214261
>>14258
Не сильно он и разный, проверка i !=1 есть в обоих случаях, только в разных циклах.
изображение.png230 Кб, 500x500
29 2214263
>>14261
Дядь, ты думаешь что если одинаковые слова напишешь, но в разных местах - будет один результат?
30 2214273
>>14257
Потому что count остается 0, а он меньше 3.
31 2214274
>>14263
Смотри, во втором случае проверка i != 1 не должна увеличивать переменную count, следовательно, не должно выдавать 1. Почему выдает тогда? Ну а в первом вроде понятно, проверка идет уже перед печатью, следовательно если i = 1, то i не будет выводиться.

Ты можешь популярно объяснить? Я что-то не так понял?
16297264701303.mp44,5 Мб, mp4,
622x640, 0:23
32 2214276
>>14273
Блин, и правда. Спасибо тебе!
33 2214279
>>14274
Да не, ты прав. Интерпретатор тупой, заливает говно тебе в клавиатуру.
Серьезно, дебагай хоть, а не лети по первой ошибке на двач
34 2214440
>>14140

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


ORM нужны не для упрощения разработки, а для упрощения поддержки. Это промежуточный слой между твоими моделями и таблицами в БД. Благодаря этому у тебя есть возможность что-то дорабатывать в моделях, менять, и всё достаточно прозрачно, без необходимости помнить о всех запросах к БД, которые где-то в коде могут быть.

>А ещё, пока писал, подумал -- если мне модели никуда не упираются, то, может, проще Flask взять?


Тогда лучше смотреть на асинхронные решения вроде aiohttp или FastAPI. С последним не работал. Асинхронность как раз на таких задачах очень хорошо работает. И это то, с чем проблема у синхронной джанги.
35 2214444
На чем щас пишут асинк говно? Слышал в джанге 3 че то хотели добавить, но не щупал. Она актуальна еще?
36 2214592
>>14444
фастапи.
В джанге технически теперь есть асинхронность, но судя по коду юзают ее не то чтобы часто, да и в целом на таком старом комбайне это больше похоже на приколоченный сбоку костыль.
Screenshot 2021-11-17 at 11.37.45.png122 Кб, 870x1346
37 2214626
Не могу разобраться с блядским тайп хинтингом. Вот смотри, анон, есть у меня родительский класс Base и два наследника Foo и Bar. И в некотором классе Application я хочу аттрибут с инстансом либо Foo() либо Bar(). Как мне указать тип этого аттрибута, чтобы пайчарм и mypy не ебали мозг ворнингами, что ожидается тип Base, а я ему пихаю Foo и т.п.

https://pastebin.com/g9ieQ10U
38 2214639
>>14626
А, стопэ. Заменил Type[Base] на Union[Foo, Bar] и ворнинги пропали. Хотя вчера еще это не срабатывало почему-то.
39 2214647
>>14639
Есть еще TypeVar
40 2214652
>>14647
TypeVar я пробовал - он заткнул пайчарм, но все еще не нравился mypy. Но я хз, может, я его как-то неправильно оформил.
41 2214657
>>14639
Union всегда робил
В недавних версиях пистона еще добавили человеческую запись типов через разделитель |
42 2214666
>>14657
Все равно было бы неплохо разобраться, чем заменить Union на случай, если вариантов наследников будет становиться со временем больше. Хотелось бы как-то раз и навсегда обозначить, что в этом аттрибуте могут быть любые наследники Base.
image.png11 Кб, 423x145
43 2214669
>>14666

>могут быть любые наследники Base


bruh...
44 2214682
>>14669
А, я понял. Вчерашний пердолинг с этой хуйней был вызван тем, что я пытался в аттрибут запихнуть не инстанс, а класс Foo или Bar, чтобы позже дернуть self.foo_or_bar() Если не выебываться, то простые хинтинги работают, как ожидается.
45 2214704
>>14254

> Для этого надо жс знать все равно же?


So-so.
Чтобы натыкать в нужные места страницы bootstrap'овские стили и скрипты прямо ЗНАТЬ не надо, достаточно базового HTML и примеров из интернетов.
Впрочем, я выкручиваюсь ещё проще: я сам делаю рабочую, полнофункциональную заготовку, а потом обращаюсь либо по приятелям из сети, либо на фрилансовых ресурсах, чтобы они мне за копеечку малую красиво всё обернули: говорю "видишь это работающее дерьмо? Сделай фронт красивым, вот тебе мои шаблоны на Jinja2, держи, там есть все вызовы."
Я так-то и CSS не знаю и даже, стыдно признаться, с вёрсткой div'ами не до конца освоился. Я отличаю "хорошо" от "плохо", но сделать по красоте не получается потому, что не знаю, "что именно нужно сделать, чтобы было хорошо", так что пусть это сделают за меня. Главное, что я решил для себя -- не жадничать и в первый раз, особенно новому человеку, можно заказать просто сделать "по красоте" на его вкус, но потом за каждую конкретную доработку (там, где его вкус дал маху) не сраться, а отдельно доплачивать.
46 2214712
>>14592
странно, на джанге куча вакансий на хх, а на фастапи/фласке не так уж и много
47 2214730
>>14712
Фласк умер практически, на асинхронный фреймворках работы не так уж много, но достаточно
48 2214749
ЖЗсники ЛОХИ!
гейймастер 49 2214760
Я написал скрипт для рефраша апи хайпикселя https://api.hypixel.net/skyblock/auctions
Заставил его в общем то выписывать акции и цены но возникла проблемка в том что сайт не дает скрипту работать если он работает больше нескольких часов и у меня вопрос как это обойти? Насколько я понимаю мне надо вставить туда прокси а как это сделать ибо мне нужно все еще хорошее интернет соединение для того что-б у скрипта был смысл работы и возник вопрос а как в скрипт прокси пришить? В txt формате любые
изображение.png131 Кб, 1366x728
гейймастер 50 2214764
Забыл скриншот добавить
51 2214776
>>14760
на апи через requests ходишь? ему параметром можно прокси передать
алсо хедер меняешь в запросе? там вроде по дефолту чето типа python-request было, мб из за этого мозги ебет
52 2214777
>>14712
Ну офк спрос на джангу больше, фул асинхронщина реже требуется (хотя честно говоря там все оч просто и можно дохера чего быстро накидывать не хуже, ем в джанге, любители перегруженных монстрофреймов заебали).
53 2214783
>>14777

>любители перегруженных монстрофреймов


сеймыч, на джанге только какие нибудь интернет магазины и бложики клепать, как люди в одной вакансии употребляют "микросервисная архитектура" и "джанга" я просто хуй знает, там такой ебаный монстр делается после startproject, что я просто хуй знает почему его до сих пор все юзают
ну удобный там DRF, и хули? сейчас не 2015 год, есть сваггеры-хуягеры и рест строится как два пальца
54 2214787
>>14776
Да, спасибо нашел как сделать только когда прокси умрут надо будет новые записывать
55 2214789
>>14787
можешь написать отдельный скрипт, который будет проверять живы ли прокси, и если их слишком мало живых осталось идти на какой нибудь сайт где они лежать и парсить еще пачку оттуда
56 2214926
Можно ли в стандартном логгере сделать уровни "независимыми" друг от друга? Чтобы вместо установки уровня "дебаг" и получения всего, что выше, я мог отдельно включить логгирование, скажем, обращений к базе, отдельно логгирование каких-то расчётов и т.д.? А то запихивая всё в один debug, куча лишнего когда хочется проверить лишь одну функцию, которая вполне себе независима. Грубо говоря, чтобы была проверка не на log_level >= logger.level, а log_level in logger.enabled_levels?
Если нет, есть ли какой другой общепризнанный модуль, где это реализовано?
16234964643230.png387 Кб, 1500x1404
57 2214948
Сап двач. Решил сделать пет-проект с целью изучения Джанго. Взял готовую учебную базу Northwind с сайта мелкомягких(в ней есть такие сущности как товары, клиенты, поставщики, сотрудники - классика), сделал несколько соответствующих приложений с крудами, валидацией формочек, моделей, админку делаю. Посоветуйте, пожалуйста, каких ещё можно фич реализовать? Думаю поиграть с созданием отчётов или с REST API - никогда с этим не работал, как и файлами формата json. Т.к. нет реального опыта, не знаю, что ещё можно тут придумать.
58 2214955
>>14783

>как люди в одной вакансии употребляют "микросервисная архитектура" и "джанга" я просто хуй знает


Это от непонимания. Тобой. Что значит "микросервис". Микросервис не обязательно маленький и юркий, он может быть сколь угодно монструозным. НО! Он должен решать (и решать хорошо) одну конкретную задачу. Тогда проект, разделённый на массу микросервисов, будет иметь преимущества при разработке, масштабировании до всяких HighLoad и т.п.
Например, ты пишешь тот же магазин, но выделяешь сервисы авторизации отдельно, оплаты отдельно, взаимодействия с базой склада - отдельно. И каждый из них может быть хоть на джанге (если в этом есть какой-то смысл), хоть на хаскеле, хоть на Асме. В какой-то момент начинаются проблемы, затыкается и тормозит сервис оплаты, ты берёшь и увеличиваешь scale для payment-подов в ReplicaSets и всё.
Иногда это дешевле (и всегда - быстрее), чем оптимизировать код.

Тут надо оговориться, что джангу можно засунуть в микросервис. С одной стороны. А с другой там архитектурно создаётся проект, а внутри проекта - приложения, которые по большому счёту и должны быть микросервисами. То есть архитектурно джанга плохо адаптирована для микросервисов, хотя это и не делает такую разработку невозможной.
59 2214973
>>14948
Сделай что-нибудь полезное:
>>2185476 (OP)
60 2215022
Микросервисы на питоне это что? Типа блюпринты, что роутинги потом подключаешь или все же что-то отдельно?
61 2215035
>>15022
Маленький программный компонент выполяющий только определенные задачи.
62 2215043
>>14440

>ORM нужны не для упрощения разработки, а для упрощения поддержки...


В целом понятно. Если мне в каком-то запросе нужны будут данные, не предусмотренные вьюшкой, то мне придётся править и представление и приложение, а в случае со штатными инструментами -- можно обойтись только приложением...
Я подумаю ещё раз, но пока склоняюсь к SQL.

> Тогда лучше смотреть на асинхронные решения вроде aiohttp или FastAPI.


Посмотрел. Первое и мельком. Но если с Джангой я понял, как получить сайт за пару часов (а полный проект на видосах был часов на 14) и все инструкции были последовательны, с Фласком до Jinja дошло ещё быстрее, минут за 30 (правда, без баз, настроек, админки и прочего), а вот для aiohttp всё начинается откуда-то с середины и сразу городится неслабый огород из несвязанных файлов с непонятным кодом. Возможно, все авторы манов, которые мне попались исходят из того, что вкатыш уже съел целую овчарню в веб-кодинге и асинхронщине, но у меня кейс другой. Пойду, покурю второе.

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

Как вариант -- напишу API на Flask для начала, а там -- буду думать и, может, даже перепишу. На то оно и пэт.
63 2215072
>>15022

> Микросервисы на питоне это что?


То же, что и на C++, Rust или чём угодно ещё:
небольшая часть системы, решающая конкретные задачи. При этом микросервисная архитектура подразумевает, что вся система должна состоять из таких небольших кусочков, общающихся друг-с-другом по оговорённому API.

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

Для больших, огромных и гигантских проектов такое разделение решает уйму вопросов:
1. Упрощает разработку и поддержку (небольшие куски проще реализовать);
2. Упрощает тестирование (если у тебя есть конкретный кусок кода, отвечающий, за конкретный функцонал, то тебе нужно просто убедиться, что он правильно отвечает на правильные вопросы (и выдаёт понятные системе ошибки если вопросы некорректны) и для этого достаточно гонять его API, а не всю систему и каждое место, откуда может быть такое обращение)
3. Упрощает масштабирование, как описано выше: >>14955

>ты берёшь и увеличиваешь scale для payment-подов в ReplicaSets и всё.



А ещё это модно, поэтому даже крохотные, маленькие и средние проекты теперь стараются делать по микросервисной архитектуре. Хотя под с двумя страничками и рядом HA-кластер DB смтрятся довольно смешно.
64 2215109
Пацаны, лучше использовать аиснхронную либу редиса (aioredis) или синхронную (redis-py)?
65 2215111
>>14783
Работаю в Сбере. Пишу на Джанге (и на фастапи). Хз о чем ты
66 2215130
>>14712
Фастапи это свежо, модно и молодёжно, а на джанге куча легасиговна.
67 2215135
>>15109
Если тебе нужна асинхронность, то юзай асинхронную, а если синхронность, то синхронную, я щитаю.
68 2215138
>>15109
Если у тебя асинхронщина, то асинхронную, если нет, то нет. Что за вопрос вообще?
69 2215166
Говорят на питоне не пишут игры, я сейчас посмотрел, симс 4 изрядно так на питоне написан. Пиздеж получается?
70 2215172
>>15166
Графоний не пишут, а какую-то внутреннюю логику можно, хули нет?
Но он несколько тяжеловесен для этого, обычно берут какие-то луа или подобные залупки.
71 2215179
>>15166
Иногда делают на нем скриптовый движок для квестов, поведения персонажей и подобного
72 2215231
>>15166
Смотря что понимать под играми. Графику? Ее врядли пишут, тут только низкоуровневая хрень, только хардкор. Логику клиента? Можно, если она не слишком тяжелая. Логику веб-серверов? Да пожалуйста. Для этой цели вообще любой язык подойдет. И да, это тоже игра. У меня бек в игре по объему в 6 раз больше клиента, потому что вся логика по сути там происходит, а клиент только ее пользует.
анимация в pyqt 73 2215242
Как сделать такую же анимацию руки с мышью как в bongo cat cam. Если кто знает подскажите хотяб название этого эффекта или анимаций
анимация в pyqt 74 2215243
Как сделать такую же анимацию руки с мышью как в bongo cat cam. Если кто знает подскажите хотяб название этого эффекта или анимаций
75 2215568
>>14926
Ты, как минимум, можешь роутить логи в разные файлы в зависимости от того, в каком модуле триггернулся лог.
image.png7 Кб, 910x91
76 2215571
Анон, а как сюда прикрутить редис, чтобы получилась типа асинхронность?
Знаю что можно через целери, но в тз обязательное условие - редис
77 2215574
Сап, котики, как добавить новое поле в класс декоратором, при этом не затирая init?

def decorator_function(fuckin_class):
78 2215579
>>15574
Хуйню спросил. Переформулирую.

Хочется чего-то вроде fuckinclass.double=fuckinclass*2

Тип если у нас было
@decorator_function
class C(int):
---pass
и С(8)
То получить
obj.double=16

Но правая часть вначале точно так не работает
80 2215594
>>15072
А как это в практическом смысле выглядит? Типа папка для авторизации, где свой какой-то докерфайл с подниманием сервера и aiohttp, далее там папка оплаты какая-то и опять aiohttp какой-то, который выдаёт свои странички... и оно всё как между собой потом общается типа подписи какие-то цифровые между сервисами или типа просто потому что в одной сети находится и...? И потом типа все это собирается в докер композ или чем-то сложнее.

Или как это? Что-то не особо представил себе.
81 2215601
>>15593
Спасибо, надеюсь до утра поживет
82 2215603
>>15568
У меня нет никаких файлов с логами, и нет никаких модулей. Есть лишь один среднего размера скрипт, в котором иногда что-то надо отследить (при обновлениях ошибки в результатах появляются, скажем). Выбор между фильтрацией кучи лишнего говна и ручным проставленим безусловных принтов в тех местах, где нужны подробные данные (вплоть до значений в каждом цикле и т.д.). А хотелось бы просто активировать нужный тип логов и получить только то, что надо.
Я просто даже не знаю, как искать, ничего толкового не гуглится, кроме примитивной работы с logging модулем. Даже аналоги не упоминаются, будто их нет.

>>15574
>>15579
Ты херню какую-то творишь, по-моему, но можно вот так — https://ideone.com/f5fjdU
83 2215606
>>15603

>где нужны подробные данные


В смысле, там, где они нужны прямо сейчас, с последующим удаленим после отладки. Разумеется, вариант не очень удобный.
84 2215611
>>15603
У меня в принципе другое задание, но чтоб не копипастить код, вырезал конкретный кусок и упростил до той постановки что скинул. Самому же буит милее если адаптирую и пойму
85 2215628
>>13582
Только сейчас заметил твой ответ. Спасибо.
Проверил. Везде MainThread. Возможно, после каждой загрузки файла весь интерфейс виснет на пару секунд по каким-то не зависящим от меня причинам.
86 2215629
>>13693
Видел на ютубе одно видео, не знаю, как называется, но очень хорошее видео, пойди, посмотри, ну поищешь там сам, найдёшь, там ещё парень такой в пиджаке что-то рассказывает.
мимо
87 2215632
>>13749
Я их приделал куда только можно, но оказывается, что колбэки этих FIleLoader вызываются в MainThread. По крайней мере теперь я это знаю.
88 2215633
>>15629
Этот плейлист гуглится по запросу "асинхронность python" прямо на первой же странице одной из первых строчек. Не ебу, как он умудрился его пропустить, если так загорелся желанием понять кишки асинхронности.
Петухон не работает.PNG21 Кб, 1137x167
89 2215635
Как установить сраный mathplotlib?

Скачал питон 3.10
Запустил python -m pip install -U matplotlib
Запустил pip list (mathplotlib там есть)

Набираю python -> import mathplotlib, а там пик
90 2215637
>>15635
matplotlib баран
00a9444d44006e4db300ed3c787186cf.jpg45 Кб, 604x463
91 2215638
>>15637
Точно.
Ну я и тупица.
92 2215705
Простой вопрос, есть строки в python
str = '☽ Луна'
print(str)
в результате что-то не то с кодировкой и на выходе вместо символа луны прямоугольник, сам код в кодировке utf-8
93 2215709
>>15705
У тебя в терминале не так кодировка.
94 2215720
>>15705
На шинде небось?
95 2215721
>>15709
точно, одну попробовал вышло не совсем то что нужно, но хотя бы уже что-то, теперь осталось подобрать число кодовой страницы
image.png2 Кб, 138x48
96 2215723
>>15720
да, chcp 936 немного подходит но теперь пробелы между символами
97 2215780
>>15571
В твоем т.з ни слова про редис и асинхронность. И вообще эти две вещи не связаны.
98 2215781
Харэ это говно учить
99 2215788
>>15780
Там в компоузе поднимается контейнер с редисом.
Думаю, это намек на Celery, оно же через редис работает. Ну чтобы остальные не ждали пока поток занят обработкой одной картинки
100 2215809
>>15633
Так а откуда ж ему знать, что первый результат — это именно то, что имели в виду, если никаких конкретных опозновательных знаков не дали ("не очень популярный чел" это хуйня)?
Если так просто ищется, мог бы и скинуть ссылку сразу, если уж влез "помогать".
101 2215906
>>13498 (OP)
Можно ли экранировать перенос в f строке?
Например:
f'''431414141441
4525515'''
И чтоб в одну строку все было после этого.
нет.PNG5 Кб, 312x132
102 2215915
>>15906
нет да или нет?
103 2215930
>>15915
А почему не экранирует если написать так: f'оп хуй\\nили нет',
при переносе же также \n добавляется которую слеш экранирует.
104 2215939
>>15930
Точнее экранирует, переноса не происходит, но остается \n в строке.
105 2216043
У меня есть класс
class A:
....def __init__(self, args, *kwargs):
........self.some_var = some_child_class()

Так вот, когда я делаю
a = A()
a.some_var.xxx = 1

Как мне отловить изменение атрибута some_child_class внутри класса A? Нужно именно в A, т.к. дальнейшие манипуляции будут именно в нем

Типа
def __setattr__(self, name, value):
....#Что тут сделать внутри класса A?
106 2216049
>>16043
Ну да, лови через этот метод. Хуль тебе надо-то?
107 2216050
>>15930
>>15939
таблетки, дед
108 2216059
>>16049
И как блядь?
if name == 'some_var':
Не сработает.
109 2216062
>>16050
Человек и кошка плачут у окошка
Серый дождик каплет прямо на стекло
К человеку с кошкой едет неотложка
Человеку бедному мозг больной свело

Доктор едет-едет сквозь снежную равнину
Порошок целебный людям он везет
Человек и кошка порошок тот примут
И печаль отступит и тоска пройдет
110 2216065
>>15788
Ну збс. У тебя там еще и докер.
Но само наличие редиса нихуя не говорит о асинхронности. И даже не требует наличия селери. Это разные вещи вообще.
В т.з. ни слова про асинхронность. Джанга в проде умеет в несколько воркеров, так что ждать никому не придется. если ты только не запустишь туда 50 одновременных загрузок гигабайтных картинок.

Узнай что конкретно нужно и уже тогда спрашивай. Если будешь делать то, что тебе кажется, можешь сделать хуйню.
111 2216075
>>16059
property.setter
112 2216076
>>15594

>Или как это? Что-то не особо представил себе.


Можно папка, можно целый сервак, можно что угодно.
Вот, допустим, у тебя есть сервис авторизации и управления доступом, с неким API, пользователь открывает страницу/карточку в системе/ещё какую-нибудь хурму, большой сервис берёт и по API спрашивает "SIDSession ID, PathЧто пытаются открыть: можно?" и получает "да"/"нет"/"пусть сначала авторизуется".
Если получил "да", то открывает запрошенный ресурс, если "нет" -- выдаёт access deny, если третий -- открывает окошко логина.
Так вот, для внешней системы не интересно, как внутри сервиса авторизации устроено назначение и разграничение доступов, проверка пароля и прочее, оно знает только как спросить за доступ и как реагировать на ответы.
Если сервис авторизации и контроля доступа кроме этого ничего не делает, то это микросервис вне зависимости от того, насколько он большой.
И ещё раз, неважно, есть ли там папочки, Docker (который вообще говоря хоть и позволяет удобно работать с микросервиами не заточен именно на них), Swarm/Kubernetes или ещё что, хотя они дают свои плюшки (про них я отдельно кое-что могу рассказать, конечно, но сейчас не важно).

С другой стороны -- монолит. В монолите нет выделенного сервиса, авторизацией занимается совокупность методов, находящихся в основном коде системы.

Итак, о профитах:

> Упрощает разработку и поддержку


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

> Упрощает тестирование


Ты запустил этот сервис в тестовом контуре с тестовой БД и шлёшь ему по API разные запросы и слушаешь всякие ответы. Это легче, чем взять целиком сайт или программу и тыкать в разные её куски, чтобы понять, не сбойнёт ли где контроль доступа.

> Упрощает масштабирование


Пусть даже без кубера. Система контроля доступа изолирована и может быть запущена отдельно от остальной системы, а значит, если ей не хватает ресурсов можно поднять 2, 3,...100 инстансов и настроить балансировщик (DNS Round-robin, NGINX или аппаратный балансер, HA-Proxy, ReplicaSets -- не важно, главное, чтобы Ops это умел).

О недостатках:
1. Накладные расходы ВЫШЕ. Передать значения в свою же функцию проще и быстрее, чем обернуть их в запрос, передать, дождаться ответа, распарсить этот ответ...
2. Повышается общая сложность проекта. Иметь разрозненные куски и поддерживать связи между ними, вовремя актуализировать API в случае изменений... В общем, возни уйма.

Реально профиты от микросервисов превышают недостатки только в больших и выше проектах, они прекрасно живут в огромных, иногда приживаются в крупных, в гигантских это просто единственный пристойный путь потому что там внутренних связей OVER ДОХУЯ.
В мелких же, небольших и даже средних проектах (вплоть до интернет-магазина со средней нагрузкой, примерно) лучше не заморачиваться. Но это не значит, что нужно класть хуй на HA-DB, CDN, DDoS-Protection и прочее.
112 2216076
>>15594

>Или как это? Что-то не особо представил себе.


Можно папка, можно целый сервак, можно что угодно.
Вот, допустим, у тебя есть сервис авторизации и управления доступом, с неким API, пользователь открывает страницу/карточку в системе/ещё какую-нибудь хурму, большой сервис берёт и по API спрашивает "SIDSession ID, PathЧто пытаются открыть: можно?" и получает "да"/"нет"/"пусть сначала авторизуется".
Если получил "да", то открывает запрошенный ресурс, если "нет" -- выдаёт access deny, если третий -- открывает окошко логина.
Так вот, для внешней системы не интересно, как внутри сервиса авторизации устроено назначение и разграничение доступов, проверка пароля и прочее, оно знает только как спросить за доступ и как реагировать на ответы.
Если сервис авторизации и контроля доступа кроме этого ничего не делает, то это микросервис вне зависимости от того, насколько он большой.
И ещё раз, неважно, есть ли там папочки, Docker (который вообще говоря хоть и позволяет удобно работать с микросервиами не заточен именно на них), Swarm/Kubernetes или ещё что, хотя они дают свои плюшки (про них я отдельно кое-что могу рассказать, конечно, но сейчас не важно).

С другой стороны -- монолит. В монолите нет выделенного сервиса, авторизацией занимается совокупность методов, находящихся в основном коде системы.

Итак, о профитах:

> Упрощает разработку и поддержку


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

> Упрощает тестирование


Ты запустил этот сервис в тестовом контуре с тестовой БД и шлёшь ему по API разные запросы и слушаешь всякие ответы. Это легче, чем взять целиком сайт или программу и тыкать в разные её куски, чтобы понять, не сбойнёт ли где контроль доступа.

> Упрощает масштабирование


Пусть даже без кубера. Система контроля доступа изолирована и может быть запущена отдельно от остальной системы, а значит, если ей не хватает ресурсов можно поднять 2, 3,...100 инстансов и настроить балансировщик (DNS Round-robin, NGINX или аппаратный балансер, HA-Proxy, ReplicaSets -- не важно, главное, чтобы Ops это умел).

О недостатках:
1. Накладные расходы ВЫШЕ. Передать значения в свою же функцию проще и быстрее, чем обернуть их в запрос, передать, дождаться ответа, распарсить этот ответ...
2. Повышается общая сложность проекта. Иметь разрозненные куски и поддерживать связи между ними, вовремя актуализировать API в случае изменений... В общем, возни уйма.

Реально профиты от микросервисов превышают недостатки только в больших и выше проектах, они прекрасно живут в огромных, иногда приживаются в крупных, в гигантских это просто единственный пристойный путь потому что там внутренних связей OVER ДОХУЯ.
В мелких же, небольших и даже средних проектах (вплоть до интернет-магазина со средней нагрузкой, примерно) лучше не заморачиваться. Но это не значит, что нужно класть хуй на HA-DB, CDN, DDoS-Protection и прочее.
113 2216129
>>16075
x.y.z = 1
Так сеттер не отработает же.
Отработает геттер. Мы получим y
У меня не x.y = q же
114 2216157
В чем проблема просто спиздить libuv с NodeJS и вставить его в Пистон для асинхронности?
115 2216162
>>16157
Потому что уже спиздили и встроили.
116 2216163
>>16162
Пиздишь?
117 2216165
>>16163
Ты вкатун зеленый?
118 2216178
>>16165
Я уважаемый разработчик на фрилансе. В данный момент пишу из Мельбурна. Сейчас допью бутылочку Dow's, "Quinta Senhora da Ribeira" и пойду спать
119 2216180
>>16178
Нет ты вкатун зеленый который никогда на asyncio не писал.
120 2216183
>>16157
uvloop
121 2216185
>>16180
Нет ты
122 2216243
>>13498 (OP)
Я пишу класс который при инициализации объекта шуршит по ФС считывает файлы и делает всяческие проверки внешнего мира. Соответственно я не могу гарантировать что все эти проверки закончатся корректно.
Есть какой-нибудь механизм который скажет, что объект не инициализировался? Типа вместо объекта взять и вернуть None. Если сделать return None в __init__() - не работает. В голову приходит добавить свойство .status, в который писать статус, но имхо это костыли.
123 2216248
>>16243
Механизм "raise Exception"
124 2216262
Как в unittest в setUp замокать вызов? Мне надо привести объект в нужное состояние, а он вызывает внешние методы, которые шлют запросы.
125 2216279
>>16262
Хотел patch() над классом повесить, но тогда не работает. А в setUp патчить перед вызовом - выглядит так себе
126 2216289
Двач, есть примеры как внутри функции делать методы?

@anime
def f(x): return '@'

a=f.anime()

Из идей было делать декоратором из функции класс, но как то хз.
127 2216373
>>16248
Годится, спасибо.
128 2216410
>>16289
Просто берешь и делаешь.
Или ты не пробывал, а сразу спрашвиать пришел?
129 2216433
>>16410
Если внутри функции определить функцию декоратором, то она не вызывается снаружи, что вполне очевидно. f has no attribute anime
Python.jpg17 Кб, 400x300
130 2216490
Привет. Несколько лет назад я учился в университете (онлайн), но не доучился. Я изучал полный стек, java и C ++. Сейчас я начал 7-месячный курс Python. Раз в неделю будет домашнее задание. Я учился много лет назад и все забросил. Не могли бы вы, добрые люди, помочь мне с домашним заданием раз в неделю?

(Я из Литвы, извините за грамматику)
131 2216522
>>16490
Что ты имеешь в виду? Чтоб за тебя домашку всю делали? Тут дураков нет. Если какие-то конкретные вопросы будут, задавай, добрые люди ответят, так и быть.
132 2216546
>>16410
Блять, оказывается такой метод работает

я просто долбоёб, простите
133 2216548
>>16433
Зачем обманываешь? https://ideone.com/dAZTvJ
134 2216552
>>16548
Блять, цыганская магия.

Мимо сделал
class anime:
...
___def anime(self):
135 2216555
>>16548
Понел что во всех попытках я проебывал четвёртую строку, reeew
307af4f25c302bcf26ce35cc20ddb340.mp421,5 Мб, mp4,
576x1024, 3:02
136 2216609
>>13498 (OP)
Сколько лет надо учить питон чтобы стать таким же умным?
307af4f25c302bcf26ce35cc20ddb340.mp421,5 Мб, mp4,
576x1024, 3:02
137 2216611
>>13498 (OP)
Сколько лет надо учить питон чтобы стать таким же умным?
138 2216612
>>16157
Уже вставили, uvloop называется
139 2216632
>>16611
Ничего особо сложного там нет, а смотря на остальной детско-тиктокерской понос у него в аккаунте, он и это где-то подрезал и собрал по кускам для видяшки.
140 2216678
Посоветуйте книгу по основам ETL
141 2216691
>>16678
ETL это только практика. Базовая хуйня есть, но до нее и самому дойти пять сек.
142 2216693
>>16691
а где можно набрать задачек для практики?
143 2216696
>>16693
Где есть коммерческая ценность. Всякие рилетерские штуки, маркетплейсы, каталоги с контактами, соцсети.
Там заодно есть защита от дурака, так что можно попрактиковаться с асинронщиной, очередями, распределенностью, анонимизацией и прочими актуальными ништяками.
python.jpg6 Кб, 292x154
144 2216714
Почему так?
145 2216715
>>16714
Блять забудьте, вы этого не видели!!!
Ну за шо, почему я вижу косяки только когда уже сообщю кому-либо о проблеме. Походу пора поспать
index.png3 Кб, 353x143
146 2216879
Через пару дней нужно провести собеседование для соискателя на позицию Python-разраба с уклоном в Pandas.
Антош, какие бы ты вопросы задал по Pandas для уровня junior+ ?
147 2216885
Джанго при тестах отправляет почту в каком-то особом режиме? Когда посылаю запросы с локала всё отправляется, когда запускаю тест, тоже пишет, что всё отправляется, но на почту уже нихуя не приходит.
148 2216888
Если вызывать sys.stdout.write(msg) то моя msg вбрасывается в стандартный вывод без всякого форматирования, в то время как print(msg) печатает сообщение с новой строки

Конечно была идея писать:
msg = '\n' + msg + '\n'

Сообщение в конце и в начале получает перевод строки, но если выводить несколько таких подряд, то получаются двойные переводы строк, а в print такого нет. Как фиксить блэт?
149 2216890
>>16879

>junior


Как отрыть csv, excel
Чем отличается loc от iloc
как сделать сводную таблицу
сортировка
использование pd.merge

>+


Подключение к sql
Что такое groupby
перевод столбца во временные ряды, как извлечь кол-во дней из даты
использование pd.concat
создание мультииндекса
использование pd.cut, отличие от pd.qcut
как создать именование агрирование по groupby
150 2216893
>>16890
Спасибо, ты очень помог!
151 2216900
>>16879

>Какие


1. Ты пидорас или педофил?
2. Кто по жизни?
3. Есть 2 ветки: одна базу корраптит, другая секретные ключи сливает, какую в мастер зальешь, какую в прод соберешь?
4. https://github.com/rougier/numpy-100/blob/master/100_Numpy_exercises_with_hints_with_solutions.md (numpy)
152 2216904
>>16900
pandas != numpy
153 2216908
>>16904
Это да. Но работать с pandas и не уметь работать с numpy - уебанство
154 2216915
>>16904
ну некоторые функции может оттуда пиздить, например np.where быстрее чем Series.where
image.png151 Кб, 908x1158
155 2217008
https://ideone.com/KvunMu

Асинхронный словарь/демультиплексор. Если значения в нем нет то повисаем и ждем пока оно появится, как только появится - возвращаем. Норм тема? Какие подводные такое юзать на реальном проекте вместо постоянного опрашивания через while True и time.sleep?
156 2217012
>>17008

>Какие подводные


Какие гарантии, что появится то?
157 2217017
>>17012
Ну не появится и не появится. Что бухтеть-то? таймаут надо прикрутить для этого
158 2217040
>>16243

>Я пишу класс который при инициализации объекта шуршит по ФС считывает файлы и делает всяческие проверки внешнего мира


Проводишь эти операции отдельной функцией, и от её результата зависит, присвоится ли инстанс класса в переменную или None. Если тебе прям пиздец как нужна инкостыляция, пишешь эту функцию классовым методом.
159 2217049
>>16632

>Ничего особо сложного там нет


Для синьора типо тебя или парня с видео - бесспорно.
А для новичка или вообще человека не связаного с айти это rocket science.
160 2217052
>>16888
Очевидно же писать обёртку над sys.stdout.write(), которая у входной строки убирает все ньюлайны в начале и добавляет один в конце, если его нету.
161 2217056
>>17008
Если это словарь, то нахуя на него методы вешать? Делай уже тогда нормальный класс.
162 2217061
>>17056

>нормальный класс


Шо?
163 2217064
>>17061
Я не тот анон, но думаю он имел в виду - перегружай __getattr__ и __setattr__
164 2217146
>>17049
Знаний самого питона-то там не так много надо, в основном сторонние вещи. Из чего видео устроено, как с этим хромкастом связать, как получать изображение с камеры и как там эти данные расположены (чтобы координаты точки получать), и т.д. Ну а дальше в питоне ты складываешь и умножаешь пару чисел и готово.
165 2217161
Черт возьми, по заданию нужно было юзать wraps, написал вместо этого декоратор класса. Теперь сижу и искренне не понимаю как впихнуть wraps и не юзать классы.

https://ideone.com/SosGtq то что не работает

https://ideone.com/xy4p8H то что идеально работает, но не подойдет по условию
166 2217169
Как в кликхаусе обновить словарь? Из кода делается это или непосредственно csv меняется? У меня таблица на основе словаря из файла
image.png37 Кб, 648x465
167 2217179
>>17161

>как

168 2217188
>>17169
Так, понятно, обновлять цсв надо.
Другой вопрос как обновить гигабайтный csv имея 100 мегабайт данных?

Если бы пара строк была, я бы гиговый файл через генератор читал и все строки проверял, а та ли это строка, что мне нужна, но сотня мегабайт?
169 2217318
>>17179
нихуя, и так можно
170 2217355
Faq обновите додики, какой нахуй 2015 год
171 2217364
>>17355
А сейчас какой?
172 2217462
>>16885
Вот объясни мне. Как ты пишешь тесты не читая документации?
173 2217464
>>16888
Если тебе нужно повежение принта, то почему ты не используешь принт?
174 2217518
>>17355
А что поменялось?
изображение.png196 Кб, 624x835
175 2217637
А как в питоне принято "по-красивому" писать, когда функция может возвращать результаты нескольких разных видов, которые нужно обрабатывать по-разному?
Ну, скажем, некая функция возвращает либо кнопку, либо лошадь. И если возвращает кнопку, то кнопку надо нажать, а если лошадь, то её надо покормить. В паскале это было бы что-то вроде пикрила. Хотя не сказать, чтобы это было красиво, но пользоваться можно было.
Может быть какой-то класс есть, который содержит в себе инстанс enum и меняет свой функционал в зависимости от этого инстанса?
176 2217640
>>17637
isinstance
177 2217644
>>17640
Не подойдёт. В данном случае типы у лошади и кнопки могут совпадать. Это может быть, например, словарь в обоих случаях. Только в одном случае словарь представляет кнопку, а в другом - лошадь. Можно, конечно, возвращать помимо него отдельную переменную со значением "там в словаре лошадь". Но как-то некрасиво получается.
178 2217647
>>17644
Если ты решаешь в стиле ооп, то это будут разные классы. Если нет, то можешь в словарь добавить какой-то ключ вроде type:'horse'.
179 2217671
>>17647
Дело в том, что классы лошади и кнопки не мои. И отличить один от другого я могу только зная, откуда взят конкретный экземпляр. Поэтому их надо снабдить каким-то признаком. Вопрос в том, как это передать наружу из процедуры. Можно, например, передать как-то так: return {type:'horse',var:my_thing)
Но это как-то мерзко выглядит, как по мне.
180 2217675
>>17671
Ну есть упаковка-распаковка туплей.
return type, val

type, val = func()
123.jpg17 Кб, 744x104
181 2217781
Сап двач. Объясните плиз, почему в первом варианте input() только один раз просит у меня ввести значение, а во втором варианте два раза?
Это же по идее одно и тоже, просто заместо переменной икс, я сразу вписал функции.
182 2217793
>>17781
Потому что ты ты два раза вызываешь функцию input, очевидно же.
183 2217795
>>17793
Это да, но в первом же случае аналогичная же ситуация нет? Там же икс тоже два раза стоит, или я что-то не понимаю?
184 2217807
>>17795
Ты троллишь тупостью?
В первом случае ты один раз вызываешь input и пишешь считанное значение в переменную. Потом делай с ней что хочешь, значение лежит в памяти и все.
Во втором случае ты ничего в x не записываешь, а два раза вызываешь input, результат вызова которого ты обрабатываешь.
Контрольный вопрос - что делает оператор присваивания?
185 2217813
>>17807

> В первом случае ты один раз вызываешь input и пишешь считанное значение в переменную.


Всё понял, спс. В переменную икс заносится уже всё посчитанное и обработанное.

> Контрольный вопрос - что делает оператор присваивания?


Оператор присваивания помещает значение выражения в место, отведённое переменной.
Я не знал этого, вот только сейчас понял.
Anon 186 2218038
Аноны, помогите
https://2ch.hk/pr/res/2218036.html#2218036 (М)
187 2218056
image.png15 Кб, 868x288
188 2218205
Это норма?
189 2218245

> актуальность примерно 2015 года


А в чем прикол? Самый популярный яп же щас, а шапка плесенью покрыта. Есть смысл читать "укус питона"? Или официальной документации достаточно?
190 2218291
>>18245
Итак, рассказываю.
Питон популярен и распространен, потому что его в базовой форме легко освоить. Поэтому, изучив эту базу, любой профессионал может получить значительное увеличение своей производительности. А если ты рандомное хуйло, то изучив питон ты так и останешься хуйлом.
Есть вариант стать питон-разработчиком для серьезного бизнеса, но для этого требуется дрочить не базовый питон, а весьма углубленно, плюс дрочить никсы, с которыми он тесно связан, плюч дрочить тулчейны в виде гитов-докеров-CI и ещё кучу всего. Тут дел не на один год, а если ты вообще пришел со стороны, то шансы стремятся к нулю.
Теперь про укус питона. Это или толстый троллинг, или вот такие рандомные долбоебы всерьез верят, что туалетная брошурка на пару часов позволяет выучить питон.
Документация дает список возможностей, а не как их применить. Для этого опять же надо дрочить очень долго или прийти из другого языка, в котором ты уже научился.
191 2218380
>>18038
Из очевидного - нахуй CircleCI. Используй тревис. Или вообще встроенный CI гитхаба или что там у тебя.
192 2218439
Кто в чем UML рисует? Хочу чтобы и код генерился из диаграмм и диаграммы генерились из кода и чтобы удобно рисовать было.
193 2218445
>>14137

> выучыл я сентаксес пытона, что дальша дылац?


Дальше осваивай библиотеку, используемую в будущей работе.
194 2218454
Говорят, Питон медленнее ЖабаСкрипта. Пиздят суки?
195 2218509
>>18439

>Uml


Дед, полезай в могилу
16320489204650.png90 Кб, 320x320
196 2218537
>>18509
А чем сейчас молодежь код визуалилирует?!
197 2218552
>>18537
Молодежь любит функциональщину и алгебру. Это не очень визуализируемо inb4 категории
198 2218570
>>18537

>код визуалилирует


Пердолим микросервисы и рисуем к ним диаграммы, где максимум указано кто у кого что запрашивает
199 2218632
Подучил питон чтобы работать с данными и автоматизации своей работы.
Заставляют делать парсеры данных и автоматизацию на аирфлоу для других отделов.
Платят столько же.
Где я проебался?
200 2218637
>>18632
С новыми навыками не поменял работу.
201 2218645
>>18637
Так не берут. Резюме смотрят и не пишет никто. Кажись где-то я проебался.
202 2218682
>>18632

>Где я проебался?


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

>>18645
А ты в резюме должность сменил с момента как начал датамайнить и подвиги свои описал?
203 2218691
>>18682
Это скрепинг, а не майнинг.
204 2218987
test
205 2219045
Есть ли разница между импортом внутри функции в модуле и импортом вначале самого модуля?
206 2219047
>>19045
Во время певрого запуска функции будет медленно работать, ну и очевидно, что вне функции модуль заюзать не сможешь
207 2219312
Кто-то пробовал искать работу junior или trainee на линкедине, без опыта?
208 2219335
С Лутца стоит начинать, или уже написали лучше?
209 2219341
>>19335
Если у тебя 48 или 72 часа в сутках.
210 2219342
>>19341
Воды дохуя? Что тогда читать?]
211 2219345
>>19342
Эрик Мэтиз - Изучаем Питон, он же Питон краш курс на инглише. У них 2 редакция, у нас - 3. Курсы на Степике посмотри от Бигика, потом просто статьи, доки и видео по конкретным либам, фреймворкам и так далее.

Кодеварс и Литкод тоже подергай.
212 2219356
>>19345
Благодарю
213 2219366
>>17318
@ это просто сахар который тебе позволяет проводить операцию in-place
image.png247 Кб, 367x550
214 2219375
>>18509
два чаю
таких в коворкинге сразу смузи обливает и в чуханы переводим
image.png652 Кб, 800x533
215 2219381
>>16611
Сколько лет дрочить питон, чтоб стать таким же секси боем?
216 2219416
>>16611
Пока питонист рисуют хуи лазерной указкой, плюсовик делает рейтрейсинг трехмерного фрактала в консоли.
https://www.youtube.com/watch?v=n4zUgtDk95w
217 2219429
a = str(input())
b = str(input())

Как/можно ли это записать в одну строчку, чтобы ввод данных так же происходил с новой строки, а не в одну?
218 2219433
>>19429
a, b = input(), input()
219 2219436
>>19433
А если у меня целая куча переменных? Можно же как-то количество Input'ов до одного свести? Или мне пока не нужно думать об этом?
220 2219437
>>19436
Подумой, то ли ты делаешь
Если у тебя целая куча переменных, может логичнее было бы их читать из файла / http-запроса ?
221 2219440
>>19436
Читай из одного input-а по известному паттерну (через пробел например) а потом парси строку епт, че как маленький?
222 2219442
>>19437
>>19440
Та погодите вы, не газуйте, я питон для самых маленьких пока изучаю. Просто подумал, а что если вот так вот сделать, но нормально нагуглить не смог, вот и решил у вас спросить пока не забыл.
Но думаю лучше пока об этом не думать, похоже рано еще, буду просто дальше по урокам идти.
223 2219443
Понавставляют своих переменных в строчку, пособирают листы в строчке, потрахаются с диктами в строчку, сделают циклы в строчку, а потом сиди и пытайся понять, что за хуйню они накодили.
Вы хоть понимаете что таким образом код вообще не читабелен?
224 2219448
>>19442
Ты воспринимаешь input как всемогущий и единственный способ передать данные программе

Можешь вообще через input ничего не хуячить, обозначь входные данные в самом начале проги, если нужно будет что-то поменять - измени их и перезапусти скрипт, для тестирования пойдет
225 2219452
Данные можно передавать/получать через:

Сторонний модуль (import)
http-запрос, в том числе на localhost
Базу данных (Postgres, Mysql, MongoDB и т.п.)
Системы кеша (Redis)
Файл в файловой системе (csv, json, yaml, ini, txt ...)
226 2219455
>>19436
если ты их вводишь по ходу дела то аргс и кваргс вроде, там можно вводить до жопы
если из файла то инпут - файл
Это если я не путаю ничего, подзабыл питон пиздец
227 2219463
>>19452
аргументы при вызове же ещё
228 2219466
>>19463
Имеется ввиду передача данных в программу извне

Еще есть такая херь как multiprocessing.Pipe - позволяет связать несколько разных интерпретаторов Питона. Один скрипт работает как Producer и передает данные второму (Consumer) через Pipe
229 2219474
>>19466
Тут скорее про subprocess.Popen
230 2219507
class SomeClass:
a = "1"
b = a + 10

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


Анон, я не понимаю как это сделать вообще можно? Найти тоже ничего не могу.
231 2219513
>>19507
первая же ссылка в гугле
232 2219520
Вопрос по Django.Делаю сайт,есть базовый html шаблон страницы,и несколько шаблонов,которые его расширяют.Как мне к этим расширяющим шаблонам подключить общий файл css стилей?Он подключается в базовом шаблоне,и в остальных должен работать автоматически,или его нужно подключать в каждом html шаблоне?Или вообще нужно сделать отдельные css файлы для каждого шаблона?Фреймворк PyCharm,если что.
233 2219522
Котаны, подскажите.
Читаю csv файл. Надо отредактировать его. Файл не маленький, 1Гб примерно.
Можно в сырую читать его. Можно через csv. Но как через csv читать и писать одновременно? Т.е. отредактировать строчку какую-то. Без временных файлов. В сырую надо проверять на валидность строку, что длинна одна и та же, что разделитель не сменился. С ридером csv проще, но хз как прочитать и записать и без кучи переоткрываний файла.
234 2219524
>>19522
Чо
Редактируй в пандас и не выебывайся
235 2219525
>>19524
Блять, я не в пет проекте делаю это, чтоб такую херню нести в зависимости.
236 2219527
>>19513
Да нихуя, где? Я уже полчаса пытаюсь хоть что-то похожее найти.
237 2219528
>>19522
У тебя не получится нормально редактировать существующий файл. Просто открываешь на чтение и новый на запись, потом молотишь построчно и пишешь, в конце новый переименовываешь на старый, заменяя его.
238 2219530
>>19513
Какая нахуй ссылка? "метакласс для этого класса чтобы он заработал"?
239 2219533
>>19528
Или может прочитать файл, найти строки на редактирование. Закрыть файл и открыть на чтение, пройтись и заменить. Какие подводные? Редактировать никто файл не будет, кроме этого скрипта.
240 2219535
Такая хуйня: хочу в скрипте слушать пользовательский input и класть его результат в асинхронную очередь. Также в этом скрипте мы слушаем эту очередь через queue.get и обрабатываем данные, которые оттуда вытащим. Замутил вот это:

https://ideone.com/YjLkeV

Данные принимаются, в очередь они и правда кладутся но сука ничего не обрабатывается. Никаких ошибок - просто функция produce молчит и все
241 2219536
>>19533
А если длинна не совпадет, то чо будешь делать?
242 2219537
>>19536
А как длинна изменится, если никто не трогает?
Читать буду построчно, записывая номер строки и данные какие куда вставить.
243 2219538
Какие актуальные книжки по джанге сейчас есть? Изучал ее для первой работы во времена первой версии и сейчас снова понадобилось
244 2219539
>>19537
Если длинна замененной строчки будет больше или меньше оригинальной.
245 2219540
>>19538
К слову, раньше изучал по django by example и two scoops of django и вижу, что их заапдейтили до актульной версии, они до сих пор норм?
246 2219541
>>19539
Не может, значит кто-то влез руками.
247 2219543
>>19538
Официальная документация же книга сама в себе.
248 2219545
>>19541
Ай поебать, открою сразу два файла на чтение и запись6 потом заменю оригинал
249 2219552
>>19543
Это набор статей, а не структурированное последовательное повествование
250 2219559
Питон для лохов ил норм пацанов?
251 2219563
>>19535
Есть варик чисто на асинхронке, но это наверное не совсем то. Тут несколько воркеров сразу тащат данные из очереди, но мы блокируемся на вызове input()

https://ideone.com/ytCNtW
252 2219567
>>19545
Если никому кроме тебя и скрипта этот файл не нужен и он по сути просто является базой данных, то почему ты просто не развернешь какой-нибудь sqlite?
image.png281 Кб, 1130x392
253 2219568
Сап аноны, стал ловить ошибку "BrokenPipeError: [Errno 32] Broken pipe". Как фиксить?

coords = manager.dict()

В этот момент только один процесс взаимодействует с coords, так что не совсем понимаю, откуда появляется ошибка. Из-за чего она обычно появляется?
254 2219570
>>19563
line = await aioconsole.ainput('Is this your line? ')
255 2219575
>>19567
Этот файл - словарь для кликхауса.
256 2219577
>>19568
Код то где? Брокен пайп значит, что кто-то пытается читать из источника, который закрыл коннект
257 2219579
>>19577
У вас ПИПА СЛОМАЛАСЬ.
258 2219593
Здравствуйте, это язык для ученых с упором на математику?

s='45'
s.isnumeric()
Out[13]: True

s='45.3'
s.isnumeric()
Out[14]: False
260 2219599
>>19593
Да, а как вы узнали?
261 2219604
>>19593
Тебе что в словосочетании "ВСЕ символы обозначают цифры" непонятно?
262 2219605
>>19593
зумерки совсем уже ебанулись?
263 2219614
что такое пеп8?
264 2219622
>>19614
Стиль гайд от авторов языка.
265 2219654
Вопрос по Pillow. Есть изображение canvas_image (пик1), изображение fade (пик 2), когда я выполняю canvas_image.paste(fade, (0,0), mask=fade) на выходе получается пик3. Как видно, альфа канал странно смешался и выходит хуйня с полупрозрачным ореолом, хотя альфа в таком случае должна быть на нуле, так как прозрачные части вставляются на полностью непрозрачные. Оба изображения PNG в режиме RGBA. ЧЯДНТ?
image.png268 Кб, 1172x490
266 2219655
>>19654
Мб на пике 3 это не слишком заметно здесь, но получается вот так:
image.png283 Кб, 1681x720
267 2219666
>>19655
А должно вот так.
268 2219704
Django или дата сайнс? Куда легче вкатываться?
269 2219709
>>19704
Хорошо математику знаешь? Будешь с выпускниками матвышей конкурировать. Имхо, проще в Джанго, а еще легче в QA Automation
270 2219718
>>19538

Django 3 By Example, Django for professionals, Django for APIs
271 2219722
>>19704
Дата сайенс - огромный блок. Сейчас роли еще больше делятся. Есть майнеры, есть etl, есть инженеры, есть аналитики и есть, непосредственно уже, сатанисты.
Во что-то легче, во что-то сложнее.
На деле 60% всех задач у сатанистов - скрапинг, майнинг и валидация, затем 30% - инжинеринг и etl, затем 5% - дашборды и отчетность и только 5% - внезапно сатанизм.
272 2219724
>>19654
Вопрос снят: нужно юзать alpha_composite вместо paste в этом случае.
273 2219756
анон, помоги
суть такая:
есть массив, из него нужно удалять постоянно по одному случайному элементу, пока не останется один

x=len(B)
count3=x-1
while count>=1:
z=random.randint(0,count3)
B.pop(z)
print(B)

Написал так, но пишет что pop index out of range
Помоги, анон, пожалуйста
274 2219759
>>19756
Ты длину вне цикла высчитываешь, естественно он свалится с ошибкой
275 2219772
>>19759
добрейшей души человек, можешь мои каракули поправить? все равно родить не могу, ошибку сыпет
276 2219776
Подсобите с тестовыми заданиями по Django.
Надо побольше хороших и разных.
А то и показать нечего и на собеседование ссыкаю идти.
277 2219797
278 2219807
Мужики, посоветуйте самый просто пет проект на джанге что бы базу закрепить. Просто вроде читаю документацию но идеи как все закреплять нет. И правильно ли я понимаю что для лучшего изучения фреймворка будет самому пытаться что то мутить а не тупо копипастить готовые решения?
279 2219831
>>19807

> пет проект на джанге что бы базу закрепить


Двач.
280 2219901
Какую книгу выбрать если уже есть опыт с другими языки? Книгу, где не будут мусолить очевидные вещи
281 2219932
>>19901
bayt of python
282 2219991
>>19901
Лутца выборочно.
283 2220000
>>19559
PHP > Javascript > Python > Visual Basic > 1C
284 2220006
>>20000
У кого убежал пациент ПНД?
285 2220079
Насколько много надо нарешать задачек, прежде че приступить пилить что-то реальное, с фреймворками например, вот у меня 5 kyu на кодварс и хакерранк решал + задачки из разных книг, могу ли я теперь сосредоточиться на джанге и конкретно на самом бекенде или дальше нарешивать всякие алгоритмические задачи?
286 2220086
>>20079
чел, ты в бэке на пиздоне знания этих задачек будешь очень редко применять, лучше бы сразу джангу дрочил

мимо вкатившийся васян БЕЗ АЛГОРИТМОВ
287 2220088
>>19776
Вот что мне предлагали на джуна. ЗП на позициях 60-70к, дс
288 2220098
>>20079
Если научился решать небольшие задачки так, чтобы не получалось O(n^2) вместо O(1), то приступай к созданию чего-нибудь реального офк.
289 2220106
>>20088
Как научиться джанго до такого уровня? Если это джун, должно быть просто и быстро же? Мне по сути сильно не хватает микросервисов в своей работе, чтобы не скриптами и компилятором страдать. Развернул и люди пользуются. Что учить, что читать?
290 2220107
>>19520
У тебя из шаблонов собирается целая страница. Сделай так что бы в ней был подключен этот css

> Фреймворк PyCharm


Это не фреймворк, а ИДЭ
Иди доки читай.
291 2220108
>>20079
Все эти сайты исключительно для членодрочерства. Обычно сперва ты пишешь проекты, а уже потом идешь туда решать задачи, чтоб все охуели как ты можешь.
Если хочешь что то написать, то бери и пишы.
292 2220109
>>20086
>>20098
>>20108
Спасибо за ответы, в общем сяду писать всякие пет-проекты на джанге.
293 2220116
Вопрос простой. GDB или PDB? Пишу плагины для gedit программы, нашёл такую штуку ddd, она в режим отладки gedit переходит (при этом никаких исходников не видит, ибо их нет), но что-то я не догоняю, как из плагине на питоне там вызвать останов. Нашёл модуль gdb_utils, но ему нужен ещё модуль gdm. Где его взять? Гугл упорно предлагает pdb, как и сам питон, в котором breakpoint() стандартно делает останов для передачи управления pdb. А зачем тогда на сайте gedit предлагают его отлаживать с помощью ddd?
inb4 Да потому что он сам написан не на питоне
А как же тогда, для одной программы использовать сразу несколько отладчиков? Это вообще законно?
294 2220147
>>20106

>Как научиться джанго до такого уровня?


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

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


пока забей

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


докер
295 2220200
>>20088
Два чаю тебе, анон.
296 2220243
>>20086

>мимо вкатившийся васян БЕЗ АЛГОРИТМОВ


Ну и как оно, в твоем параше?
Мимоэлита из Сбербанка
297 2220286
Есть некая сущность my_object и обозначенный класс SomeClass. Как средствами питона проверить что объект my_object удовлетворяет интерфейсу SomeClass? Проверка через isinstance не катит, т.к. в таком случае мы напрямую проверяем, является ли объект экземпляром класса (или его потомка)
298 2220341
>>20107
Cпасибо.
299 2220344
>>20243
Меня без алгоритомов в ВТБ приняли. Банки это в целом параша
мимо
300 2220365
В чем фишка аргумента sentinel в iter?

Вот например:

for name in iter(sys.stdin.readline, ''):
301 2220373
>>20286
Можешь взглянуть на протоколы как некое подобие, только с обычным уже существующим классом не прокатит, так как он (очевидно) не заявлен как протокол — https://docs.python.org/3/library/typing.html?highlight=protocol#typing.Protocol
Для возможности проверкой в рантайме, а не всякими тайп-хинтингами через сторонний mypy, нужно его ещё в декоратор обернуть — https://docs.python.org/3/library/typing.html?highlight=protocol#typing.runtime_checkable

Лучше просто проверить, что у объекта есть нужные тебе методы напрямую, или вовсе не передавать неправильные объекты в функции, не ожидающие их.
303 2220377
>>20373
Типа вот такой код (в 3.7, который на сайте, естественно, не работает) — https://ideone.com/yFRDBh
image.png26 Кб, 500x355
304 2220379
>>20365
>>20376
Хм, а почему когда я создаю такой итератор и пытаюсь его гонять в отдельном скрипте (очевидно что sys.stdin пустой), у меня ни ошибок не вылезает, но прога не завершает, а просто бесконечно ждет?
306 2220405
>>20286
Ты заигрываешь с функциональность, которая не от языка сего. Брось это дело. лучше просто дергай метод который должен быть и падай если его все таки нет.
Как вариант можешь в классе создать некую специфическую переменную class_name = 'SomeClass' и по ней чекать.
image.png20 Кб, 873x300
307 2220408
>>20404
Блять, я чисто эмпирически тыками дошел что это надо нахучить вот так

Какого хуя интерфейс вызовов абсолютно разный в зависимости от того указываем мы sentinel или нет?? Мне никаких лямбд не надо было совать в первом случае
308 2220417
>>20408
Надо читать документацию.
309 2220437
>>20379
Ждет потому что stdin не закрыт. Зароется - вылезет StopIteration
310 2220442
Че на меня в нубо-треде наехали. Ведь в Питоне же есть и ФП и ООП, в чем я не прав?
311 2220447
>>20442
Тебе еще рано в дваче-холивары соваться - обоссут
312 2220451
>>20447
Не, мне просто интересно где меня наебали, когда в книгах или на том же Степике мне сказали, что в Питоне есть и ФП и ООП, а тут мне говорят тип "нет у вас ни хуя". Ну я могу понять, что ООП в Питоне может какой-то неполноценный, но ФП то с какого хуя нет?
313 2220456
>>20451

>а тут мне говорят тип "нет у вас ни хуя"


Ну а ты им и отвечай: "Хуй будешь?". И сразу же просекут они, у кого что есть, а у кого нет. А то ты больно мягко с ними
314 2220461
>>20456
Софт скилы они такие
315 2220465
>>20408

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


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

>object must be a callable object


>The iterator created will call object for each call o its __next__() method



https://ideone.com/yPZoUp, например.

>>20379

>чевидно что sys.stdin пустой


Потому что stdin не выдаёт пустную строку, когда он пустой, а блокирует и ждёт прихода-то чего-то. Пустую строку он, как сказал >>20437, он может выдать только если бы закрыт (как и любой другой поток, в общем случае).
316 2220478
>>20465
Только в ссылке запятая
317 2220480
У меня есть словарь и список, в котором ключи словаря. Как сделать список значений словаря, отсортированные по списку ключей?
318 2220490
>>20480
Пробегаешься по списку ключей, где для каждого i в этом списке добавляешь в новый список (список значений) значение из словаря. Ты же знаешь как обращаться к значению в словаре по ключу?
319 2220492
>>20490

>Пробегаешься по списку ключей, где для каждого i в этом списке добавляешь в новый список (список значений)


Подсказать сколько у тебя итераций будет в худшем случае? Особенно если словарь большой?
320 2220493
>>20492
Первое что в голову пришло. Так-то наверное можно и лучше сделать, если подумать.
321 2220495
>>20492
Словари на хеш-таблицах, так что O(N)
322 2220501
>>20492
Покажешь, как можно лучше/быстрее, чем один проход по списку?
323 2220502
>>20492
Покажешь, как можно лучше/быстрее, чем один проход по списку?
324 2220628
Да всё, всё, что приебались. Я чет подумал словарь пробегать и по ключам сравнивать делая список.
325 2220734
Хочу вкатиться сразу на мидла в бэкэнд. Интервью на джуна уже спокойно прохожу, но предлагают мало 80к максимум и у меня не устраивает. Есть несколько пет проджектов: имиджборда, клон инстаграмма, тикет система на вебсокетах, поэтому думаю что вполне потяну
Короче, интересует литература, которая не для нюфагов предназначена, что нибудь по проектированию реста, middleware, асинхронщину и вот это вот всё
есть че нибудь такое?
326 2220735
Так а все таки по какой книге лучше всего учить Python, по большей части ООП. Основы знаю, выбираю между 2 Томом Лутца, Саммерфилдом и Кнутом, посмотрел оглавления, у лутца мне кажется все более подробнее описано, что скажете, или какую другую книгу посоветуете?
327 2220740
>>20000
Скорее так Javascript > Python > Visual Basic > 1C > PHP
328 2220744
>>20734
Пиздец.
329 2220860
Парни, всем привет. Есть такой вопрос. Я ручная макака, хочу в автоматизацию вкатиться. Выбираю из двух стульев:
1. Выучить базово js (месяц максимум) + Cypress
2. Выучить питон базово (месяц - три) + Selenium

Хочу дальше развиваться онли в вебе. Как думаете, что выбрать? И на каком уровне вообще надо знать питон/js для автоматизации тестирования?
330 2220982
>>20860
Тебе в QA тред
331 2221053
>>20860
QA automation - это полные овощи, которым хватило мозгов для того, чтобы быть программистами, но в тоже время они не могут работать полноценными аналитиками. Это полная хуйня, за тебя пишут все основные абстракции для тестов твои соплеменники-программисты, потому что они банально больше шарят в области и могут по-быстрому запилить мини-либу для тебя, чтобы твоя производительность повысилась в разы.
Так что если тебе похуй на работу, на карьеру, смело иди в аутомейшн, если нет, то или прокачивай аналитический склад ума, изучай ту часть бизнеса, где ты планируешь работать и иди в аналитики. Или развивай аналитический склад ума, подкачивай технические навыки и иди в погроммисты.
332 2221103
>>20734
Кекнул с фантазий. Сразу страшим разработчиком тебя сделать могут, если к другу на фирму пойдешь. В других случаях именно из-за отсутствия коммерческого опыта тебя выше джуна не позовут.
333 2221130
>>20465

>Потому что stdin не выдаёт пустную строку, когда он пустой, а блокирует и ждёт прихода-то чего-то


Нихера себе, то есть получается что функция next здесь является асинхронной? Как правило если итератор не может выдавать значения он не "ждет" а просто истощается, например очередь collections.dequeu - если вытаскивать элемент из пустой очереди она не будет ничего "ждать" а сразу вернет результат (ошибку вернее), чтобы ждать надо заюзать asyncio.Queue, вот там метод get через await остановится и будет ждать поступления элементов в очередь
334 2221132

> аналитиками



ПрИвЕД фсем иЗ 2003
нАпЕшИ мну на аську а тО эТаТ фОрУм аЦтОйНыЙ нИмАгУ
335 2221145
>>15130
https://habr.com/ru/company/magnit/blog/590929/
Магнит пилил новую систему где на бэке DRF
336 2221166
Не обижайте аналитиков! Я и так обиженный.
337 2221178
>>21053
Да я мелкими шажочками иду к куаа.
Просто по жизни проебался знатно. 25 лет, а щас зп всего лишь 60к.
Хочу через полгода вкатиться в qaa и уже иметь 100к. Спустя время вырасти до 150-200 и мне вообще хватит в принципе.
Я никогда не был фанатиком разработки. Типа, знаешь, есть код, а ты его можешь упростить и усовершенствовать и получаешь от этого оргазм, типа такого - у меня этого нет.
Хоть я и учился на прогера, в вузе я нихуя не делал, да и обучение было пиздец уёбищным - никакого интереса. Сразу с плюсов начали. По началу было здорово в многопоточном программировании там заюзать по локалке 10 компов и скомпилить код быстрее, интересно было хотеть понять, как это работает и всё такое. Но потом началась хуета. Диффуры программировать заставляли, тервер (я это всё не любил лично и меня вечно тянуло в веб).
Короче блять прогать полноценно и ебать голову этим не хочу. В автоматизации можно иметь дохуя бабла и прогать по минимуму.
Я просто не могу определиться со стеком.
338 2221188
>>21130

>Нихера себе, то есть получается что функция next здесь является асинхронной?


С чего бы? Я же сказал, что блокирует. Это противоположность асинхронности.

"Ждать" это не только await, но и обычным циклом. Я это слово вообще в самом обычном смысле имел в виду, что он из функции не выйдет, пока либо данных не будет, либо не закроется. Запусти у себя вот этот код — https://ideone.com/gSglv2 и увидишь, что пока ты что-то не введёшь (и вероятно enter нажать надо будет из-за буферизации в терминале), принт не вызовется. Никакой асинхронности тут нет.

>>21178

>150-200 мне вообще хватит.


До следующего падения рубля через пару лет, если только.
339 2221217
Как "по красивому" определить пересечение интервалов?

Вот даны 2 интервала выраженные кортежами, первый элемент - начало отрезка-интервала, второй - его конец:
a = (5, 10)
b = (8, 12)

Как определить их пересечение то есть: (8, 10) ?

Просто нахуячил if-elif, работает, но смотрится "так себе"
340 2221219
>>21217
Канешн:
1. пересечения может и не быть
2. Пересекаться они могут лишь в 1 точке
341 2221222
:q all!
Учусь на заочке для корочки, в которой написано "Информатика и вычислительная техника". Есть предмет "основы дискретной математики". Ведут его, мягко говоря, не очень. Посоветуйте какие-нибудь видосики на ютубе или книги, в которых очень сжато и по существу рассказано об основах предмета. Если что, то понятия множества, кругов Эйлера и теорему Кантора я понимаю нормально.
342 2221225
>>21222

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


Ну так хуль тогда думать? Сразу на ML-спеца иди
343 2221226
>>21217
max(a[0], b[0]), min(a[1], b[1])
344 2221227
>>21226
Только потом проверку надо устроить что начало интервала не больше конца
345 2221231
>>21225
а нахуя им эти понятия знать?
346 2221391
>>21188
До следующего падения рубля через пару лет, если только.
Да, согласен с тобой. Года 3 назад думал, что 60к хорошая средняя зп... Щас по подсчётам, если съёбывать от мамки, нужно минимум 100к БЛЯТЬ СУКА Я ЕБАНЫЙ НИЩИЙ КЛОУН БЛЯТЬ!!!!!!!!!!!!!!
347 2221393
>>13498 (OP)
Почему в списке три 7 получается, хотя я вроде вставляю словарь?
https://ideone.com/lMSWkK
348 2221394
>>21391

>60к


>100к


Чел...
349 2221398
>>21394
что? я не совсем улавливаю...
350 2221438
>>21393
Я осознал.
351 2221453
>>20740
Критерий у тебя какой? По солидности языка и пригодности к большим сложным приложениям php среди них вне конкуренции.
352 2221462
>>21398
1. Зарплаты нужно писать в долларах, иначе попахивает пидорашностью.

2. Ты в разделе программирования, где хорошими считаются зарплаты иного порядка.
353 2221481
>>21462
Я понимаю, что я со своими 850 долларами (пиздец в долларах ещё меньше звучит) клоун для вас.
Но я же не могу ни с хуя потребовать 3к бачей, лол. Хочется к этому прийти, да, но не сразу же. Меня в принципе, щас зовут на ручного тестера с зп 1600 долларов, но там коллектив хуета и я отказываюсь. Через полгода сам хочу выйти уже в автоматизаторы и иметь хотя бы ~1500 долларов.
Ещё переживаю из-за возраста. Типа мне 25.5, а я в говне сижу. Проебался в доте в своё время вообще пиздец((
354 2221497
>>21481
А почему на ручника на 1600 не хочешь пойти? В любой конторе можно потом на автоматизатора перекатиться.
355 2221499
Парни, выручайте

Есть пара сотен тысяч записей в бд джанго, записанные пачками по 15 штук раз в час.
Надо все их выгрести и округлить в каждой из записей одно поле created = models.DateTimeField(auto_now=True) в меньшую сторону до ровного часа убрав минуты и секунды.
356 2221500
>>20860
Питон очевидный. Без фанатизма. На уровне автотестов глубины языка и эти ваши ООП тебе нахуй не нужны.
Пойми что такое примитивные типы данных, цикл, функция, логические ветвления ИЛИ.
Самая важная тайна: Научись грамотно оформлять дефекты, делать скриншоты и тыкать в них мордой девелоперов.

т.ме/testing_in_python читай закреп и вкатывайся
357 2221523
>>21497
Там есть пара человек, котоые мне не понравились. Они подъёбывают жестко в работе, а я такой человек, что беру всё на свой счёт(
358 2221525
>>21481

>я жа не могу не с хуя потґебовац 3к бацей, лол


Когда типа программист просит $800 - это тем более подозрительно. Найми такого, обучай, а через 3 месяца он свалит на большую зарплату. С другой стороны, если он не программист, то и даром не нужен. Зарплату нужно просить адекватно рынку. Могут предложить поменьше - вот и поторгуетесь. Алсо, тестировщик в 25 - это хороший трамплин для вката, мот и зря отказываешься.
359 2221535
>>21499
Тебе не в питона тред, а в SQL
360 2221543
>>21499
Какая БД?
361 2221550
Как редис работает с celery? Понятно если там rabbitmq какой нибудь, в канал передается сообщение с бэка и целери его обрабатывает. У редиса такой же механизм есть? Это же просто бд которая в озу хранит, не?
362 2221556
>>21499
Конвертишь в строку, делаешь слайс вырезая минуты, хуяришь туда нули. В чем проблема то?
363 2221586
>>21550
У редиса несколько более продвинутый функционал, чем k/v.
364 2221598
>>21556
Нихуя не понял, сбрось готовый код
365 2221628
>>21598
А может тебе ещё ключи от квартиры, где деньги лежат, дать?
366 2221631
>>21598
Сбросил тебе за щеку, проверяй
367 2221673
Сап двач,зеленый в треде.23 лвл
Месяц активно занимаюсь вкатом.Купил пикрил книгу и скачал обучалку.Смотрю курс по теме,прохожусь по книге и практикую.Я бы был рад и зп 100к ибо по больше интересует сам вкат и тот факт что на учебу я забил из-за отсутствия денег.
Собственно вопрос.
Не поздно ли в 23?Сам я с пк давно практикую и не только в игорах.
И правильно ли я делаю?
368 2221712
Я могу зная лишь что-то вроде шпаргалки спокойно дописывать в резюме pandas, numpy, прочее такое?
369 2221818
Митчелл Райан - Скрапинг веб-сайтов с помощью Python (2016)
из шапки норм книга? бабки у подъезда говорят там устаревшие технологии - это правда?
370 2221822
>>21818
Есть второе издание оригинальное от 2018.
В целом, это нормальная базовая книжка, но она не особо даст тебе знаний для реальных задач, там нужно практиковать и искать решения самому, никто таких материалов не делает.
371 2221840
>>21673
лол, вот не похуй на возраст.
наоборот рано скорее, молодежь тупая пиздец обычно
372 2221852
>>21840
23 типа уже дед? 23 можно еще на материнские чувства у херочки давить, особенно если она постарше.
373 2221871
Стоит ли учить джангу 2, а потом по докам переходить на 3ю версию?

По джанге 2 куча книжек на русском, а по джанге 3 ничего нет

Или лучше с гугл-траслейтом читать книги по джанго 3?
374 2221872
>>21852
не, 23 это шкет по сути, у которого на уме тянки, пледики и фортнит
375 2221873
>>21499

>Надо все их выгрести и округлить


Что делать-то с ними будешь? Просто в оперативную память выгрузить или заапдейтить все строчки прямо в базе?
376 2221920
Шото я нагуглить не могу, каково текущее состояние vscode фичи когда можно редактировать еще не исполненный код?

https://docs.microsoft.com/en-us/visualstudio/debugger/edit-and-continue?view=vs-2022

Это не работает в vscode ? А где работает?
Мне казалось они объявляли о поддержке , но я забыл .
377 2221943
Тупой вопрос сейчас задам.
Поставил eclipse, в нём pydev.
Успешно отлаживаю свой файлик, и вдруг он завершается с исключениями. Обнаруживаю в нём две строчки, которые я не писал:
from sos.report.plugins import stratis from cloudinit.sources.DataSourceLXD import description
Это что это? Это откуда? Это зачем? Я куда-то не туда нажал? Куда?
378 2221962
Вот раньше сталкивался я с delphy7. Там можно было в опциях указать host application, чтобы, например, отлаживать плагин total commander. Соответственно, пишешь library, настраиваешь total commander работать с этой dll как с плагином, и запускаешь её прямо из IDE, но стартует, естественно, не dll, а total commander, но как только выполнение передаётся внутрь твоей dll (плагина), можно вывалиться в отладчик.
А вот тут ситуация чем-то похожая. Пишу на питоне плагин для gedit. Мне бы вывалиться в отладчик внутри своего плагина, запустив gedit, который этот плагин подключит. Но как? Это вообще возможно? Насколько я вижу в htop, gedit никаких питонопроцессов не запускает. А запускает он плагины через LibPeas, который я без понятия как работает. Никто это не ковырял?
379 2221967
>>21871
Бамп
380 2221969
>>21962
Так питон как отдельный процесс запускается в этой странной системе?
381 2222017
>>21871
Что тебе мешает сразу по докам изучать 3-ю джангу?
382 2222048
>>21967

> Прошло 12 минут, после твоего поста не было ни одного


> Бамп

383 2222051
>>22017
Я так понял у него изучать == читать книгу.
384 2222075
>>22051
А как учить тогда? Я вкатыш, офкорс.
Уже скоро джанго 4 выходит, а книжек по джанго 3 на русском нет(есть только от русских авторов, но это говно).
Доку читать скучно и все равно без практики ее не запомнишь.
385 2222078
>>21920

>Python itself doesn't actually support this use-case.


https://github.com/Microsoft/vscode-python/issues/165

понятно.
И че, это навсегда?
386 2222092
>>22075
Бамп
387 2222095
Немного подотстал от технологий. На одном проекте у нас самописный фреймворк. Это гигант, вряд ли когда перепишется на что-то полуготовое. Новые делаем на aiohttp/flask. Что там сейчас модно, что если через месяца 4-5 свалю в свободное плавание, на собесах показать скилл?
388 2222110
Функция hash в Пистоне возвращает хеш объекта (если он хешируем). Как выяснилось, функции и генераторы хешируемы. Однако если создать несколько разных генераторов с одними значениями, например:

[range(3), range(3)]

то у них будут разные хеши.... как сделать свою хеш-функцию, которая будет принимать во внимание не только сам генератор но и его аргументы? И если они одинаковы то считать хеш одинаковым, вне зависимости от состояния генератора?
389 2222124
>>22110
Да вроде не разные.
https://ideone.com/gg9OhR
390 2222136
>>22075
Да ты заебёшь бампать вопросы, которые даже ещё не уплыли

>А как учить тогда?


Практикой. Читаешь доки, параллельно пилишь что-то. Можешь просто примеры джанги брать и использовать. Не в тупую копировать-вставлять, а именно что использовать. Делать проект, наступать на грабли, разбираться в проблеме, искать решение, запоминать, исправлять. И так по кругу.
Без кода ты и по книжке нихуя не выучишь.
391 2222146
>>22136
А какую версию джанги учить? Сразу 3 или лучше с 2 начать?
image.png107 Кб, 1428x664
392 2222147
>>22124
Еще один уебанский момент, который я не в силе разъяснить
393 2222156
>>22147
await где? Если контекст цикла событий не переключаешь - не юзай async
394 2222158
>>22146
Бамп.
395 2222159
>>22156
Какой await?
Я создал 2 асинхронные корутины, когда их await-ить это мое дело
396 2222175
>>22159
Кекнул. Тебе интерпретатор говорит - у тебя говно вместо пирога, убери его, а ты ему такой - знаю что говно, что хочу, то и ем

Далее, не юзаешь await - у тебя варнинг сыплется. Погугли в чем дело, но я тебе итак скажу: ты тупой долбаеб, который даже не знает как юзать async/await, но делает это когда хочет
hash(await f('x'))
397 2222180
>>22175
Пчел, я Папка на проекте нахуй. Недавно собесил одного вкатыша и завернул его, потому что тот как раз уссался на асинхронке и на генераторах. Знай Папку.

>hash(await f('x'))


долбоеб даже не понимает что он считает hash того что вернула его future/корутина а не самой корутины
398 2222184
>>22180

>Хеш корутины считать


Ловко ты из одного говна в другое наступил
399 2222186
>>22146
Бамп
folder.jpg9 Кб, 250x357
400 2222187
>>22180

>Папка

401 2222191
>>22180
На проекте по чистке унитазов?
image.png184 Кб, 1560x908
402 2222202
Какой ебанат будет это использовать на полном серьезе?

тут даже не про питон базар если че
403 2222211
>>22202
Папка, опять ты?
Декоратор так работает, по такому принципу
404 2222413
>>22095
Очевидный FastAPI
405 2222500
https://ideone.com/uYEUyA

Есть идеи как без io обойтись?
406 2222519
>>22500
А зачем без него обходиться? Всё и так норм.
407 2222522
Какие проекты сделать для гитхаба?
code.png134 Кб, 1288x762
408 2222523
>>22519
Хуй знает зачем, но сделал немного покрасивей:
https://pastebin.com/DWejWqx8
code.png129 Кб, 1240x750
409 2222524
>>22523
Бля, проебался, вот рабочий: https://pastebin.com/DDGKnc83
410 2222551
блять, как отучить себя ебашить все в одну строчку.
Посмотрел как-то чела, который написал, что тип использовать генераторы и лист-comprehension где только можно, это хороший, годный питоновский способ писать код.
Но через какое-то время, когда начал возвращаться к старым блокнотам, понял что можно нормально читать только нормальный цикл и не сложные, в одну строчку, comprehension'ы. Пиздец, кто вообще придумал этих монстров
411 2222556
>>22551
Учись чувствовать, когда вещь достаточно сложная для такого. А простые заебись. Видел как-то компрехеншены через компрехеншены на 18 строк, блядь, с кучей логики внутри и по факту это один стейтмент, который можно и в строку свернуть вместо 18 - вот так не надо, это больная тема. А в роли мап/фильтр/инициализаций простеньких легко все читается.
412 2222598
>>19381

Сколько не дрочи, так и останешься дрочуном.
413 2222644
>>22500
https://ideone.com/aMoF9p
Ты хули там написал, пес?
414 2222645
>>22523

>for file in zip_from_stdin.filelist


Ууууууу
415 2222649
>>19568

>568


Бамп
416 2222683
Мне нужно похулиганить сайт с помощью питона (наплодить 404 страниц надо) как это можно сделать?
Есть сайт краш.сом условно и мне надо сделать чтоб открывалось и переходилось по рандомным краш.сом/тутнуженрандом
таким образом после закрытия сайта 404 страница не удаляется и если сделать скрипт который переходить по таким ссылкам выходит большое число 404 страниц
как мне такое написать в принципе?
417 2222687
>>22146
Бамп.
418 2222689
>>22683
Ты таблетки выпил?
419 2222690
>>22689
Нет
image.png744 Кб, 923x646
420 2222697
>>22683

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

421 2222706
>>22697
Так, я не силен в языке шизов, но мне кажется, он хочет написать скрипт, который берет имя сайта, добавляет рандомные символы в конец, чтобы получилось вот так: shique.ug/dfsd3ea
Скрипт должен наплодить кучу таких ссылок и открыть их в браузере?

Зачем? А черт их шизов знает.
422 2222709
>>22706
Дурачок думает, что создаются какие-то реальные страницы под 404, а не одна стандартная.
423 2222718
>>22709
Нет, либо идет перенаправление на условную shizya.ug/404 либо все эти страницы создаются каждый раз когда переходят
424 2222720
>>22718
Алёша, это называется рерайт. Адрес может быть любым, а что тебе по нему подсунут решает реверс прокся или роутинг самого приложения.
425 2222810
>>22645
Что не так?
427 2222829
>>22519
Да прост если sys и zipfile резонно нужны, то io выглядит как то без чего в принципе можно попробовать обойтись
428 2222830
>>22519
Навучный интерес короч
429 2222877
>>21969
Да вроде нет. По крайней мере я не вижу этого в htop.
430 2222907
>>22877
Пытался посмотреть исходники этого libpeas, чтобы вообще понять, что он там делает, как итог только опух мозг и больше ничего. Не понимаю.
431 2222908
>>22718
Ты тралишь тупостью?
>>22816
Да ты распространил вредоносный код. Всё, пизда тебе, управление К идёт за тобой.
image.png1,9 Мб, 1079x1029
432 2222922
433 2222949
>>22829
На самом деле, я не понимаю, зачем тебе sys, когда ты можешь читать из stdin при помощи обычного input(), типа:

zip_from_stdin = ZipFile(BytesIO(bytes.fromhex(input())))

А если хочешь обойтись без io - можешь сохранить инпут в файл, а потом открыть его xD
434 2222982
Какого хуя -4 // 3 это -2? -1 же должно быть
435 2222992
>>22982
Гугли что такое bankers rounding. Это часть какого-то стандарта вроде.
436 2223007
>>22949
Хмммм, вотб теперь думаю а оценит ли ejudge создаваемые файлы. Спасибо за советы, попробую
437 2223019
>>23007
Ну, если тебе потом эти файлы не будут нужны - то сохранять их плохая идея, по сути это будет костыль вместо io, но работающий медленнее из-за системных вызовов. Так и не понимаю, чем тебе он не угодил, ибо он часть стандартной либы, да и работает быстро, т.к. написан на C.
image.png26 Кб, 832x569
438 2223126
Пытаюсь в django. Выполняю простейшую инструкцию https://help reg ru/hc/ru/articles/4408047456785-%D0%9A%D0%B0%D0%BA-%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D1%8C-Django-%D0%BD%D0%B0-%D1%85%D0%BE%D1%81%D1%82%D0%B8%D0%BD%D0%B3
по установке.
Результат на пике.
Я понимаю, что ответ может быть каким угодно, но я не понимаю, что и как поправить, а так же как проверить.
Пожалуйста, дайте общие указания по отладке.
Я подозреваю, что напутал что то в шагах 11-13, мб в полях, где нужно было указывать информацию о БД.
439 2223130
>>23126
Ну хоть бы открыл технические детали для администратора сайта
440 2223141
>>23130
Ты имеешь в виду название БД и имя пользователя? Или какое-то специальное место, где они записаны все вместе?
441 2223144
>>22202
Да в любом случае, где доступность аргументов варьируется на момент вызова.
Тут проблема в том, что примеры каррирования в учебных материалах обычно или слишком простые или слишком ебанутые.
Вызовы func(1)(2)(3) выглядят намного понятнее, если рассматривать их в контексте проекта.
В проекте каррирование выглядит так:
module1.py:
def func1(arg):
...
exported_func = func1(1)
module2.py:
from .module1 import exported_func
exported_func2 = exported_func(2)
module3.py:
from .module2 import exported_func2
result = exported_func2(3)
442 2223145
>>13498 (OP)
Объясните в чем подвох пасты "Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь. " я уже дошел до написания своей собственной имиджборды и внезапно подумал, а нет ли там какой-то наебки?
443 2223147
>>23145
а в чем подвох пасты про жареный суп? я жарил и нормально.
в че подвох пасты про травы? я пил травы и норм.
444 2223150
>>23145

>я уже дошел до написания своей собственной имиджборды и внезапно подумал, а нет ли там какой-то наебки?


Нет конечно никакой наёбки, главное не задумывайся, почему сидишь на дваче и может быть ещё на каком-нибудь условном форчане, когда борду может запилить любой вкатыш.
445 2223229
Ребята, такая проблема. Я забыл пароль от контейнера veracrypt, но помню только его середину, там в конце и начале и были знаки типа #!.
Так вот, дайте простой скриптик, который сгенерирует все возможные вариации этого пароля, чтобы посередине была та часть, которую я введу, а по концам вставились в различном порядке !#
.
446 2223232
>>23229
Вакаба проебывает звездочки.
Мне надо, чтобы сгенерировались в один .txt файл пароли типа !2ch! #2ch# !#2ch#! #!.2ch!.
447 2223253
Единственный нормальный шедулер на питоне это целери, да?
Обычный кронтаб мне не подходит, ибо нужно мониторить как завершились прошлые задания
Или есть что то попизже?
448 2223264
>>23232
>>23229
Я с нулевым знанием питона что-то да наскреб.
Можете подсказать, как сделать так, чтобы цикл for остановился только тогда, когда прогенерируются все возможные вариации?
449 2223270
>>23264
Уже есть всё готвое. https://docs.python.org/3/library/itertools.html
Смотри секцию Combinatoric iterators
450 2223305
>>23229
Вот, наговнокодил тебе.
https://pastebin.com/Q4rcdKEY
451 2223324
>>23305
Спасибо, но немного не так должно быть. Нужно чтобы минимальное значение было равно одному. Чтобы прогенерировались варианты с !2ch# и #!2ch. и тд.
452 2223404
>>23270
Мне надо, чтобы не просто всевозможные комбинации !#. и звездочки проставились, а чтобы прогенерировались варианты, в которых в начале или в конце только один символ. Я просто не помню, как я символы в конце и начале расположил, но точно помню середину.
453 2223414
>>23404
К примеру так:
#
#
!
!.#

!*.#
454 2223427
Как сгенерить случайную последовательность с заданной функцией автокорреляции?
image.png30 Кб, 481x354
455 2223520
Matplotlib, нужно каждой кривой присобачить имя. Есть варианты как это сделать?
image.png11 Кб, 384x323
458 2223586
>>23570
Большое спасибо, анончик. Сгенерировал словарь и сбрутил контейнер.
459 2223596
>>23586
U r welcome
460 2223610
>>23586
А где ты взял брутер для веры? Он без самой веры работает?
462 2223616
>>23611
Ты забыл пароль, но точно помнил какой алгоритм использовал при генерации?
463 2223618
>>23616
Я ничего не трогал в алгоритмах, оставил как есть. Там же даже в скрипте написано hashtype="13721" # hash SHA-512 encryption AES (VeraCrypt 1.24 default)
464 2223619
>>23618
А пим? Там по дефолту тоже что-то стоит?
465 2223622
>>23619
Я не ставил пим.
466 2223650
Как нормально, но не слишком заёбно отладить подсчёт ссылок в расширении на C? Билдить дебаг-версию питона с этой целью не очень хочется, сыпать в коде printf("DEBUG refcnt=%d\n", Py_REFCNT(obj)) тоже. Не уверен, что по адресу вопрос задаю, но может стояла перед кем такая проблема.
467 2223808
Если я напишу print("\U0001f600"), то получу эмоджи этого юникода. Если я юникод этот по кускам соберу, а в принте укажу сумму этих кусков - получу юникод, а не эмодзи. Почему так ? Как получить эмодзю, а не юникод ? Питон 3й.
468 2223827
>>23808
Работай с байтами: https://pastebin.com/jFhJ8y1M
469 2224032
Пишу скрипт, который будет копировать определенный файл n раз и подставлять в название итерацию. Как сделать так, чтобы итерация добавлялась не в конце файла image.jpg1, а до точки image1.jpg?
470 2224036
>>24032
os.path.splitext
471 2224039
>>24032
ебать, у нас за такие вопросы убивают нахер
472 2224045
>>24039
Я новичок -> <-
473 2224070
Так, я написал скрипт, которому можно указать картинку и кол-во копий и он сгенерирует для каждой разный хэш, путем добавления рандомных цифр в конец. Оцените его, пожалуйста.
https://pastebin.com/cqBdCJHs
474 2224082
>>24070
Нормально
475 2224083
>>24070
На for range перепиши. И кури f-строки.
477 2224173
>>24070

>разный хэш


Твой скрипт этого не гарантирует (randint может вернуть одинаковые значения). Если число заказанных копий больше 9000, то, очевидно, будут коллизии.
478 2224187
>>24173
Я уже исправил код, чтобы рандом генерировался в самом начале и потом уже в цикле к рандому прибавлялся номер итерации.
Кстати, не подскажите, как по быстрому сделать это консольным приложением? Чтобы написал в консоль python hash.py image.jpg 10 и всё выполнилось.
481 2224273
>>22922
Общего между тем питоном и современным примерно столько же, сколько между процессором 8086 и современными amd64 реализациями.
482 2224354
>>24201
Если оставить поле пустым, то питон крашится с ошибкой IndexError: list index out of range, даже проверку не даёт сделать. Как быть?
483 2224379
>>24354
len проверяй.
484 2224395
>>23827
попробую, спасибо
485 2224406
>>24379
if len(sys.argv[1]) <= 1:
IndexError: list index out of range
Он сразу на действии с пустой строкой крашится. Или это так и должно быть? Типа нельзя чтоли вывести своё сообщение об этом и закрыть программу без крашлога от самого питона?
486 2224412
>>24406
Можно ловить эксепшены.
Но ты проверяешь лен элемента, а надо списка.
487 2224423
С чего начинать? Automate the boring stuff with Python хорошая книга?
488 2224424
Аноны, шалом.

Есть такая задача: нужно сделать динамическую форму через Фласк. Идея в следующем.

Есть переключатель. Если переключатель в положении "1", то на вход подается значение из поля ввода form_1. Если переключатель в положении "2", то пользователь нажимает кнопку "Enter form", открывается модальное окно и в нём появляется пачка форм form_2, form_3 etc.

Вопрос: как это реализовать? Интуитивно я понимаю, что flask bootstrap что-то такое должен уметь, но я не понимаю, как по изменению переключателя динамически можно подавать на вход инпут из двух разных типов форм.
489 2224434
>>24412
Как это делается?
490 2224448
>>24032
Когда работаешь с файлами и путями советую юзать вот этот модуль - https://docs.python.org/3/library/pathlib.html
Код для твоей задачи: https://pastebin.com/zKjrwxhw
491 2224455
>>24448
Да я уже всё написал. Мне только нужно как-то проверку сделать того, чтобы sys.argv был не пустым и выводило только сообщение об этом.
493 2224513
>>24448
Ты из какого-то другого языка в питон перекатился?
494 2224518
>>24513
Нет, питон был моим первым языком, но я знаю несколько других. А почему спрашиваешь?
495 2224521
>>24461
Как теперь второй аргумент прочитать?
496 2224522
>>24521
sys.argv - Это список аргументов, переданных твоему скрипту, первый из которых - путь до самого скрипта.
497 2224524
>>24423
Ответьте
498 2224529
>>24518
Не знаю, что-то режет глаз. Возможно, слишком многословные названия.
499 2224531
>>24524
Нормальная, но не первой.
500 2224538
>>24529
Я обычно их меньше делаю, но тут написал так, чтобы было более понятно челу. Видно, что он не сильно шарит.
501 2224569
>>24531
Почему не первой? И что тогда вместо неё?
502 2224577
Есть книжки, где конкретно будет ставиться какая-то задача и будут описываться все действия. По типу написания калькулятора, тетриса или змейки. Я не могу в сухую всё зазубривать.
503 2224587
>>24577
Есть, называется питон для детей. Там как раз, если память не изменяет, делают змейку
504 2224589
>>24587
Ну а вы все здеся как учили? Просто сидели и в сухую каждую функцию, каждый модуль зубрили?
505 2224597
>>24589
Степик, Кодеварс, Питон краш-курс.
506 2224628
Двач, как загрузить процессор на 100%? Хотел для себя температурный бенчмарк написать.
507 2224643
>>24628
Ну, на питоне это делать - не лучшая затея, но если очень хочется, то можешь написать простое
while True:
pass
И прикрутить к этому multiprocessing, чтобы все ядра грузить
508 2224647
>>24589
Нахуя ты их зубришь? Совсем ебанутый? Ты на уроках труда тоже зубрил хуйню в духе "рубанок для того, чтобы сделать доску ровной, отвертка чтобы закручивать шурупы, молоток чтобы забивать гвозди"?
>>24597
Я не знаю нахуя вы нарешиваете задачи на кодварсе. Чтобы что? Если человека сортировку пузырьком достаточно понимаета не зазубрил блять, то на этом алгоритмы уже можно стопать и изучать их после устройства на работу
509 2224649
>>24589
И да, про книгу "питон для детей" я неиронично написал. Очень хорошая книга, жаль, что я ее нашел уже после того, как вкатился
510 2224667
>>14257
имхо проще проверять в диапазоне от 2 до n-1, и если в нём встретился делитель числа n, то n не простое, иначе простое
511 2224668
>>14257
Держу в курсе, все делители числа n меньше, чем корень квадратный из n. Нахуя ты просто так проверяешь кучу чисел?
512 2224691
>>13498 (OP)
ребят, а где можно порешать задачки? Ну что то вроде спортивного программирования. Я кстати думал, что в шапке будут ссылки. Буду очень благодраен, если кто нибудь поделится. Сейчас нету идей писать что нибудь конкретное, но хочется все же прогрессировать в языке. А я заметил, что легче учиться, когда стоит некая задача, которую надо решить.
513 2224694
>>24691
codewars, leetcode
Прогрессировать начнешь когда найдешь работу. Спортивное программирование в том виде, в котором оно на соревнованиях присутствует вредно.
514 2224696
>>24694
но все же спасибо
515 2224712
>>24647
Да просто по приколу. Захожу каждый вечер и делаю 1-2-3 задачки перед сном. Как такая долгозарабатываемая ачивка "нарастить длинный хуй кью на Кодеварсе".
517 2224738
>>14257
Ограничения есть? Есть да, то проще захардкодить все простые числа, разбить на массивы равного размера и сжать. А зная a и b можешь узнать какие массивы нужно разжимать и только их разжать и посчитать числа. А те, что разжимать не надо просто прибавь размер массива к результату. Работать будет быстро. С учёт сжатия будет 50-100 мегабайт дискового места на все числа до миллиарда. До трилиона понадобится десятки гигов места на диске, но поиск всё равно будет быстрый т.к. только 2 массива придётся декомпресить. Содержащий a и содержащий b.
518 2224784
Привет, в Яндекс Практикуме реально обучится питону и в дальнейшем трудоустроится?
519 2224838
>>24784
Реально, покупай, а лучше сразу два раза купи, чтобы наверняка
520 2224867
>>24738
Интересно узнать, а как ты набор уникальных чисел сжимать будешь?
521 2225140
>>24668
Неверно. Например, корень квадратный из 22 это 4,69... При этом делители у него 2 и 11, и только 2 меньше квадратного корня, а 11 - больше.
Я понял, что ты имел в виду, но твоё утверждение ошибочно.
522 2225144
А вообще кто-нибудь под линуксом питон ковыряет? Конкретно, Gtk и всё тому подобное? Есть подобные темы на сосаче? Где вопрос спросить, если что?
523 2225448
>>25140
Эммм, нет. Ты делишь на два, получаешь одиннадцать. Проверяешь одиннадцать до 3 и узнаешь что это просто число. Все. Или ты считаешь, что перебирать нужно все числа по порядку, чтобы два раза получить разложение 2*11?
image.png42 Кб, 589x703
Помощь по питону килька 524 2225470
дали такую ебень лабу, без понятия как такое писать, первый курс, не привык еще к такому...
525 2225595
>>25448
Ещё раз, 11 является делителем числа 22? Да или нет?
Вот что ты написал:

>все делители числа n меньше, чем корень квадратный из n


11 меньше, чем корень квадратный из 22? Да или нет?
И, как итог, твоё утверждение верно или нет?
526 2225610
>>25470
glossary={}
б) glossary[term]=interpretation
в) del glossary[term]
г) for t in glossary: print('%s:%s' % (t,glossary[t]))
д) print(glossary[term])
Ну и так далее. В чём сложности?
Непонятно, чем пункт а) вообще должен заниматься. Если он создаёт глоссарий из текстового файла, чем это отличается от загрузки из файла (пункт з)? Что вообще тут имеется в виду? Без понятия. Но я уверен, что ваш препод сам понятия не имеет, что он имел в виду, когда это задание составлял. Ну может быть имеется в виду "создать на диске новый пустой файл с типа будущим глоссарием".
Короче, привыкай, у тебя такого дебилизма ещё много лет впереди. А может лучше ну его на фиг и пойти работать на завод? Там хоть деньги платят. А то будешь у родни на шее сидеть. А мог бы за это время на квартиру заработать.
fix.jpg38 Кб, 509x168
527 2225647
Как пофиксить этот пробел в конце вывода, без двух принтов?
528 2225680
>>25647
Можно в документацию print'а залезть (https://docs.python.org/3/library/functions.html#print), можно на форматирование строк (https://docs.python.org/3/library/string.html?highlight=string#format-string-syntax) глянуть, а можно вообще на модные нынче f-string'и перейти (https://docs.python.org/3/reference/lexical_analysis.html#f-strings)
530 2226070
>>25681
А вы линтерами пользуетесь? И какой лучший?
531 2226093
>>26070
Я — нет. И тред уже умер давно, перекатывайся в новый >>24727
Тред утонул или удален.
Это копия, сохраненная 30 июня 2022 года.

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

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