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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
image.png241 Кб, 1000x800
Питонотред № 153 /python/ Гвидо 2568047 В конец треда | Веб
Предыдущий: >>2546424 (OP)

Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. Потом зубришь, именно, сука, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало. Когда напишешь свою первую имиджборду, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую Tornado или Gevent. Как переделаешь имиджборду, чтобы выдавала по крайней мере 5 тысяч запросов в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, MapReduce. Отсос хиккующих выблядков / просто неудачников типа рейфага или сисярп/джава-хуесосов, которые сосут хуй по жизни не заставит себя ждать и уже через пол года ты будешь получать такие суммы, что любая баба будет течь при одном упоминании твоей зарплаты.
16626519276020.png378 Кб, 542x675
2 2568059
Браузерки на Питоне! Видали?
https://pygame-web.github.io

Страницу проекта не читаем, дурак писал, смотрим сразу Игры:

Великолепный сай-фай шутер: https://tank-king.itch.io/bug-invaders
Вампайр сувайворс с собакой: https://legentil42.itch.io/doggo-ascent
Космический сурвайвол хоррор: https://tonikgames.itch.io/necrostation

Прочие шедевры:
https://itch.io/c/2563651/pygame-wasm
https://itch.io/games/tag-pygbag

Выкатывайтесь из Джанги своей, вкатывайтесь в браузерный геймдев на Питоне!
3 2568274
Здравствуйте, может кто-то с этим помочь? Дана последовательность символов латинского алфавита и пробелов. Группу символов, разделенную с одной или обеих сторон пробелами и не содержащую внутри себя пробелов, назовем словом. Поменять порядокследования букв на обратный в тех словах, которые начинаются с заданного символа. Подсчитать количество таких слов
import string
stroka = input('Введите строку: ')
count = 0
symbol = input('Введите символ: ')
razdel = stroka.split()
mytable = string
for i in range(len(razdel)):
for s in range(len(razdel)):
if(stroka==symbol):
count+=1
mytable="".join(razdel)
break
else:
mytable = "".join(razdel)
print(mytable, count)
4 2568276
Я придумал самую лучшую либу для локализации.
5 2568298
>>68274
https://ideone.com/NHt5bu
Задачка простейшая же, чо там помогать? Давай сам думай.
6 2568300
>>68276

а зачем ты таблицу стрингов подчеркиванием назвал?
обычно этим геттер стрингов из этой таблицы называют: _("я люблю облизывать яйца")
7 2568302
>>68276
На каждый пук всё это дёргается? Инициализируй тогда уже объект один раз, ну и можно все эти локализации отдельными классами.
Алсо, зачем _? Его в любой момент можно похерить, это для нинужных переменных.
8 2568337
>>68298
правда не понимаю в чем проблема, счетчик выдает правильно 2 для "мама мыла раму"
ответ "раму 2"
import string
stroka = input('Введите строку: ')
count = 0
symbol = input('Введите символ: ')
razdel = stroka.split()
mytable = string
for i in range(len(razdel)):
for s in range(len(razdel)):
if(razdel==symbol):
mytable = " ".join(razdel[::-1])
count+=1
break
else:
mytable = " ".join(razdel)
break
print(mytable, count)
9 2568350
>>68337
Задача подразумевает списки, подразумевает знание, что есть индексакция строк, ты же занимаешься какой-то хуитой. Думой.
10 2568355
>>68300
>>68302
Либа на первом скрине, пример использования на втором.
Screenshot64.jpg69 Кб, 747x625
11 2568357
Вот интересное задание, но я уже её решил, хотя тут возвращать лямбда функцию нужно, что бы кратко было
12 2568365
>>68350
так сплитом создал массив razdel
13 2568369
>>68357

>я уже её решил



re.sub-ом, как бог языков программирования?
14 2568373
>>68369
А зачем он тут и как его применять то.
15 2568405
>>68355
заебись либа, в 100 раз лучше геттекста
16 2568426
>>68369
Хотел четенько решить ресубом, но чет нет подходящих хуков для разрешения имен или фатальных эксепшенов, хмм. Разве что в байткод лезть.
17 2568460
>>68405
Я охуел с того, какое это говно, и даже альтернатив не нашел.
18 2568461
>>68405
Я охуел с того, какое это говно, и даже альтернатив не нашел.
19 2568519
Короче нубский вопрос по автодокуметации.
Как работают три кавычки?
Где и когда их ставить?
Пишу на пичарме но не понять ничего.
Есть какая-то комбинация клавиш для вставки шаблона автодока?
20 2568525
>>68519
Три даблквоты, ентер и будет автофиниш докстринга по пеп. Если нет, то ctrl alt s и ищи docstring.
21 2568528
>>68276
return _[lang][text] if (lang in _ and text in [lang]) else text
22 2568558
>>68525
У меня по Ctrl alt S вылазит окно настроек.
23 2568566
>>68558
Поиск в меню настроек для хоткей.
24 2568675
>>68528
Так только пидоры пишут.
25 2568725
>>68675
не любишь тернарники?
26 2568731
>>68276
Оно должно быть чувствительно к регистру или нет?
Локализация наоборот (из руснявого в инглиш) предусмотрена?
Если я пропустил дефис например то все - не прокатит?
Почему нет поддержки регулярок?
27 2568733
>>68725
Эту хуйню хер поймешь с ходу
мимо
28 2568735
>>68059

>Великолепный сай-фай шутер: https://tank-king.itch.io/bug-invaders


>управление стрелками


>стрелка вниз скроллит страницу вниз


Охуенно, братан, контент в кайф.
30 2568776
>>68762
Эта штука имеет все шансы убит гугл по мере развития, а на кодерство похуй, это всё равно 95% времени хуйня а не профессия.
31 2568877
>>68047 (OP)
Братцы, помогите настроить vscode, я заебался.
Как убрать лишний мусор из подсказок ctrl+space (IntelliSense) в VsCode?
Пик 1 - vscode
Пик 2 - pycharm
16669630725140.jpg2,2 Мб, 2048x2048
32 2568919
>>68735
Хз, в лисе всё пашет. Там фулскрин есть для хромогеев.
33 2568932
>>68731

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

любые регистры, дефисы и прочее приведут к ошибке, и это правильно

куда регулярки пихнуть собрался? некуда
34 2569025
Народ, всем привет, ай нид хелп.
Нужно заполнить данными(отсутствующие значения) таблицу, как во второй, пробег и пробел остаточный. Python pandas
Пробег должен == 0, Пробег остаточный == 160000
Как это сделать, идей вообще нет
35 2569173
>>68047 (OP)
ну ахуеть , почитал книжку , выучил библиотеку с PEP 8 и иди пиши имиджборду , ты раз взялся анонов учить успешному программированию , то распиши нормально , что как и после чего учить
36 2569179
>>69025

>akhmetova.n



пошла нахуй из нашего айти
37 2569205
Шесть месяцев назад я нашёл в Интернете книжку "Dive into Python". Странная книжка, толстая, да ещё на не русском языке. Усердно прочитал её, методично и вдумываясь, но таки ничего и не понял. Но что-то не отпускало меня - я пошёл на python.org и стал изучать стандартную библиотеку, старательно, скурпулёзно, от корки до корки. Гугля примеры кода, я наткнулся на пост в блоге одного гуру, где было написано про PEP8. То, что рассказывал этот умудрённый опытом кодер, настолько впечатлило меня, что я словно в припадке безумия бросился зубрить эту конвенцию по написанию питоньего кода. У меня тряслись руки, по телу прокатывали волны возбуждения, я, можно сказать, бился в экстазе всё это время - и теперь могу процитировать наизусть любой пункт, даже если меня разбудить посреди глубокой ночи.

Новые знания окрыляли меня, я бросился писать (что бы вы подумали?) очередную имиджборду. Я не писал раньше имиджборд, эта была моей первой. По пути пришлось освоить азы вёрстки на html и css, но там всё оказалось совсем не сложно.

Я плавно двигался вперёд, наращивая функционал. И знаете что? Я упёрся в недостаток производительности. Ну, так мне показалось. Я делал замеры, устранял места с тяжёлым кодом. Тысячи раз запускал ab, но так и не сумел перейти порог в 300 запросов в секунду. Я как-то ожидал большего и был немного разочарован.

Гугл, снова гугл. Десятки статей и тем на форуме... Довольно быстро я заметил, что люди часто пишут про какие-то "асинхронные веб-сервера". Часто встречались названия Tornado и Gevent. Я прочитал про них подробнее - и был просто ошеломлён. Как мне это раньше не приходило в голову?! Это же, это просто гениально, чёрт меня побери!

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

Пять тысяч. Я получил производительность в пять тысяч запросов в секунду. В ту ночь я так и не смог заснуть.

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

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

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

А ещё, я никогда не забуду тот момент, когда на одной из конференций я впервые в жизни поймал на себе завистливый взгляд. Это был взгляд какого-то сливающегося с толпой неудачника, взгляд преисполненный ненависти, презрения и желчного вожделения, направленного на мой Олимп. Наверное, он всю свою никчёмную жизнь писал на каком-нибудь си-шарпе или там на джаве, проводя долгие дни в одиночестве. И теперь начинал подсознательно догадываться, что долгие годы безуспешно пытался построить замок из навоза.
37 2569205
Шесть месяцев назад я нашёл в Интернете книжку "Dive into Python". Странная книжка, толстая, да ещё на не русском языке. Усердно прочитал её, методично и вдумываясь, но таки ничего и не понял. Но что-то не отпускало меня - я пошёл на python.org и стал изучать стандартную библиотеку, старательно, скурпулёзно, от корки до корки. Гугля примеры кода, я наткнулся на пост в блоге одного гуру, где было написано про PEP8. То, что рассказывал этот умудрённый опытом кодер, настолько впечатлило меня, что я словно в припадке безумия бросился зубрить эту конвенцию по написанию питоньего кода. У меня тряслись руки, по телу прокатывали волны возбуждения, я, можно сказать, бился в экстазе всё это время - и теперь могу процитировать наизусть любой пункт, даже если меня разбудить посреди глубокой ночи.

Новые знания окрыляли меня, я бросился писать (что бы вы подумали?) очередную имиджборду. Я не писал раньше имиджборд, эта была моей первой. По пути пришлось освоить азы вёрстки на html и css, но там всё оказалось совсем не сложно.

Я плавно двигался вперёд, наращивая функционал. И знаете что? Я упёрся в недостаток производительности. Ну, так мне показалось. Я делал замеры, устранял места с тяжёлым кодом. Тысячи раз запускал ab, но так и не сумел перейти порог в 300 запросов в секунду. Я как-то ожидал большего и был немного разочарован.

Гугл, снова гугл. Десятки статей и тем на форуме... Довольно быстро я заметил, что люди часто пишут про какие-то "асинхронные веб-сервера". Часто встречались названия Tornado и Gevent. Я прочитал про них подробнее - и был просто ошеломлён. Как мне это раньше не приходило в голову?! Это же, это просто гениально, чёрт меня побери!

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

Пять тысяч. Я получил производительность в пять тысяч запросов в секунду. В ту ночь я так и не смог заснуть.

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

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

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

А ещё, я никогда не забуду тот момент, когда на одной из конференций я впервые в жизни поймал на себе завистливый взгляд. Это был взгляд какого-то сливающегося с толпой неудачника, взгляд преисполненный ненависти, презрения и желчного вожделения, направленного на мой Олимп. Наверное, он всю свою никчёмную жизнь писал на каком-нибудь си-шарпе или там на джаве, проводя долгие дни в одиночестве. И теперь начинал подсознательно догадываться, что долгие годы безуспешно пытался построить замок из навоза.
38 2569232
>>68274
Помнится, один чувак рассказывал про тестовое задание на собесе, которое должно было развернуть юникодный текст задом наперёд. И в его случае мало кто справлялся потому, что он использовал всяческие фишки юникода, как то: модификаторы символов (например, символ ударения https://ru.wikipedia.org/wiki/Знак_ударения ), эмодзи (а они теперь часть юникода на секундочку), при чём эмодзи тоже имеют модификаторы цвета и бывают составными (тут много текста с примерами: https://habr.com/ru/company/itelma/blog/549366/ , рекомендую заглянуть и в каменты, там есть интересное).

В общем, на первый взгляд банальное задание разлилось у него в такое море кода... Ух, просто!
39 2569235
>>69232

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


И все впустую.
PavelSvedomskiy011.jpg116 Кб, 607x1000
40 2569237
>>69232

>тестовое задание

41 2569244
Хочу портировать Python на TempleOS, какие подводные?
ну кроме того что вместе с ним придётся портировать openssl и хуй знает что ещё...
42 2569357
>>69232
Ну всякие нормализации-денормализации это известная тема.
А эмодзи сразу нахуй идут. Я всё жду, когда уже появятся анимированные и со звуком.
43 2569400
Возникла такая идея - хочу сделать мультиплеерный 2д платформер для 4-8 игроков. Насколько сложно это будет сделать на питоне и что для этого лучше всего на питоне подходит? Pygame это может?
44 2569445
>>69400
С учётом того, что ты по всей видимости совсем без опыта программирования - сделать будет сложно, неподъёмно сложно. Впрочем это не только про питон.
45 2569472
>>69445
Вопрос в том куда копать, а дальше разберусь по ходу.
46 2569553
>>69400
пайгейм это обработка устройств ввода, рендеринг спрайтов и звука. нетворкинг придется делать с нуля

> Насколько сложно это будет сделать на питоне


на порядок сложнее чем на движке, т.к. всё придется написать и отладить самому с нуля. с другой стороны, если это самоцель и делается для саморазвития - почему нет?
hue.webm1,8 Мб, webm,
635x471, 0:08
47 2569566
>>69400
вот тебе для вдохновения пример игры на чистом питоне на 2к строк. в зависимостях только пайгейм и модернгл

https://dafluffypotato.itch.io/hue-flowing
48 2569647
Помогите нубасу.
Можно ли как-то отсортировать файлы которые пронумерованы иероглифами (一、二、……、 十四、……)? В юникоде они идут не в правильном порядке (1, 7, 3, 9 и т.д.), в ручную переименовывать на арабские цифры не вариант тоже.
49 2569652
>>68762
а что это за сайт?
50 2569659
>>69647
https://stackoverflow.com/questions/32094525/morse-code-to-english-python3
попробуй переделать это под свои задачи
51 2569660
>>69647
А почему должен быть порядок не по юникоду?
А если нужна какая то своя сортировка, то тут надо создавать свой словарь скорее всего.
52 2569663
>>69660
В целом это даже не сложно сделать.
Просто создаёшь одну строку со всеми иероглифами в нужном тебе порядке и через цикл проходишь, добавляя их все в словарь в нужном порядке.
image46 Кб, 605x713
53 2569678
>>69647
можешь ещё это попробовать
54 2569682
55 2569728
Смешно даже.
Попытался загрузить модуль word2number
Нету на сайте. Ок, просто скопировал весь модуль перед функцией и решил. Это не самое сложное задание, но писанины просто много
Screenshot68.jpg69 Кб, 1491x287
56 2569731
>>69728
Но вот это решение мне нравится больше всего. Через словари и думал решать сначала, пока просто по приколу не решил весь модуль скопировать
57 2569736
>>69652
Ты где последний месяц был?
https://chat.openai.com/
58 2569742
>>69736
та я ваще в танке, я не кодер просто:/
59 2569744
>>69736
а как открыть эту хуйню, через випиэн?
image471 Кб, 416x604
60 2569746
>>68762
Но сейчас ии только даёт возможность хикканам спиздить работу у синьоров.
61 2569747
>>69744
Бля, ты же программист
62 2569750
>>69747
так нет же, я в треде по нужде, а не по желанию
63 2569752
>>69744
впн и левая симка на которую код придет (покупается за 20р)
64 2569754
>>69752
там через почту у меня даже на почту ммска пришла, зарегался, но эксес денайд, скачиваю тор
65 2569758
>>69744
это штука чисто поиграться. слегка получше гугла местами лишь
66 2569763
>>69758

> слегка получше гугла местами лишь


meatbag cope
67 2569778
>>69763
ты носишься с ней как дурак и выдаёшь решения простых задачек и при этом вряд ли сможешь понять,если решение выдали кривое, неработающие и неоптимальное
68 2569790
>>69763
Скрин с китайскими иероглифами полностью хуйня, если что. Он не просто выдал код, который ничего толком не делает, но даже дал неправильное описание как питон работает.
image.png81 Кб, 982x249
69 2569803
>>69025
лол, делается за 5 минут, Ахметова
faa9174ecb2cad5bd30e067a8703640e.jpg73 Кб, 800x400
70 2569812
>>69025

>mutation


>pd.Series превращается pd.Series


>квадратные скобки в след квадратных скобок, вместо loc


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


ебать код у тебя, где так учат паграмировать?

>Как это сделать, идей вообще нет


fillna(0) в "пробеге", fillna(160000) в "Пробег остаточный"
71 2569943
>>68047 (OP)
Коданы, что у меня сломалось? При попытке установить интерпритаторы через pyenv выдаёт:

> /home/username/.pyenv/plugins/python-build/bin/python-build: line 819: make: command not found



Последние строчи лога выглядят так:
Last 10 log lines:
config.status: creating pyconfig.h
creating Modules/Setup.local
creating Makefile

If you want a release build with all stable optimizations active (PGO, etc),
please run ./configure --enable-optimizations


819-820 строчки python build:

> { "$MAKE" $MAKE_OPTS ${!PACKAGE_MAKE_OPTS} "${!PACKAGE_MAKE_OPTS_ARRAY}" } >&4 2>&1

72 2569953
>>69943

>make: command not found


ну так ты поставил make?
KU0gRZ-fJ3HX7KsNeWbs1-hj8RYET7i5ieDUeh7Ijsn-nEmSYndLNESQ1E7VHa28pPxpXiWFaeZDndrsuqOi4Q.jpg151 Кб, 571x550
73 2569957
Питоны, есть куча директорий и каждую нужно заархивировать (в отдельные архивы, а не в единый архив) и сложить в папку. Вроде задача простая, но я хуй его как на Питоне такое адекватно реализовать (притом что на Баше делается в пару строк). С тем же os.make_archive и простым циклом for не получается.

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

пик-рандом
74 2569968
>>69957

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


Вызывай баш из питона.
75 2569969
>>69953
Внезапно его переустановка помогла
76 2569982
>>69968
Интересней понять как это из Питона делается)
77 2569986
>>69957
https://docs.python.org/3/library/zipfile.html
Ну идешь по папкам создаешь для каждой архив пихаешь в него файлы. Расширение ты не указал поэтому считаю что зип.
78 2570016
>>69982
Точно так же как на баше, только через shutil.
79 2570028
>>70016
Не получается через shutil. Пытался пройти циклом for по всем директориям вложенным в основную директорию:
for baks in bak_dir:
shutil.make_archive(различные комбинации параметров)

Ничего толкового не выходит
80 2570077
>>68762
Даунская задачка для даунов. Бот очевидно смог ее решить. И очевидно в очередной раз как бэ намекает всем что алгоритмодроч и литкододроч не являются хот ьсколько-нибудь важными признаками адекватного программиста

Пусть решит вот такие задачки:
Понять почему постгря на проде внезапно жрет минимум 70 гигов памяти из 90 доступных
Прикрутить кейклоак авторизацию к этому проекту 8 летней давности на Торнадо
Перевести поиск в проекте с LIKE на elasticsearch
Понять почему при переходе с celery 4 на 5 таски рандомно начали сдыхать
81 2570107
>>70077

>алгоритмодроч и литкододроч


В галере есть коллега который без устали дрочит литкод и постоянно меня да окружающих спрашивает, решили ли мы сегодняшний челлендж. Каждый раз как говорю что такой хуйней не занимаюсь, он теряет дар речи будто я какое-то богохульство отпустил
82 2570110
>>70077

>Прикрутить кейклоак авторизацию к этому проекту 8 летней давности на Торнадо


О, я очень похожее недавно делал не сделал

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

>>70028
bak_dir это что?

from pathlib import Path

p = Path('.')
subdirs = [x for x in p.iterdir() if x.is_dir()]
for subdir in subdirs:
...
Cirno.full.977944.jpg801 Кб, 1171x1495
83 2570158
>>70110

>bak_dir это что?


baka direction, очевидно же!

>>70077

>Прикрутить кейклоак авторизацию к этому проекту 8 летней давности на Торнадо


Можно у автора этого проекта спросить: >>69205
84 2570163
>>70110

>bak_dir это что?


Директория куда сваливать бэкапы

>from pathlib import Path


>


>p = Path('.')


>subdirs = [x for x in p.iterdir() if x.is_dir()]


>for subdir in subdirs:


>...


Спасибо, попробую использовать
85 2570219
>>69957
>>70028

там просто кто-то сильно нашутил с синтаксисом, сделал такой мини-пазл-квест с загадками в документации

держи рыбу, нахуй удочки:
https://www.online-python.com/uEsvDMKVzU

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

и да, перед тем, как модифицировать что-то на своём диске, убедись, что всё корректно. через принты, например. и лучше на 1 файле сначала попробовать (добавив break в конец цикла), чтобы случайно не удолить все файлы на своём компуктере
86 2570234
>>70110

>я очень похожее недавно делал


Игорь, ты? Кирилл мне сказал к тебе обратиться по поводу keycloak, якобы ты "все уже сделал", а ты мне нихрена толком не помог, самому пришлось это говно править
87 2570253
>>68047 (OP)
Не подскажете, как с помощью numpy считать файл в 3 вектора, с учетом того что данные отформатированы через экспоненту?
image.png29 Кб, 427x349
88 2570262
Анончики, есть более лаконичное решение из кортежа строк создать словарь? Глаза болят от ...split(' = ')
89 2570280
>>70262
совершенно нормальный код. можешь покороче сделать:

> dict_strings = dict(kv.split(' = ') for kv in strings)



лучше б у тебя глаза с названий переменных типа "dict_strings" вытекали
90 2570286
>>70262
re.sub( и погнал
91 2570290
>>70286
бля, как элегантно. надо попробовать
92 2570292
Элегантно использовать регулярку вместо сплита, записал
image.png40 Кб, 500x295
93 2570297
>>70286
>>70292

dickstrings = eval('{' + re.sub(r' = ', "': '", str(strings)[1:-1]) + '}')
NOTED.gif3,8 Мб, 498x498
94 2570303
95 2570313
>>70297
Как прокачать регулярки? Я всю жизнь их со шпаргалкой пишу
96 2570316
97 2570317
>>70313
Вкатиться в помойную контору занятую парсингом сайтов
98 2570328
>>70297
Как из этого сделать констрейнт с if ['=' in kv for kv in strings]?
99 2570337
Привет всем! Дурацкий вопрос.

Дано list2 = [(0, 'Боевик'), (1, 'Вестерн'), (2, 'Детектив'), (3, 'Драма'), (4, 'Комедия')]

Вопрос. Есть простой способ разделить без явного прохода цикла сделать:
i = [0,1,2,3, ....] или (), и
s = ['Боевик', ....] или ()

Если просто напечатать, то понятно, что можно типа:
for i, s in list2: print (i, s)
image.png36 Кб, 1024x627
100 2570344
101 2570347
>>70313
Не надо. Не используй это говно. Да тебя в норм конторе ещё и принудят не использовать.
102 2570348
>>70347
могу узнать причину, кхм, бабаха?
103 2570350
>>70344
Спасибо!!
А то писал только

i = [x[0] for x in b]
s = [x[1] for x in b]
что не очень как-то выглядит )
104 2570356
>>70348
Зачем, скотам типа тебя не положено.
105 2570360
Отвечает openAI компания chatgpt:

Регулярные выражения могут быть сложными для чтения и отладки, особенно если они длинные или сложные. Они могут быть неэффективны в плане времени исполнения, особенно если используются неоптимально. В некоторых случаях они могут вообще не работать правильно.
image.png810 Кб, 1929x1080
106 2570363
107 2570365
>>70360

>В некоторых случаях они могут вообще не работать правильно


Если ты, макака, их написал неправильно
image.png11 Кб, 385x174
108 2570372
>>70363
Супер тупой вопрос, но мне важен ответ.
Сижу через впн, а тут.
109 2570374
>>70372
Не понял, что нужно ответ законченный того что на скрине?
110 2570376
>>70374
Ну т.е. Нидерланды в бане у OpenAI?
111 2570381
>>70376
Вряд ли, перепроверь через него ли траффик идет, и да потом еще номер телефона попросит. У меня впн немецкий
112 2570385

> OpenAI


> анально огороженная параша

113 2570390
>>70379 (Del)
>>70379 (Del)
Дуровский с торгов зайдёт?
114 2570392
>>70219
Спасибо! Ошибки сыплются, но попробую разобраться что-к-чему
115 2570396
>>70381
У меня сейчас не хочет работать, пишет, что перегружен. Раньше работал.
Стикер512x512
116 2570397
Аноны, вопрос может и не совсем питонический, но итт как известно сидит элита раздела, авангард программирования на острие технологий, так что у кого ещё спрашивать как не у лучших из лучших.

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

Сравнение конечно дурацкое, но вот веб страница получает разметку с UI и браузер эту размету рендерит, но мы можем взять весь ДОМ страницы и растащить его по элементами и давать потом по кнопкам сигналы с помощю АПИ, например селениума
117 2570405
>>70397
Тебе к байтоёбам.
118 2570410
Есть эксперты фласка итт? нужна помощь с тестовым, буду благодарен, пишите контакты
119 2570412
>>70397
на джаве была какая-то прога, которая использует распознавание изображений кнопок. а по-другому-то никак, мало ли кто как ректы кнопочек рендерит и какой фреймворк использует, ДОМу страницы до такого зоопарка фреймворков и велосипедов далеко

тебе к джавистам
120 2570421
Привет, поделитесь, пожалуйста, тг чатами или дсами вкатунов в питон
121 2570428
>>70419 (Del)
написать приложение на flask (ориентировочное время выполнения - 24 часа)
Описание приложения: приложение разрабатывается с помощью фреймворка flask, работает с базой данных SQLite, имеет API и веб интерфейсы. Цель приложения: каталогизация и структурирование информации по различным веб-ресурсам.
1. API-интерфейс. Приложение принимает GET и POST запросы:
a. POST запрос №1 должен содержать в теле ссылку на какой-либо веб-ресурс. Приложение должно обработать полученную ссылку, разложить ее на протокол, домен, доменную зону и путь. Если в ссылке присутствуют параметры - преобразовать их в словарь. Полученные данные нужно сохранить в таблице базы данных, присвоив уникальный идентификационный номер (uuid). Возвращать пользователю ответ в формате json с разложенными данными и статусом обработки. Если пользователь прислал не ссылку - сообщать ему об этом в ответе.
b. POST запрос №2 должен содержать в себе csv файл с перечнем ссылок (формат файла - каждая новая строка одна ссылка). Все ссылки нужно обрабатывать по образцу POST запроса №1, а также обработка должна выполняться в фоновом режиме. В ответ добавить общий статус обработки файла (количество обрабатываемых ссылок, количество ошибок, количество ссылок, направленных на сохранение в БД).
c. GET запрос №1 должен выводить все сохраненные ссылки из БД (добавить возможность выборки по доменной зоне, id, uuid).
d. GET запрос №2 возвращает последние 20 строчек лога (см. п.2).
2. Логирование. Приложение должно проводить логирование своей работы с ротацией лог-файлов при достижении определенного размера файла (1 мегабайт). Необходимо логировать все полученные запросы и ответы приложения, а также информацию о добавлении в БД новой записи.
3. Веб-интерфейс. Требуется реализовать 3 веб-страницы для приложения. При вёрстке страниц требуется использовать фреймворк Bootstrap5. Постараться выдержать единый концепт оформления страниц.
a. Страница 1. Реализовать веб-страницу, содержащую формы для добавления в приложение новых веб-ресурсов. Формы должны добавлять веб-ресурсы как поштучно, так и загрузкой CSV файла. Формат CSV файла тот же, что и для API интерфейса.
b. Страница 2. Реализовать веб-страницу с таблицей, отображающую все ссылки из базы данных с разбивкой на страницы (пагинация, по 10 элементов на страницу). Также веб-страница должна содержать элементы управления - поиск по доменному имени, возможность фильтрования по доменной зоне, а также удаление конкретного элемента из таблицы и базы данных соответственно.
c. Страница 3. Реализовать веб-страницу, отображающую строки из лог-файла. Отображение должно быть динамическим (при обновлении файла - обновляется и содержимое веб-страницы).
Если вы владеете знаниями JavaScript - добавьте интерактивные уведомления на веб-страницах по результату выполнения каких-либо действий. Иначе используйте для коротких уведомлений функционал flask flash.
4. Авторизация (Необязательное, бонусное задание). Добавить в приложение авторизацию пользователей по токенам, дописать необходимые эндпойнты и шаблоны для авторизации и завершения сессии, функционал, описанный в пунктах 1-3 сделать доступны только для авторизованных пользователей. Логировать авторизацию, завершение сессии и попытки несанкционированного доступа.
5. Дистрибуция и контейнеризация. Код приложения должен упаковываться в docker-контейнер и автоматически запускаться при старте контейнера. Приложение должно быть залито на github. В проекте должен быть файл README с описанием проекта, эндпойтами и пошаговой инструкцией по разворачиванию и запуску проекта.
121 2570428
>>70419 (Del)
написать приложение на flask (ориентировочное время выполнения - 24 часа)
Описание приложения: приложение разрабатывается с помощью фреймворка flask, работает с базой данных SQLite, имеет API и веб интерфейсы. Цель приложения: каталогизация и структурирование информации по различным веб-ресурсам.
1. API-интерфейс. Приложение принимает GET и POST запросы:
a. POST запрос №1 должен содержать в теле ссылку на какой-либо веб-ресурс. Приложение должно обработать полученную ссылку, разложить ее на протокол, домен, доменную зону и путь. Если в ссылке присутствуют параметры - преобразовать их в словарь. Полученные данные нужно сохранить в таблице базы данных, присвоив уникальный идентификационный номер (uuid). Возвращать пользователю ответ в формате json с разложенными данными и статусом обработки. Если пользователь прислал не ссылку - сообщать ему об этом в ответе.
b. POST запрос №2 должен содержать в себе csv файл с перечнем ссылок (формат файла - каждая новая строка одна ссылка). Все ссылки нужно обрабатывать по образцу POST запроса №1, а также обработка должна выполняться в фоновом режиме. В ответ добавить общий статус обработки файла (количество обрабатываемых ссылок, количество ошибок, количество ссылок, направленных на сохранение в БД).
c. GET запрос №1 должен выводить все сохраненные ссылки из БД (добавить возможность выборки по доменной зоне, id, uuid).
d. GET запрос №2 возвращает последние 20 строчек лога (см. п.2).
2. Логирование. Приложение должно проводить логирование своей работы с ротацией лог-файлов при достижении определенного размера файла (1 мегабайт). Необходимо логировать все полученные запросы и ответы приложения, а также информацию о добавлении в БД новой записи.
3. Веб-интерфейс. Требуется реализовать 3 веб-страницы для приложения. При вёрстке страниц требуется использовать фреймворк Bootstrap5. Постараться выдержать единый концепт оформления страниц.
a. Страница 1. Реализовать веб-страницу, содержащую формы для добавления в приложение новых веб-ресурсов. Формы должны добавлять веб-ресурсы как поштучно, так и загрузкой CSV файла. Формат CSV файла тот же, что и для API интерфейса.
b. Страница 2. Реализовать веб-страницу с таблицей, отображающую все ссылки из базы данных с разбивкой на страницы (пагинация, по 10 элементов на страницу). Также веб-страница должна содержать элементы управления - поиск по доменному имени, возможность фильтрования по доменной зоне, а также удаление конкретного элемента из таблицы и базы данных соответственно.
c. Страница 3. Реализовать веб-страницу, отображающую строки из лог-файла. Отображение должно быть динамическим (при обновлении файла - обновляется и содержимое веб-страницы).
Если вы владеете знаниями JavaScript - добавьте интерактивные уведомления на веб-страницах по результату выполнения каких-либо действий. Иначе используйте для коротких уведомлений функционал flask flash.
4. Авторизация (Необязательное, бонусное задание). Добавить в приложение авторизацию пользователей по токенам, дописать необходимые эндпойнты и шаблоны для авторизации и завершения сессии, функционал, описанный в пунктах 1-3 сделать доступны только для авторизованных пользователей. Логировать авторизацию, завершение сессии и попытки несанкционированного доступа.
5. Дистрибуция и контейнеризация. Код приложения должен упаковываться в docker-контейнер и автоматически запускаться при старте контейнера. Приложение должно быть залито на github. В проекте должен быть файл README с описанием проекта, эндпойтами и пошаговой инструкцией по разворачиванию и запуску проекта.
122 2570431
windows API это вроде и называется.
123 2570437
>>70431
Там только размеры окна, координаты на столе и статус (свернут развернут).
image.png64 Кб, 744x723
124 2570453
чето лол
125 2570460
>>70453
RuChatGPT:

> кури мануалы, пидор

126 2570481
>>70428
Типо рвешь жопу, делаешь за 24 часа в тестовом задании софт который команда разработчиков за месяц делает, его у тебя "принимают", "мы вам перезвоним", твое задание отдают тестируют и заказчику и новых лохов идут искать?
127 2570484
>>70481
вроде не, час собесили до того)
128 2570538
>>70464 (Del)
Согласен, дохуища.
Решаемо, да, но сутки хз. Накосячил легко.
129 2570542
Писать многопоточный и тем более многопроцессорный код на питоне это совсем хуёвая идея? Они там собираются как-то заменять костыли из стандартной библиотеки или пора перекатываться в другой язык?
130 2570543
>>70481
Приемлемо, но вряд ли. С таким подходом галера недолго живёт.
131 2570547
>>70542
почему хуевая? Пиши. если у тебя много старой логики и нужно ее взгромоздить на сервер.

Вообще, заебали на Двач сваливать свои проебы. Лишь бы не думать самостоятельно
132 2570550
>>70542
Elixir, Julia, ...
133 2570559
>>70547
Ты пользовался threading, multiprocessing? Это же пиздец полный. Жуков потом заебёшься отлавливать.
134 2570576
>>70559
Я каждый день пользуюсь, а че.
135 2570579
>>70550
Вообще смотрю на Rust. Единственный популярный язык, где многопоточность из коробки и без лишней ебли.
136 2570586
Я когда искал работу и сложнее писал.
Там еще и на рякте просили фронт.
Пришлось выучить.
А что поделаешь такова жизнь такой вкат в 2023...
137 2570590
>>70585 (Del)
Говланг не подходит мне с точки зрения его ограниченных перспектив. Ржавого можно потом использовать в сторонних, низкоуровневых вещах. Есть некоторые задумки.
139 2570613

>>>round(1.5) == round(2.5)


>>>True


Чому так?
140 2570624
>>70613
До ближайшего чётного. Там есть какие-то обоснования и плюсы, я не помню уже.
Гугли bankers rounding, кароч.
141 2570625
>>70613

>round(1.5) == round(2.5)

image.png2 Кб, 173x54
142 2570627
>>70624

>До ближайшего чётного.


Что?
143 2570631
>>70627
Речь про .5, остальные как привычно.
1565234015253.png50 Кб, 283x281
144 2570632
>>70363
Ебало имаджинировали?
145 2570633
>>70596
У тебя проще. Плюс половина это "дополнительные баллы", а у анона вон, всё обязательное, кроме АВТОРИЗАЦИИ.
Плюс, у тебя действительно похоже на тест, а у анона столько специфических требований, что кажется как будто на него просто чужой спринт скинули.

И вообще давать сутки на такую хуйню это полное блядство и свинство. Чтобы это за сутки сделать надо нормальный опыт иметь да и то работать не будет всё равно без тестов, а уж если опыта нет, то человек себя прости изведет в попытке высрать этот кирпич. Такие сроки только мразь дать могла соискателю, т.е. человеку который может отчаянно нуждается.
146 2570640
Аноны, пояните за fastAPI. Насколько востребован и для каких проектов чаще всего используют
147 2570643
>>70624
Не-а. При банковском округлении должно быть минимум два знака после запятой (точки).
148 2570646
>>70643
Хотя нет, сорян, перепутал с округлением бухгалтерским (там есть разница).
Впрочем, вопрос остается преждним - с какого ляда подобная методика округления именно в питоне по умолчанию? Единственный язык, в котором я это встретил.
image.png151 Кб, 710x295
149 2570688
150 2570706
>>70428
написал что в срок не сделаю, скинул 2 другие части тестового, (это третья, лол, ну первые две тупо задачки) спрашивает а сколько тебе нужно чтобы доделать?
имеет смысл ДОДЕЛЫВАТЬ?
151 2570813
Если есть аналитики в треде, то, пожалуйста, посоветуйте куда смотреть после прохождения начальных курсов по питону. Знакомиться с библиотеками, решать ситуационные задачи?
152 2570837
>>70428
Тут ебатни на месяц. Им в хуй не посвистеть?
153 2570842
>>70543
Кому нужны долго живущие галеры? Это же еще зп платить. А так собрал ждунов на месяц, параллельно кандидатов тестируешь. Прошел месяц, ИП+=rand() и по новой.
154 2570848
>>70837
Грамотный джун должен трезво оценивать свои возможности. Если человек без возражений принимает задание на месяц с временем выполнения в сутки, то он либо совсем ничего не понимает в оценке сложности задачи, либо надеется где-то своровать уже готовый код. И первый, и второй вариант негативно характеризуют собеседуемого.
155 2570851
>>70842
Двачаю. Когда вкатывался, 2 раза подряд напоролся на такие галеры. Соответственно 2 месяца в трубу, а надзиратели вместе с моей зп пропали в неизвестном направлении. Самый лул, что недавно один из них приглашал на работу в очередную лодку-однодневку с уставным капиталом 10к и временем существования 5 дней.
156 2570852
>>70848
Невозможно понять сколько времени займет то что раньше никогда не делал. Это просто В ПРИНЦИПЕ НЕ РАЗРЕШИМАЯ задача.
157 2570857
>>70428

>При вёрстке страниц требуется использовать фреймворк Bootstrap5


Беги оттуда! Уже фласк должен быть наводить на мысли, а если бутстрап, то беги!
158 2570860
>>70857
Как трайал пойдёт, месяц потупит без оплаты в проде, потом следующим про полгода будет пиздеть.
159 2570862
>>70851
Так ну и? Ты как ответил?

>спс, не)))


Или как?
160 2570864
>>70718 (Del)

>если весь день этим не занимаешься


Так он же безработный, так что резонно запросить пять, а то и неделю на фул-день. Нормальный срок.
161 2570866
>>70848
Это задание не на месяц, тут по идее стандартные вещи. Но за день это перебор, если заготовки не использовать.

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

По приколу можно попробовать себе такой челлендж устроить и сделать. Чисто для тренировки, не планируя всерьёз устраиваться. А если вдруг предложат работу, запросить сразу нормальную джун+ зарплату, ну там соточку например для начала.
162 2570868
>>70862
Никак не ответил. Отправил в трудовую инспекцию актуальные координаты наёбщика Артёма (ныне Владислава). Проблема в том, что они фирмы регают на ноунеймов, т.е. формально он не при делах.
163 2570874
>>70868
А в чем прикол такой схемы?
164 2570877
>>70864
Безработному весь день кодить не получится, тоже дела есть - надо поспать до обеда, потом аниме посмотреть, почитать.
165 2570879
>>70874
Хз. Наверное, что за работу платить не надо, а на репутацию и качество похую. Новая фирма, новая репутация.
166 2570880
>>70877
Про 10 часов капчевания не забывай.
167 2570884
>>70877

>надо поспать до обеда, потом аниме посмотреть



бля, я так свой первый собес завалил...
168 2570886
>>70879
Как-то сомнительно. Много рисков, клиентов искать сложно, качество софта говно, а вертишься как при нормальной работе. Тут что-то другое должно быть или ты пиздишь.
169 2570889
>>70886
Это двач. Кто здесь не сеньор?
170 2570912
>>70889

>Это двач. Кто здесь не сеньор?


Я. Мне 18 лет, я ещё юная, хочу на подработку устроиться программисткой, учусь сейчас.
171 2570916
>>70848
Почитаешь эти истории с собесов когда челам там КАВЕРЗНЫЕ ВОПРОСЫ задают как будто они не на работку пришли проситься, а в передачу Своя Игра попали: протестируйте карандаш, что тяжелее пуд сена или пуд железа, вилкой в глаз или в жопу раз.
172 2570922
>>70889
Я, мне 32
173 2570933
>>70912
>>70922
Это была отсылка к сеньору-пиздаболу. Видимо, слишком тонкая.
174 2570934
>>70912
Сиськи с супом в тред, шлюха
175 2570941
>>70428
тащемто ничего сложно то тут нету.
но ебатни конечно дофига.
я бы слал лесом если тестовый больше 2 часов на выполнение
176 2570944
>>70912
устраивайся. разрешаем
177 2571034
>>70941
а как послать когда это первый отклик за пол года(
image.png430 Кб, 1696x2014
178 2571041
Как же это охуенно.
image41 Кб, 650x451
179 2571045
>>69647
Сделал вот так
180 2571132
>>71041
как это выглядит в виндовой цомиде/поверщели?
image.png119 Кб, 686x720
181 2571148
182 2571182
Аноны, имеется книга Марка Лутца по питону 2.6 и 3.0.
Актуальна ли она в наше время, или лучше купить книгу для новых версий питона от других авторов?
183 2571193
>>71182

>книгу для новых версий питона от других авторов


да
184 2571197
>>71193
например?
1555940285239.png183 Кб, 341x500
185 2571200
>>71182
Мне вот эта в своё время зашла. Не знаю, есть ли новые издания
186 2571226
Вы всерьез эти справочники читаете, нахуя?
187 2571253
>>71226
для справки
188 2571323
>>71132
Так же пиздато, по крайней мере на десятке.
189 2571434
>>71226
для серьезности
190 2571486
>>71041
извените, а с чего я должен протащиться?
это что, первый консольный фреймворк?
image.png77 Кб, 1666x303
191 2571578
Драститя.
Есть маленький сервис на джанге, который даёт определённые права на определённые действия зарегистрированным и запросившим хуям.
Структура: две таблицы
А - данные о хуях
В - данные о жопах (внешний 1кМ ключ к хуям)

Когда хуй регается в системе, в таблицу А заносятся данные о нём и выдаётся жопа, которую он может взять(1) или забить(2) на потом.
Если он взял, то всё в порядке, в таблицу В заносятся данные о жопе, но если он забил (закрыл вкладку, не подтвердил действия и тд), то образуется мусор в таблице А, у которого нет отношения.
Мне хуи без жоп не нужны, я решил замутить мироскрипт на ликвидацию одиноких хуёв, а именно: в url прописал паттерн, который первым запускает скрипт очистки, потом переходит на страницу регистрации.
Вопрос про скрипт - как можно оформить его короче например через exclude? Иными словами, как по-другому (и главное где, кроме костыля с паттерном url) можно его применить? Какой метод можно переопределить в модели или в классах во вьюхах, чтобы в будущем не пердолиться и не изобретать велосипед?
Спасибо.
Screenshot20230112230228Excel.jpg88 Кб, 1080x506
192 2571591
Есть xlsx файл с 3к записями.
Файл представляет из себя столбец с: уникальным id, месяцем(январь-декабрь), статус(12 разных).
Нужно взять id и прогнать через rest запрос, получив в ответ true/false. С этим проблем нет.
Проблема в том, что я не могу придумать, как это все адекватно раскатать в табличку вида количество значений в определенный месяц с определенным статусом с ответом true/false.
Как примерно должно выглядеть прикрепил.
Мне в голову приходит только или ручной подсчет через фильтры в экселе и создание кучи переменных, или заделывание словарей с дальнейшим парсингом.
В общем нужна помощь, как это просто сделать без костылей
193 2571608
>>71578

>Есть маленький сервис на джанге


У меня сейчас мирок порвался, спасибо. Лид, 32 годика.
194 2571610
>>71486
У тебя на пиках дедовская хуйня, а у меня великолепный TUI.
195 2571616
>>71608
Спасибо за реакцию.
По сравнению с бигдата, там около 65к записей всего.
196 2571667
>>71591
pandas groupby/pivot
197 2571734
>>71578
Полная хуйня. Проверил только что.
Если пустых записей > 200, то таймскейл респонза возрастает десятикратно. Это можно будет ронять сайт через скриптик генерации имен, пиздец. Чо делать-то?
198 2571745
>>71578
Очевидно не заносить данные о хуях, пока не будут данные о жопах, а временно хранить их в сессии
199 2571749
>>71323

покажи
200 2571754
>>68047 (OP)

>Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки.


Я надеюсь, не зря читаю про черепашку...
201 2571757
>>71754
обучишь нейросеть и будешь туртлем рисовать великолепные картины
202 2571767
>>71749
pip install textual
python -m textual
203 2571769
>>71767
но мне лень
204 2571771
>>70262
>>70297
Я, конечно, больной ублюдок и вот это вот всё, но вариант со сплитом по-моему лучше соответствет питоновской идеологии. Ведь явное лучше неявного, а регулярки это...

Если смущают пробелы в сплите, то можно что-то типа

> "А = Б".split('=')[0].strip()



>>70313
Регулярки на самом деле очень легко пишутся. И чем дальше, тем сложнее читаются. Даже не очень скилловый спец может написать что-то такое:
https://emailregex.com/
Но нужно быть профи и/или потратить уйму времени, чтобы правильно понять, что там написано.

Если коротко, то главное понять концепцию: находишь якоря, которые будут характерны для твоей строки, выделяешь закономерности и описываешь, как твоя строка может изменяться.
Уловил? Читай подробнее:
https://habr.com/ru/post/565726/
И ОЧЕНЬ ВНИМАТЕЛЬНО читаешь первый комментарий - о том, почему регулярки это зло.
Например, мне очень долго один сервис отказывался слать письма (при этом пускал в систему по мылу, блджад!) потому, что я использовал плюшки RFC 5233 ( https://www.rfc-editor.org/rfc/rfc5233 ). И это ещё достаточно обычный кейс, а всяких других "ОСОБЫХ" сценариев может быть вообще немеряно, например, с поддержкой пьюникода в URI (а, значит, например, и в e-mail) можно засунуть что угодно, от иероглифов, до сраных ЭМОДЗИ: https://habr.com/ru/company/productivity_inside/blog/547456/ .
205 2571772
>>71734
У тебя какая-то хуйня в логике.
206 2571773
>>71771
ЗЫ! Насчёт емейла! Я быстро не нашёл, но был регексп для 100% определения корректности адреса, размером с печатную строку. Кажется, это был какой-то RFC, но найти его быстро не получилось.
207 2571776
>>70397
Луркай AutoIT, в нём есть и пипетка, определяющая ТТХ элементов и жмакалка автомагическая, админы его используют, чтобы писать автоматизацию всяких установщиков.
208 2571779
Кароче есть такой скрипт https://pastebin.com/ii6FPHV7, типа обертка на venv. В общем я делаю один(-F) exeшник в pyinstaller, и проблема в том, что скрипт не работает если я использую exe файл (не создает venv нормальную просто пустые папки), по если вызвать скрипт по обычному, то все нормально.
пик 1 exe, пик 2 по обычному.
в гугле нихуя...
209 2571780
>>71771
Спасибо за развёрнутый ответ. Обязательно прочитаю завтра
210 2571784
>>71034
А ты расшарил и ждал откликов, или адаплтировал и резюме под вакансии и рассылал во все места?
Потому что первый вариант прокатит только если ты реально представляешь из себя что-то.
Я, правда, никогда не работал кодером... И работу искал только дважды, в прошлый раз - 10 лет назад, с тех пор новые места (уже трижды) меня сами находили. Но это скилл, помноженный на репутацию со связями.
211 2571787
>>70428

>ориентировочное время выполнения - 24 часа


Три рабочих дня, наверное, а не сутки, как почему-то подумали местные Антуаны...
Теоретически, если опыт есть, то реально делается. Но это нужен прям опыт решения такого, без него даже считать бесполезно.
Не очень джуновое задание.
212 2571803
А нормальная ли практика создавать в проекте условный conf.py и там создавать переменную ROOT_DIR, которая содержит путь до корня проекта Path(__file__).resolve().parent? (не джанга)
213 2571814
>>70640
Ну, я прямо сейчас переписываю API, общающееся JSON'ами с клиентом с Flask на FastAPI, получается удобно, особенно благодаря Swagger UI, можно даже без клиента работать.

>>71182

>Марка Лутца


Его многие не любят. По-моему зря. Сам я вкатывался вообще по https://pythonworld.ru/samouchitel-python , но с оговоркой, что это далеко не первый мой язык и мне нужно было только понимание отличий от других языков, чтобы начать. А Лутца читал для большего понимания.

> по питону 2.6 и 3.0.


Найди свежее. Там в 3.6+ были приятные фишки. Подробнее не вспомню и без них жить можно, но с ними - приятнее. Одна аннотация типов ( https://docs.python.org/3/library/typing.html New in version 3.5) чего стоит!

> или лучше купить книгу для новых версий питона от других авторов?


Я бы сейчас попробовал это:
https://goalkicker.com/PythonBook/
по крайней мере другие книги с этого сайта, которыми пользовался, были просто агонь.
image.png106 Кб, 768x370
214 2571834
Почему ООП является де-факто стандартом коммерческой разработки? Почему нельзя писать проекты тупо на функциях? Любая программа выполняет бизнес-процесс, почему его нельзя реализовать в виде процедурно-функционального кода?
215 2571835
>>71834
В предпредыдущем треде уже это обсуждали.
216 2571841
>>71814
С 3.7.0 надо вкатываться! С этой версии если не ошибаюсь асинхронщину ввели
217 2571868
>>71841
Ошибаешься, в современном виде её ввели в 3.5
218 2571869
>>71834

>Почему нельзя писать проекты тупо на функциях?


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

Но не везде надо проделывать манипуляции с набором исходных данных. Где-то надо тупо обрабатывать состояния, например.
219 2571886
>>71869
Ну не знаю. Я вот по работе написал аппу-шаблонизатор для жс-кода. Там и коннекты к мускулю, и кеш в редис, и фастапи, и все на свете. Все на функциях.
220 2571889
>>71886
А надо было на методах писать, пидр.
221 2571890
>>71889
Извинись, дурень .
222 2571897
>>71889
Почему? Мне удобнее и понятнее было эту хуйню написать на функциях.
223 2571907
>>71834
Если ты работаешь на галере, по гайдлайнам, то спроси у своих авторов гайдлайнов, зачем.

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

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

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

Ну и полиморфизм... У меня однажды был кейс для него, но поскольку задача была довольно искусственной я не уверен, что это полезная штука.
224 2571911
>>71907
Впрочем, есть подозрение, что тут: https://pythonworld.ru/osnovy/inkapsulyaciya-nasledovanie-polimorfizm.html
неправильно определили инкапсуляцию. А я именно сюда залез за определениями. Так-то я просто помню, что три святых коровы ООП это наследование, инкапсуляция и полиморфизм.
И хорошо помню только про первую и последнюю.
225 2571915
>>71779
bump.....
226 2571928
Хули у вас так сложно в питоне пакеты делать? Сделай __main__ функцию, сделай __main__ модуль, сделай entry_points и только после этого можно запускать из консоли.
227 2571947
>>71928
ппц как сложно
228 2571968
>>71834
смотря какой контекст.
я пишу 50 на 50 ооп и процедурка.
просто потому что в моих случаях так удобнее.
можешь про DDD загуглить
229 2571981
>>71928

в пакете карп в пакете
230 2571982
>>71834
Потому что в тырпрайзе ты оперируешь сложными структурами, которые имеют свойство гулять по коду и при этом иметь состояние, а такое поведение проще описать через объекты классов, а не плодить замыкания.
231 2571985
https://youtu.be/uqeQmkGULnY?t=2627

держите домашнее задание вкатунье
232 2571987
>>71610
Да я понял. Джангодебилы мечтают использовать css в консольке.

Но, вообще-то, это бесполезная хуйня .
233 2571990
>>71897
А это и не для тебя.
Просто пойми, все ООП не для тебя, а для коллективного результата
изображение.png138 Кб, 361x314
234 2571992
>>71985
Sochno.
235 2571993
>>71992
А ты не смотри другие видео, задание лучше сделай.
Screenshot70.jpg186 Кб, 1865x929
236 2572059
Ну полезный сайт. Даёт задания на темы, которые мелком знаю, но никак не доходили руки углубиться. Теперь хоть понимаю, что в этих каракулях написано.
Из всех на которых пробывал делать задания этот больше всего понравился
237 2572102
>>71886
Выёбываться можно, никто не запрещает. Как поддерживать?

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

А теперь подумой, такое уж у тебя ФП или просто неподдерживаемые извращения от неумения применить ООП, когда оно нужно.
238 2572132
>>70585 (Del)
Двачую адеквата
239 2572144
когда просто функции вместо классов лепишь это вроде бы называется процедурное программирование, функицональное это что-то про стейты или типа того извините я крудошлеп
изображение2023-01-13171141311.png11 Кб, 630x88
240 2572244
Помогите пж, в гугле искал, и если правильно понял, в первом вопросе он так отправляет файлы для того, чтобы балансировать нагрузку и блокировать ненужные запросы. Для второго вообще ничего не нашел внятного
241 2572277
>>72244
что за безграмотное говно это писало? ты устраиваешься к киберкриминалу?
не устраивайся к ним.
242 2572282
>>72277
Не, это вопросы к экзамену в вузе, это препод просто на отъебись накидал, что он спросит может
244 2572340
>>71982

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


Кстати, в 2к23 это уже не совсем так. Сейчас тыр-тыры стремятся делать маленькие оконченные кусочки и выставлять наружу не код, а REST, потом запихнуть это в контейнеры и запускать их оркестратором (K8s или вообще Serverless).
И вот тут с одной стороны появляются накладные расходы (потому что HTTP это оверхед для простого общения, а там ещё в коде нужно реализовать сериализациею-десериализацию хотя бы в JSON и ладно бы на пистоне это делается парой строк, но на крестах каких-нибудь...), с другой стороны стандартизация, удобство MQ, балансировки и т.п.
И вот тут главное реализуй хорошее API, а использовал ли ты для этого классы -- проблема только твоего подразделения.
245 2572364
>>72340
Ну вот у тя джва реста между собой общаются, причем первый является продолжительным клиентом второго, т.е. дёргает один эндпоинт, получает данные, че-то с ними делает, дёргает второй эндпоинт, получает данные, че-то с ними делает, всё мёржит и хранит где-то или отдаёт в третий рест. Ты на каждое такое дёрганье будешь вызывать функцию с requests.get, создавая свою сессию с своим пулом?
246 2572365
>>72309
Ооо, спасибо огромное! Что за сайт/приложение такое?
image.png74 Кб, 283x240
247 2572384
>>71985
Забавное. А на остальные ролики будет ссылка?
>>71992
Ага, а это видел?
>>72340

>запихнуть это в контейнеры


В образы, пофиксил тебя, не благодари.
>>72364
Именно так! Такова философия API: запрос-ответ это конечное действие, API не сохраняет внутри себя результаты запросов. Код же вообще отделён от данных, пока в контейнерах крутятся аппликухи на самых разных языках сами данные лежат отдельно - в Постгресе, ЕТЦД, Монго, Редисе или ещё где.
248 2572390
>>72384

>сами данные лежат отдельно - в Постгресе, ЕТЦД, Монго, Редисе или ещё где


Промежуточное их состояние незачем хранить где-то, кроме как в памяти. Но хуй с ним. Опять же на каждую запись/чтение данных в/из бд/редиса/етц ты будешь вызывать функцию, внутри которой будешь инициализировать новое соединение с новым курсором и т.п.?
249 2572414
>>72390

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


Что тебе непонятно в этой фразе:

> запрос-ответ это конечное действие


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

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


Да. Архитектор уже подберёт более подходящее в конкретном месте. Где-то это будут сверхбыстрые Ин-мемори ДБ, где-то что-то ещё, вплоть до КликХауса, ГринПлама и других ОЛАП.
Работа с in-memory очень быстрая, подключиться к ней и прочитать/записать быстрее, чем прочитать/записать что-то с диска при установленном заранее соединении.

Кстати, про серверлесс слышал? Там всё вообще круто: когда к ресурсу обращаются после паузы он СОЗДАЁТСЯ из ниоткуда (запускается из образа, лежащего поблизости, но самого процесса в момент обращения при этом нет), а когда отработает -- контейнер выключается и не существует до следующего обращения.

Какие там могут быть промежуточные состояния?
Да, промежуточные вещи и сохранения чего-то между сессиями это вопрос к клиенту, такое может возникнуть у него. Например, азы: гет-запрос авторизации, передал логин-пароль, получил сессионный ключ, потом передаёшь гетом для получения данных определение нужного тебе объекта, приложив к нему сессионный ключ. Вот тут есть промежуточное хранение, но оно не происходит на сервере.
image.png203 Кб, 916x579
250 2572431
>>71985
о да ебать. 3 года поработал и уже решил начать выебываться лол.
по сабжу задание не сложное.
251 2572433
Скажите плиз, почему так работает а так - нет:

Работает
b = list(a)
i,s = zip(b)

а если i,s = zip(
list(a)) - хуй показывает, говорит

ValueError: not enough values to unpack (expected 2, got 0)

Там же однохуйственно тип "list" ...
252 2572440
>>72433
перед "list" есть звёздочка, конечно.
изображение2023-01-13145731811.png7 Кб, 478x278
253 2572450
254 2572452
>>72414

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


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

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


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

>Да. Архитектор уже подберёт более подходящее в конкретном месте.


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

>Кстати, про серверлесс слышал? Там всё вообще круто: когда к ресурсу обращаются после паузы он СОЗДАЁТСЯ из ниоткуда


Ну да, и создаётся нигде и никакие мощности и время не тратятся на это, у нас же всё бесконечно масштабируется! И сеть у нас везде гигабитная и сервера не ломаются.

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


Обычно это какой-то оаутх2.0 с внешним кейклоаком, а не твоя локальная штрибанина. И ключ ты получаешь через редиректы и тебе его надо хранить на клиенте, но срок его действия тебе надо чекать уже на бэке, или для тебя это происходит атомарно и без промежуточного состояния? Ок.
255 2572462
Чето дебилом себя чувствую от вашего обсуждения.
256 2572466
>>72433

в "a" что у тебя?
257 2572469
>>72450
Зависит от данных, которые у тебя в переменной a.
258 2572499
>>72462
На самом деле, дебилы они. Не владеют терминологией и используют жаргон второго сорта.
259 2572502
>>72499
Внезапно соглашусь, тут идёт борьба знаний терминологии, но не логики и уж тем более не работы.
260 2572505
>>72499
>>72502
Простите, илита питухон-треда, расскажите за правильную терминологию, логику и уж тем более работу, а то во всё это только вы можете, а остальные дебилы и второй сорт.
261 2572522
>>72505
Чел, мутный язык означает мутное мышление и несистемное образование. Это классика.
262 2572535
>>72522
Пока я только вижу сноба, который использует разные терминологии для описания своего непонимания. Ты в одну гребёнку сливаешь "мутное мышление" и "не владение терминологией", это вообще разные вещи, которые не обязательно вытекают друг из друга. Это классика. Учить других как надо понимать, ведь как они понимают, это непонимание, а вот как я понимаю, то это понимание.
263 2572586
>>72535
Один скажет "передвинь этот стол под окно", у тебя же похоже на "заебент эту хуйню под ту пизду". Явно, что тебе это понятнее, но это не говорит о том, что это правило для всех распространяемое.
264 2572593
>>72535

>Ты в одну гребёнку сливаешь "мутное мышление" и "не владение терминологией", это вообще разные вещи, которые не обязательно вытекают друг из друга.



Ого, чувак, а ты умеешь мыслить образами или мыслишь-таки словами? Только не говори, что мыслишь какими-то другими радужными словами из мира фей, а не вот этим вот «ебать флоу азы-газ стейты хуйнём».
265 2572622
>>72452
Болезный, тебя заносит.
Кончено, на бэке есть логика и многое другое. У тебя есть условная функция, скажем,
@app.post('/api/v.0.1./register', status_code=status.HTTP_201_CREATED)
async def register(request: dict = Body()):
# some code
returtn {"result": "OK"}

Она принимает JSON, возвращает в случае успеха заголовок с кодом 201 и тело с ЖСОНом '{"result": "OK"}'
Внутри неё может быть овер-дохуя всего. что угодно: зайти в БД, обратиться по API к отдельному сервису, и так далее, в ней может быть ветвление и проверка нескольких разных сервисов и ещё чёрт-знает-что. Но это функция. Данные о новом юзере - передала в какую-то базу, данные о неудачном логоне - в систему логирования/безопасности и т.п. Но когда отработал райз/ретурн - она забыла все состояния. Всё, этим история кончилась и никакого объекта на сервере не хранится. Объекты тут вообще не нужны.

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


Странный вопрос в эпоху победившего потреблядства.
Потому что "а зачем?", ведь стандартное решение просто балансировать, тестировать, проще строить очереди и т.п. Через тот же свагер можно тестить АПИ вообще через браузер, без клиента. Вот раньше, да, когда считали каждый такт процессора никому не приходило в голову оборачивать всё в текст, а потом ещё и оборачивать в хтмл.
266 2572624
>>72502
Если тебе есть, как меня поправить, ю а велком, я всегда открыт для критики.
>>72384>>72414>>72622-кун.
267 2572639
>>72622
Долбоёб, я тебе говорю про промежуточное состояние данных, с которыми ты работаешь внутри своей функции. Ты эти данные можешь обрабатывать как хочешь, агрегации считать, передавать в другой слой, в другого клиента или другой апи, и будешь ждать от него ответа. И передавать ты можешь хоть строкой, хоть списком, хоть словарём, хоть кастомным объектом или моделью пайдантика - мне похуй, ты везде (в концепции питона) передаёшь объект.

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


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

Что тут непонятного? Никакого хранения промежуточного стейта нет, но промежуточные данные ты держишь в памяти во время отработки функции.

>Странный вопрос в эпоху победившего потреблядства.


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

>>72586
>>72593
Я всё ещё не понял, в чём ваще непонимание, поэтому дальше просто скипну, читать все эти доёбы про какой-то не такой язык и не такую терминологию лень.
268 2572679
>>72639
Ты с какими-то претензиями пидор, вообще... Не нравится — просто не читаешь, хули лезешь-то?
269 2572683
>>72679
Пошёл в пизду, хуесос, ты сам влез в разговор с претензиями ко мне за мои терминологии и мутное мышление, при этом так и не написал, что конкретно непонятного я написал, а только своё ебло раскрыл, хранитель сакральных знаний хуев.
270 2572698
>>72683
Вообще-то это я влез, пидорас ты тупой, зелёный кусок говна с надменностью как у золотого слитка, пишешь хуйню налево и направо, но как только тебе показали, что ты пишешь хуйню - обидка и игнор. Я хуею с этих девочек.
271 2572704
>>72683
Никто тебе никуда не влезал, анально контуженный. Брезгую.

Писал я не тебе вообще. Ступай к хуям на помойку, козёл.
272 2572708
>>72698
Да мне похуй, кто из вас двоих/троих влез, ебанат. Тебя/вас спокойно попросили написать, что не так, но вы до сих пор ничего не разъяснили, кроме пустой демагогии, ещё и в надменные меня записали, охуеть конченные.
273 2572711
>>72704
Скройся, ослина спидозная.
274 2572727
девочки, не ссорьтесь
275 2572740
>>72708

>ещё и в надменные меня записали


Не только. Ещё обоссали.
276 2572743
>>72740
Пока ты только себе в рот нассал.
image53 Кб, 479x479
277 2572749
>>72743
Да не гори ты так, мань.
изображение.png483 Кб, 811x919
278 2572752
279 2572764
>>72469
a = [(0, 'Боевик'), (1, 'Вестерн'), (2, 'Детектив'), (3, 'Драма')]
изображение.png14 Кб, 651x168
280 2572768
281 2572769
>>72433
Покажи скриншот того, что тебе выдало ошибку
282 2572772
>>72764

>a = [(0, 'Боевик'), (1, 'Вестерн'), (2, 'Детектив'), (3, 'Драма')]



но ведь всё работает
283 2572863
Нужно сложить друг с другом две строки с числами.
Инт использовать нельзя. Потому что цифры в примерах такие длинные, что инт просто не будет с ними работать.

По коду проверяем сначала не пустые ли строки получили
потом делаем строки равными, заполняя нулями.
Дальше смотрим наиболее длинный отрезок строки, который мы можем взять для превращения в инт, что бы они были равными. Притом с числом выше 10000 код начинает работает ещё медленее,

Ну а дальше складываем строки и проверяем не появилось ли лишней единицы в конце, если допусти 99+1 складываем
Если да, единицу запоминаем. Если цикл закончился, а единица осталась, её нужно добавить в начала цикла.

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

Может надо лучше разрезать строку на список и уже по нему проходить, а то явно он много времени тратит на прохождение по индексу каждой строки.
284 2572873
>>72863
всё проходит, только по времнени нет
285 2572882
>>72874 (Del)
sys я импортировал, но данной функции в нём нет
Screenshot74.jpg20 Кб, 467x150
286 2572942
Ладно, решил
Screenshot75.jpg30 Кб, 600x203
287 2572947
>>72942
А вот оптимальное моё решение, но оно работает куда медленее, хоть и тест проходит, чем mpz, ну для такой фигни явно и нужно модули использовать для большей скорости, что на C написаны
288 2572948
>>72947
В смысле не моё, а оптимальное решение того, что я пытался сделать
289 2573031
Аноны вот создает вложенный словарь словарей, значение - список:
nested_dict = dict((k,[]) for k in ('key1', 'key2'))
Потом добавляем в список что-нибудь.
nested_dict['key2'].append('bar')

Чому в списке 'key1' тоже не появился 'bar', он появился только в списке куда я его аппендил. Я же помню что тут была такая ебатнина что каждый список использованный в генераторе указывал на один обьект. Ну вы поняли? на самом деле это должен быть один список. Я вот отчетилво помню что так и было и я долго баттхертин из за токой логики. Прошел месяц я опять юзаю этот генератор и всё работает нормально. Как так.
290 2573074
>>70297

>[1:-1]


Всё понятно, но почему слайс такой? Объясни, пожалуйста.
291 2573080
>>73074

> >>> 'Всё понятно, но почему слайс такой? Объясни, пожалуйста'[1:-1]


> 'сё понятно, но почему слайс такой? Объясни, пожалуйст'

292 2573087
>>73080
Да не гори ты. Я понимаю, что без этого слайся получится дикт из одного элемента, а именно - ключ в виде тапла, но как это решает данный слайс [1:-1] - не понимаю.
1625741303954.jpg64 Кб, 720x963
293 2573089
>>73087

> >>> t = (1, 2, 3)


> >>> str(t)


> '(1, 2, 3)'


> >>> str(t)[1:-1]


> '1, 2, 3'

294 2573105
>>73089
Спасибо, так понятнее. Никогда не сталкивался со слайсами строки в рамках работы с eval. Всегда думал, что -1 - это априори последний элемент итератора.
Т.е. [0] - это скобка (, соответственно [:-1] тоже должна была бы быть скобкой ).
295 2573114
>>73105
[:-1] это весь сиквенс без последнего элемента. [:-2] это весь сиквенс без двух последних элементов. и так далее
296 2573115
>>73031

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


Это не в генераторе, это если бы ты делал
l = [[] * 8]
тогда бы появлялось во всех
image.png1,1 Мб, 1280x1280
297 2573118
>>73114
Блядь, я такой тупой, спасибо тебе большое.
16537660128440.mp41,3 Мб, mp4,
640x480, 0:10
298 2573120
299 2573171
Аноны, вот я делаю ярлык для файла скрипта питона .ink , как мне сделать, чтобы при запуске этого ярлыка скрипт получал путь расположения именно этого ярлыка.
__file__ , sys.argv[0], os.getcwd()
Это всё возвращает путь до самого файла программы, а не до ярлыка.
300 2573201
>>73031
Че несёшь охуеть, какой словарь словарей, ты создаешь один словарь с 2 ключами, значения которых пустые списки, т.е. каждому ключу соответствует свой список в памяти. И ты по индексу обращаешься к отдельному списку и в него аппендишь. Схуяли у тебя список, доступный по key1, должен ссылаться на список, доступный по key2? Это джва разных объекта в памяти, айдишники хотя бы сравни.
301 2573215
>>73201
Если ни хуя не понимаешь о чем речь, не лезь.
302 2573229
>>73215
Так разъясни, гений, о чём речь.
Он создаёт 2 разных списка, когда делает (k, []), а не создаёт сначала список через условный a = [], а потом использует ссылку на него в (k, a).
И генераторное выражение типа nested_dict = {k: [] for k in ('key1', 'key2')} тоже самое вернёт.
303 2573235
>>73171
в свойствах ярлыка
304 2573282
>>73235
Как получить путь до ярлыка средствами питона?
305 2573283
>>73229
Блядь какой ты душный, ещё и визжишь непонятно с какого хуя, будто тебе лично хуйню сделали. Что у тебя блядь случилось. на собесе хуем по лбу настучали, что ты на двач прибежал на анонов срываться.

output = dict.fromkeys(('a', 'b', 'c'), [])
output['b'].append('foo')
306 2573291
>>70542
Норм если тебя не заботит что загружаться будет 1 ядро максимум.

>>70559

> threading, multiprocessing


Есть же богоугодные futures, зачем это зашкварное говно.
307 2573306
>>71834
Ну мы пишем на функциях, потому что лид угорает по хаскеллю и фп. Я сначала нос кривил а потом втянулся
>>71787
Согл
Untitled.png34 Кб, 982x514
308 2573341
>>73171
>>73282
Мусіш зрабіць дзве рэчы. Змяніць каталёг запуску ў якасцях ярлыка, выклікаць os.getcwd().

https://www.online-python.com/f3BM1E0WoV
Untitled2.png16 Кб, 363x509
309 2573344
>>73341
>>73171
і яшчэ, у якасцях ярылка замест каталёгу, пішы
%CD%, то бок current directory.
310 2573345
>>73341
>>73344
Красивый у вас в Японии язык, всё-таки. Но ты предлагаешь прописывать воркинг дир руками. Это не решение. Может мне ещё внутри скрипта прописать путь до него.
Ладно я уже понял что средствами одного питона это не сделать.
image.png650 Кб, 768x512
311 2573374
>>73341
>>73344

Тут ручаі як рушнікі
І танчаць дзеўкі ў карагодзе.
З-пад мазалістае рукі
Ячмень расце і жыта родзіць.
312 2573405
>>73283
То что ты написал это вообще другой способ создания словаря через классметод, где второй необязательный параметр по-умолчанию ссылается на один и тот же объект, если он изменяемый, это и в доке написано:
https://docs.python.org/3/library/stdtypes.html?highlight=fromkeys#dict.fromkeys
Свои хуиные мечты себе в очко засунь, маня, я так и не увидел пример создания того, что он хотел через конструктор словаря.
313 2573570
>>73345

>Но ты предлагаешь прописывать воркинг дир руками. Это не решение.



прекрасно решает поставленную тобой ИТТ задачу. не нравится - научись формулировать, что тебе нужно
image.png35 Кб, 885x426
314 2573615
>>68047 (OP)
Пытаюсь решить трансцендентное уравнение для векторной функции размерностью 875 на 1. При вызове root пишет, что
ValueError: The array returned by a function changed size between calls
Что я делаю не так? За питон шарю исключительно в контексте того что прочитал в документации.
315 2573637
>>73615
У функции почему-то меняется размер выхода. Почему - непонятно. Попробуй добавить в функцию печать размера, может, поможет понять, при каких параметрах такое происходит.
316 2573642
>>73615
Только я не понимаю чего-то. У тебя значение функции - вектор, а аргумент - одно число? Как ты ноль собрался искать?
317 2573652
>>73642
Спасибо, я чет тоже задумался и понял, что ему надо было на вход давать x0 в виде вектора той же размерности что и функция
image.png385 Кб, 584x499
318 2573695
>>73615

>Пытаюсь решить трансцендентное уравнение для векторной функции размерностью 875 на 1.

319 2573831
Реквестирую книги по разработке ПО на Python. Типа, если я знаю язык, но интересует то как в масштабе это делать. Что-то типа "Чистый код", но только на питоне. Сейчас читаю "Clean Code in Python" Mariano Anaya - пока вроде норм. Еще из такого читал "Design Patterns in Python - Common GOF (Gang of Four) Design Patterns implemented in Python" - тоже неплохая, чисто по паттернам.
320 2573931
>>68047 (OP)
здрасьте, я тут новенький, ткните носом где ваще нормально понять как работает asyncio? Есть ли что-то кроме официальной документации, что позволит не ломая голову проследить как она работает? позязя
321 2573937
>>73931
Мэттью Фаулер: Asyncio и конкурентное программирование на Python
322 2573945
>>73570

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


Научись читать задачу не жопой.
323 2573947
>>73945
тебе объяснили
324 2573949
>>73947

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


Да я понял что у тебя с логикой проблемы.
325 2573952
>>73949
всё как ты просил. соответствует ТЗ. не нравится - сам виноват, что не можешь донести свою задачу
326 2573956
>>73937
выглядит секасно. Читать подряд от начала до конца как "Войну и мир"?
Стикер512x495
327 2573960
>>73952

>сам виноват


Нет, это ты идешь на хуй, клоун. Если тебе мозгов не хватает понять что требует заказчик (я), то будешь переделывать или уволен. Твоё нытье что ты так задачу понял ни кого не волнует.

Аналогия. Задача: как человеку в пустыне получить координаты своего местоположения средствами компаса.
Ответ от клоуна: ЫЫЫ да проста развирнуть компас там ссади написаны кардинаты ыыы мы их туда раньши записали.
328 2573967
>>73960

> пук

Первая программа на питоне 329 2573968
Написал стековый калькулятор на питоне, оцените
https://github.com/vertically-challenged/python-calc
330 2573970
>>73968
На изучение питона потратил не больше часа
331 2573972
>>73970
теперь напиши LL1 парсер сишки
332 2573979
>>73956
Не знаю, я не читал, мне хватило этого:
https://www.youtube.com/playlist?list=PLlWXhlUMyooawilqK4lPXRvxtbYiw34S8
333 2573982
>>73972
Но я до сих пор не понял, зачем мне нужен питон, если я знаю JS. Решил его выучить, только чтобы помочь с курсовой подруге
334 2573989
>>73968
Ты по какому-то уроку делал? Чому именно такая структура файлов?
335 2574003
>>73982
1 Есть миллиард модулей и библиотек на все случаи жизни.
2 Проще синтаксис - можно кататься ебалом по клаве и всё равно получится софт.

Таким образом питон это воплощение мечты анона выраженной в максиме: "Ничего не делаешь - а всё есть".
336 2574008
>>73982
игры разрабатывать
337 2574011
>>74003
Кататься ебалом по клаве и всё равно получится софт - это про перл, а не про питон. Питом - все можно написать только единственным способом.
338 2574014
>>73989
Нет, просто переписал свою же программу, когда-то написанную на JS: https://www.youtube.com/watch?v=eTXrGfVAydA&t=52s

А что особенного в структуре?
image.png21 Кб, 1084x195
339 2574027
Думаю все мы хоть на одну минутку бывали как Герасимов Андрей
340 2574034
>>73637
всегда делаю принты подобной хуйни когда че-то не получается, и помогает
мимо
341 2574054
>>74037 (Del)
Чем уебищная?
342 2574059
>>73968

>Artic Code Vault contributor


>Нуль полезных программ.



Паша, зачем тебе Гитхаб? Ты понимаешь что ты навечно унижен будущими поколениями историков, которые будут ухахатываться с wannabe-программистишки?
343 2574075
>>74014
Просто я сам "ищу себя" так сказать. Хочу понять как ПРАВИЛЬНО писать чтобы быть как все, чтобы не засмеяли. И когда я вижу программу, которую можно в одном файле на 10 строках уместить, в таком как у тебя виде - в виде 20 файлов и 10 модулей, то у меня возникает легкое недопонимание. Я думаю что это я чего-то не знаю и не понимаю, может ты по умным книгам всё делал и там Жак Фреско поведал, что таков стандарт индустрии, надо вот так вот писать.
344 2574139
Я улучшил свою либу для локализации (а вернее интернационализации)
345 2574142
>>74141 (Del)
Название функции - стандарт, так геттекст имортируют. Название аргумента можно и поменять, но строка и так длинная, так что я не стал этого делать.
346 2574161
>>74139
что улучшилось?
347 2574164
>>74059
гитхаб без спросу это сделал. историки будут жалеть жертв слива из прошлого
348 2574169
349 2574173
>>74142
сделай уж T('Покакала'), в пизду этот "стандарт"
350 2574181
>>74072 (Del)
Это борьба с неточными вычислениями, что не так?
351 2574185
>>74173
У меня сейчас другое на уме. Как сделать чтобы либа, которую я собираю через setuptools, включала файл i18n.json (с этим вроде разобрался, через data_files) и как его потом загрузить в коде? У меня один модуль, а не пакет, и подозреваю, что из-за этого все проблемы.
352 2574188
>>74181
Поясни, с чем конкретно ты тут борешься.

другой анон
image.png34 Кб, 1552x184
355 2574202
>>74185
Должен же быть способ не писать такой вот пиздец?
356 2574204
>>74202
а в чем причина так писать-то?
357 2574206
>>74201
Теперь я понял, зачем нужен питон
358 2574207
>>74204
Как бы ты написал?
359 2574209
>>74207
ну блядь. по стандарту. в переменную прочитал на уровне модуля
image.png30 Кб, 1203x182
360 2574218
>>74209
Блядь. Дело в том, что путь надо абсолютный.
361 2574220
>>74192
Ты ведь здесь >>74072 (Del) всё равно косвенно устанавливаешь ограничение на точность вычисления, значит вместо этого можно просто использовать round, для этой же цели только быстрее и проще.
362 2574221
>>74218
объясни зачем ты упаковал 1000 строк кода в дефолт аргумента функции
363 2574225
>>74221
Иди нахуй, дуралей. Вопрос вообще не об этом.
364 2574229
>>74225
неадекват, я тебя в отдельном порядке это спросил. сука, закомплексованные долбоёбы неврастеники набежали
365 2574268
>>74054
Может, насчёт уёбищной чувак и перегнул... Но отдельный файл под каждый метод... По 2 строки в половине файлов. Ты мог бы свести всё в один файл, получил бы там лучшую читаемость.
Вот я не склонировал твой прожект и мне пришлось очень-очень-очень дохуя кликать.

Дальше можно пройтись по деталям, например,

> from . import tokenCreator


эквивалентно более простой и явной записи

> import tokenCreator


from тут имел бы смысл, если бы ты сделал

> from tokenCreator import create as create_token


Тогда везде, где по коду встречается "tokenCreator.create" можно просто писать "create_token".

Кстати, PEP8 говорит, что "Модули должны иметь короткие имена, состоящие из маленьких букв. Можно использовать символы подчеркивания, если это улучшает читабельность", ну то есть используемый тобой mixedCase противопоказан.
Ну, то, что ты его даже не открывал видно уже по отступам. Собственно, это первая строка в документе: "Используйте 4 пробела на каждый уровень отступа".

> print('To quit, enter \'quit\' or \'q!\' \n')


100% эквивалентно

> print("To quit, enter 'quit' or 'q!' \n")


но опять же читается лучше. Если что \n в конце строки он поставит и сам (это поведение по-умолчанию и оно настраивается). Добавлять свой \n нужно, если хочешь пустую строку отступить.

> if expression == 'q!' or expression == 'quit': break


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

> if expression in ('q!', 'quit'): break



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

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

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

>>73982

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


Ну, мне, например, Пайтон нравится тем, что это один из очень немногих по-настоящему универсальных языков, на которых можно написать вообще что угодно (наверное, второй такой это шарп, но у ж очень он вендовый). Тот же JS этим может похвастаться довольно условно. Ну и тут столько синтаксического сахара по сравнению с тем, что я учил раньше, что у меня того и гляди начнётся синтаксический диабет. Всё остальное - про идею языка, удобство как языка прототипирования и тому подобное, это как спор кита и слона.
365 2574268
>>74054
Может, насчёт уёбищной чувак и перегнул... Но отдельный файл под каждый метод... По 2 строки в половине файлов. Ты мог бы свести всё в один файл, получил бы там лучшую читаемость.
Вот я не склонировал твой прожект и мне пришлось очень-очень-очень дохуя кликать.

Дальше можно пройтись по деталям, например,

> from . import tokenCreator


эквивалентно более простой и явной записи

> import tokenCreator


from тут имел бы смысл, если бы ты сделал

> from tokenCreator import create as create_token


Тогда везде, где по коду встречается "tokenCreator.create" можно просто писать "create_token".

Кстати, PEP8 говорит, что "Модули должны иметь короткие имена, состоящие из маленьких букв. Можно использовать символы подчеркивания, если это улучшает читабельность", ну то есть используемый тобой mixedCase противопоказан.
Ну, то, что ты его даже не открывал видно уже по отступам. Собственно, это первая строка в документе: "Используйте 4 пробела на каждый уровень отступа".

> print('To quit, enter \'quit\' or \'q!\' \n')


100% эквивалентно

> print("To quit, enter 'quit' or 'q!' \n")


но опять же читается лучше. Если что \n в конце строки он поставит и сам (это поведение по-умолчанию и оно настраивается). Добавлять свой \n нужно, если хочешь пустую строку отступить.

> if expression == 'q!' or expression == 'quit': break


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

> if expression in ('q!', 'quit'): break



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

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

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

>>73982

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


Ну, мне, например, Пайтон нравится тем, что это один из очень немногих по-настоящему универсальных языков, на которых можно написать вообще что угодно (наверное, второй такой это шарп, но у ж очень он вендовый). Тот же JS этим может похвастаться довольно условно. Ну и тут столько синтаксического сахара по сравнению с тем, что я учил раньше, что у меня того и гляди начнётся синтаксический диабет. Всё остальное - про идею языка, удобство как языка прототипирования и тому подобное, это как спор кита и слона.
366 2574278
>>74268
этот пепает
367 2574286
>>74192
Это штатное поведение для чисел с плавающей точкой, повторяемое абсолютно везде, где float/real это float (был даже сайт, где приведены выхлопы на нескольких десятках языков и почти везде это поведение идентично, но я его давно потерял). В питоне, кстати, тоже:

> ~ $ py 127


> Python 3.10.6 (main, Nov 14 2022, 16:10:14) [GCC 11.3.0] on linux


> Type "help", "copyright", "credits" or "license" for more information.


> >>> 0.1+0.2


> 0.30000000000000004


> >>> 0.3+0.3+0.3+.1


> 0.9999999999999999


Кто придумал их называть "неточными"?

Искаропки дробные числа это int с выделенной дробной частью разве что в 1С (по понятным причинам: в 99,9% случаев в 1С дробное число это некая сумма денег). Ну и, вроде, в Паскалях была фишка, позволявшая так определить тип, но я её быстро не вспомню.
1673756230181.jpg41 Кб, 504x193
368 2574375
>>74286

> в Паскалях была фишка


Ты бы еще КОБОЛ вспомнил.
369 2574445
>>74286
В фортране ещё такое есть.
image.png53 Кб, 1016x233
370 2574480
Уже несколько раз читаю: https://docs.djangoproject.com/en/4.1/topics/db/queries/#spanning-multi-valued-relationships и не могу понять, почему на пикриле запросы one, three, four работают адекватно, а two выдаёт дубликаты? Почему в two второй фильтр по году не работает?
371 2574665
>>73979
о, а подскажи, пожалуйста, нужно ли использовать asyncio:
5+ аккаунтов отправляют запросы пачками по 5 штук, при этом между пачками рандомные искусственные задержки, чтобы не триггерить флуд детектор сервера.

Я сначала юзал обычный цикл с таймерами, а сейчас хочу расшириться и заюзать asyncio. Но чет читаю книгу и начинаю думать что это "из танка по воробьям"
372 2574775
Отака хуйня, малята. Учитесь!
373 2574790
>>72768
>>72769
>>72772
Душил я ентого вашего пистона....
Странно, сейчас всё заработало. Как так???
Может с кэшированием интерпретатора было что-то.. Только пробел поставил между i и s - заработало..
374 2574818
>>74775
Заебись. Писатели pep8 будут вертеться в гробах. Есть расширение, которое знаменяет операторы питона на русские альтернативы. Будет: из sys доставить argv, класс, функ, для, в, и, вернуть и т.п.
375 2574821
>>74818
import sys as система
>>74775
открыть = open

Без этого нещитово.
376 2574827
>>74821
Либ там не было, но может уже добавили.
377 2574868
>>74775

раскладку заебешься менять
378 2574906
>>74775
чё это за хрень?? Очередная 1С-ная хуета?
379 2574919
Есть книги по питону, может кто возьмёт за 3к?
380 2574920
>>74775
Ну, в целом норм, глаз не рвёт. Немного непривычно только, да раскладку, поди, заёбывает переключать.
381 2574921
>>74906
Питухон жы
382 2574951
>>74921
Разве какой-нить C++ нельзя полностью на русский переписать?
16445208124-abrakadabra-fun-p-aska-yevangelion-na-avu-10.jpg182 Кб, 1920x1080
383 2574975
>>74951
Вангую гигапроблемы с аской.
384 2575059
>>74920
>>74868

Зато читаемость выше и не заёбывает на английский переводить и придумывать английские имена.
385 2575115
>>74951
Можно, из исходников. Переделывать дохрена текста (лексичекие анализаторы) +учесть оптимизации логики (а она вся заточена под ASCII скорее всего) + переделать колпилятор + линкер )))

мимо писал когда-то компиляторы + интерпретаторы
386 2575129
Аноны, хочу на питоне ворваться в геймдев. Я знаю что он медленный и будет мало фпс, но я задумал нетребовательный проект - смесь rpg как to the moon и визуальной новеллы, надеюсь тут проблем с фпс не возникнет. Возможно ли реализовать такое на pygame, renpy?
Или лучше сразу делать в юнити? Я в юнити не шарю
387 2575164
>>75129
возможно. На любом языке программирования.
388 2575172
>>74919
Нахуй? 3к дохуя так-то, я и в интернетах поищу за бесплатно
389 2575173
>>75129
вкатывайся сразу в юнити. велосипедить игры с нуля - это не для вкатывающихся, а для скучающих миддлов-сеньоров. на порядок сложнее, чем на движке
390 2575181
>>75129
Логику можешь описывать на любом языке. Проблема фпсов исключительно в 3д графонии, который насаживают на эту логику.
391 2575204
>>75172
Так я для начинающих рекомендую, к тому же не одна книга за 3к,а все
392 2575219
>>75129
Если хочешь игры делать не требовательные, то лучше наверное в С# вкатываться.
393 2575227
>>75219
на питоне то тоже можно писать и даже не хиленькие игры, хоть и не графонистые, но C# позволит всё то же самое и даже больше. И ипаться как в С++ так же не надо.
394 2575234
>>75219
>>75227
Шарп/кресты для прикручивания 3д нужны. У анона там текстовая аниме хуета и 2д модельки. Питона хватит.
395 2575385
>>75129
Выбирая язык для игр стоит ориентироваться в первую очередь на движки, которые наиболее тебе подойдут.

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

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

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

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

Геймдев в принципе те ещё говнокодеры и ничего, с++ используют
396 2575406
>>75129

> to the moon


Посмотрел. Если игра будет вся такая из квадратных анимированных спрайтов то думаю на pygame потянет.
397 2575439
Аноны благодарю вас за советы, я все учту
398 2575606
Как в питоне сделать массив двумерных массивов?
399 2575644
>>75606
numpy библиотека
400 2575911
>>68047 (OP)
чому шапка в треде проебалась?
image.png91 Кб, 350x263
401 2575932
402 2575944
>>74775
Я видел такой код и он даже в целом бывает ничего... Но как-то...
Имена примитивов по-прежнему английские.
Некоторые переменные ("файлы_docx") даже внутри себя на разных языках... Вряд ли это упрощает работу.

> for строка in строки:


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

> strings = f.readlines()


> for string in strings:


это почти нативный текст, но на русском это выглядит так:

> строки = ф.прочитатьстроки()


> для строка в строки:


Хотя нативно должно быть что-то типа:

> для строки в строках:


Что нереализуемо. Я вообще рад бил бы писать и читать всё на русском, очень рад. Но это будет коробить всегда.
>>75059
В принципе согласен, но только отчасти.
Читаемость всё-равно ограничена тем, что я упомянул выше, а переводить отдельные слова на английский и назад всё-равно приходится. Пусть даже ограничиваясь for, print и т.п.
403 2575958
>>75204
Тогда список. И город хотя бы (можно предположить, что Мск, конечно).
Но вообще учиться кодить по книгам в 2023 противопоказано. Есть неминуемый лаг: книга написана, отредактирована, получены лицензии и согласия, книга переведена, отредактирована на русском, передана в печать, отпечатана, развезена по магазинам, попала на полки.
Так вот, между "книга написана" и "книга на полке" уже вышла 1-2 новые версии языка. А тут ещё и полежала у анона.
Единственное, что, наверное, актуально это официальная документация, которую авторы писали плюс-минус одновременно с интерпретатором.
404 2575974
>>75129

>Я знаю что он медленный и будет мало фпс


Мдя.
Сразу: "медленнный" не означает именно "медленный", в 95% случаев это значит, что другая реализация будет быстрее, но это совершенно не связано с FPS. Потому что графикой будет заниматься Vulkan/Metal, а они рисуют быстро.

>смесь rpg как to the moon и визуальной новеллы


RPG-Maker тебе в помощь на самом деле. Хотя можешь и Ren'Py попробовать. Тут даже Unity2D это перебор.
>>75227

>на питоне то тоже можно писать и даже не хиленькие игры, хоть и не графонистые


Насколько я знаю, основной код нынешних Sims написан на Python. Ясен орган, что это про логику в core-части, а графон сделан отдельно и ничего. Сейчас не времена Кармака, никто не пишет графику сам.
>>75234

>Шарп/кресты для прикручивания 3д нужны.


Не нужны. Ты подключаешь либу и просишь её отрисовать графику, вызовы будут одни и те же для всех языков.
405 2575977
>>75606

> >>> x=2


> >>> y=2


> >>> z=2


> >>> arr = [[['0' for i in range(x)] for j in range(y)] for k in range(z)]


> >>> arr


> [[['0', '0'], ['0', '0']], [['0', '0'], ['0', '0']]]



Или тебе надо что-=то ещё?
406 2575989
>>74139
Можно пример приложения с кодом? Хотелось бы понять, как оно в жизни и где работает.
Например, можно ли написать мультиязычный Qt-гуй?
407 2575992
>>75974

>Насколько я знаю, основной код нынешних Sims написан на Python.


ну это многое объясняет.
408 2576026
>>75977
Есть несколько двумерных массивов разных размеров. Вот это нужно обьеденить в один большой трехмерный массив.
409 2576030
>>76026
для работы с массивами нужно осваивать nunpy.

это во первых многое упрощает, во вторых гораздно быстрее, ибо nunpy на С работает
410 2576036
>>76026

>>> x=2


>>> y=2


>>> arr1 = [['0' for i in range(x)] for j in range(y)]


>>> x=3


>>> y=4


>>> arr2 = [['0' for i in range(x)] for j in range(y)]


>>> arr=[]


>>> arr.append(arr1)


>>> arr.append(arr2)


>>> arr


[[['0', '0'], ['0', '0']], [['0', '0', '0'], ['0', '0', '0'], ['0', '0', '0'], ['0', '0', '0']]]

Такое? Возможно, можно написать лаконичнее.
411 2576046
>>76036
Это изврат, не стоит таким заниматься. Курите nunpy.

Работа с массивами через стандартные методы питона это не просто крайне больно, но и крайней-крайне-крайне неэффективно.

Лучше потратить пол денька на чтение документации nunpy и просмотра видео и лишить себя этой головной боли раз и навсегда, не считая того, что её осваивать всё равно обязательно
412 2576050
>>76046
Блядь, заебал.
Язык умеет дохуя всего искаропки и умеет удобно и безо всякого "курения". Если есть аргументы и код, давай их сюда, тогда будет, что обсуждать. А вот это вот "нитак делавете" безпруфное -- засунь себе в жопу.
413 2576054
>>76046
>>76030
Ну у меня двумерные массивы и так нумпаевские. Я прост не знаю, как всё это в один большой объеденить
414 2576063
>>76054
https://proproprogs.ru/modules/numpy-obedinenie-i-razdelenie-massivov
>>76050
На питоне из под "коробки" массивов тупо нет. Списки эммулируют их работу, и эммулирают крайне неэффективно. nunpy это всё тот же питон из под коробки, которые добавляет в него именно, что массивы. Есть ещё модуль array.
416 2576076
>>76050
И если кодить из под коробки на питоне, то он будет раз в 50-100 медленнее, чем С++
Если использовать модули типа нанпая и прочие, написанные на С,
то можно сократить оставание аж до в 5-10 раз медленнее
417 2576142
>>75989
На втором скрине пример. Просто локализуемые строки оборачиваешь в _() и все.
418 2576146
>>76063

>На питоне из под "коробки" массивов тупо нет. Списки эммулируют их работу, и эммулирают крайне неэффективно


Хоть понял шо сказал?
419 2576171
>>76076

>И если кодить из под коробки на питоне, то он будет раз в 50-100 медленнее, чем С++


Это не совсем правда, только численных операций. Чем выше уровень того, с чем ты работаешь, тем меньше разница. А ещё есть numba и pypy, с pypy иногда питон-код может быстрее C/C++ в режиме -O3 стать. Реально. Но обычно чуть слабее.
420 2576252
>>76076
Замерил, как быстро питон искаробочными решениями решает судоку 30×30.

> py sudoku.py 0,27s user 0,00s system 99% cpu 0,274 total


Четверть секунды. (12×12 за 0,040с) За это время происходит уйма всего, в числе прочего - неизбежный охуялиард проходов по всей таблице в разных направлениях. Визуально же это выглядит как почти мгновенно появившиеся после нажатия Enter две таблицы.

На самом деле я уверен, что переписывание на numpy в принципе ничего кроме геморроя не даст.

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

Я за оптимизацию, но категорически против оптимизации и горожения огородов только ради оптимизации.
421 2576258
>>76252

>судоку


Где решается этот судоку? В десктопном приложении на компе клиента или на сервере?
Если на сервере то какая там нагрузка (rps)?

все познается в сравнении
422 2576308
>>76252
С нампаям намного проще работать на самом деле.
Переписать можно просто ради практики, что бы отработать nunpy.
Но там такие вещи как переворот массива, его разделение, нахождение данных допустим по диаганали решается намного проще и в плане кода, ну и влане скоростей на порядки выше
423 2576312
>>76308
если в питоновском массиве пытаться найти чисто числа по координатам [2] условно, то это будет работать просто через жуткие костыли.
в numpay это [:,2]
И он из массива
0 1 2 3
4 5 6 7
8 9 0 1
быстро выпишет 260
424 2576316
>>76146
Да, на питоне без импортов нет массива.
Создание матрицы через list хоть и можно использовать как массив, но это именно, что его эмуляция.
list в питоне это упорядоченная коллекция.
Они хороши, когда тебе что то туда нужно положить и после сверху же взять, тогда будут работать быстро. Но использовать их как массив это как крайне плохой эмулятор, когда у тебя игры на денди будут лагать на 4090
425 2576322
>>76054
np.stack()
426 2576332
Вопрос такой, собираюсь сделать проект для себя, фронт выбрал vue, а вот с беком думаю между джангой и fastapi, опыт с питоном есть, а фреймворков нет, проект по сути блог, там будет сайт с игрульками, то есть пост про игрульку, ее описание, ссылка на скачивание и тд, что лучше использовать?
2023-01-16214441.jpg72 Кб, 945x493
427 2576347
почему в множестве получается 4 элемента, ведь там range от 1 до 6 вроде в итоге должен быть?
428 2576359
>>76347
на пейчаре 5 элементов.
429 2576368
>>76347
До пяти. У тебя инт отбрасывает всю хуйню после точки.
Отсюда и четыре элемента.
430 2576371
>>76332
Имхо джангу ковыряй.
431 2576377
>>76368
так там нету нихуя после точки, 125 в степени 1/3 это ровно 5.0, и еще плюс единица
image.png2 Кб, 173x35
432 2576384
>>76377
Так поэтому блядь и ровно 5, потому что у тебя int, балбес.
Прибавь к полученному единицу и заверни в int.
Если после этого не поймёшь, то мы вам перезвоним.
image.png768 Кб, 720x963
433 2576387
>>76377

> >>> 5 * 0.3333333333333333333333333333333


> целое число

2023-01-16220759.jpg5 Кб, 200x89
434 2576397
>>76384
>>76387
конечно целое, ведь это же просто корень кубический из 125
435 2576401
>>76377
float не является точным способом вычесления и у него всегда могут быть погрешности в 0.00000000000001
мало, могут оказывать сильное влияние на подобные коды.
У меня на пейчаре работает нормально и ровно 5.0, но у меня 3.10, а на сайте 3.6. С разными версиями могли внести правки.

Но с флоат всегда такие ошибки могут встречаться, это связанно с самим float при этом, а не языками
Стикер447 Кб, 512x512
436 2576407
437 2576408
>>76397
python -V напиши и сюда закинь.
438 2576409
>>76406 (Del)
Никому, в сложное время живем.
2023-01-16222205.jpg1 Кб, 124x21
439 2576419
>>76408

>python -V

440 2576423
>>76419
С 3.9 вроде бы это исправили
441 2576426
>>76419
Тебе надо алгоритм переписать полностью или закостыль раунд или сейл после инта int(round(expression))
442 2576434
>>76332

> с беком думаю между джангой и fastapi


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


При таком выборе - Джанга. Полюбому. Можно ещё Фласк посмотреть в принципе, но для сайта-блога он плюшек не даст считай.
FastAPI даст выхлоп, если ты решишь добавить промежуточное звено и бэк отделить от клиента (в этом случае ты смог бы написать общий бэк и разных клиентов к нему, например, сайт и отдельно мобильное приложение). Но это усложнение на ровном месте.
443 2576437
>>76434
Какой инструмент прикрутить к джанге для лендинга?
444 2576447
445 2576461
>>76437
В смысле чем её раннить?

Если так, то я в своё время сделал по манам из интернетов связку из supervisor и gunicorn и поместил их за nginx (nginx взял на себя SSL и статику), тогда это считалось эталоном. Но времени прошло немало, я тот проект уже давно не поддерживаю (хотя конфиги и связка сохранились, если надо).

Сейчас я пишу на FastAPI, запускаю его через uvicorn, который запихиваю в Docker, когда продукт будет готов к проду -- размещу его в serverless-облаке, пусть об остальном у облака голова болит.
446 2576531
>>76461
Спасибо за инфу.
Было бы любопытно и полезно посмотреть, закинь, плиз, на почту creepy_18K~O7ANUS2c.@ohPUNCTUMhQDVk либо гит либо ту дату, которую сочтешь приемлемой.
изображение2023-01-17010353249.png38 Кб, 588x511
447 2576532
Гайс, вкатываюсь в программирование, просто учить - скучно. Хочется сделать что-то интересное для себя.
У меня есть идея для пет-проджекта - сделать прогу, сохраняющую сообщения с чата твича, после чего можно будет анализировать их.

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

Пока набросал для себя такой план (см. пикчу)

Будет ли норм, если что-то я буду подворовывать/подсматривать в других проектах, или лучше самому пытаться долбиться до конца?
448 2576540
>>76532
toohadrd2you

Сначала наработай базу: dto, работа со списками (найти, скипнуть, сгруппировать, преобразовать), лямбды, исключения, форматы даты и времени (соберешь граблей), потоки, а потом уже лезь наверх (сеть, сериализация и тэпэ)
449 2576542
Сколько я пытался пройти и всегда попадались какие то страные пару неправильных ответов на 200 рандомных тестов и я хз в чём могла быть ошибка. Ну почитал комменты и многие на это жаловались, надо было тыкать, пока не сработает проверка рандома. Надо в таких случаях почаще в комменты лезть
450 2576543
Аноны как использовать лямбду в генераторе списков?
list1 = [1,2]
list2 = [lambda x: x+1 for x in list1]

Эта хуйня возвращает список функций лямбды. Как сделоть?
451 2576545
>>76543
Разве x+1 без лямбды это не есть та самая лямбда, которая просто писать не надо? Так-то выходит, что ты вызываешь лямбду от лямбды
452 2576548
>>76544 (Del)
>>76545
Напрягая булки и пытаюсь ПОНЯТЬ лямбду, пока, как видите, не особо получается.
В данном случае я пихаю лямбду во все дырки какие могу вспомнить в целях обучения боем, так сказать, в данном случае я хотел чтобы лямбда мне прибавляла единичку к каждому значению из list1
Screenshot82.jpg26 Кб, 704x531
453 2576553
>>76548
для прохода списка через лямбду нужно использовать map
454 2576555
>>76553
Да это я уже делал, я думал в генераторе [] можно.

>>76552 (Del)
Ну ясно. Всё равно как вижу лямбду в чужом коде ловлю бсод ирл.
455 2576556
>>76531
Ахуеть, оно живое.

По крайней мере на локалхосте, где всё тестировалось до деплоя.
https://goonlinetools.com/snapshot/code/#yrhp5stg5ujvnbitu41jom

С FastAPI всё куда проще и лаконичнее, даже возиться в пастами лень:

> $ cat Dockerfile


> FROM python:3


> COPY . /pr/


> WORKDIR /pr/


> RUN pip3 install --requirement requirments.txt


> EXPOSE 8000


> CMD uvicorn main:app --host 0.0.0.0


> $ cat requirments.txt


> fastapi


> uvicorn



Вынужден предупредить, что это всё прям ни разу не было обязано держать хайлоад, так что настройки уровня "норм работает". Потом его могли ещё тюнить админы.
456 2576557
>>76543
list2 = [(lambda x: x+1)(x) for x in list1]
457 2576558
>>74480
Рискну предположить что второй .filter делает отдельный join и соответственно перемножает декартово результаты первого фильтра второй раз.
А вообще можешь сам посмотреть SQL и не ебать жсоноукладчикам мозг.
458 2576563
>>76555

>Ну ясно. Всё равно как вижу лямбду в чужом коде ловлю бсод ирл.



любая лямбда может быть выражена как def пук(аргументы_лямбды): return тело лямбды строчкой выше и использованием функции пук как переменной, где ожидается функция
459 2576565
>>76556
Спасибо, няша. Как дома буду - обязательно посмотрю.
460 2576570
>>76556
Да, добавлю. Команд для управления Jango, увы, не сохранилось, так что я не помню, как оно там что собирает.

Уехало это когда-то поднятое в таком виде, с тех пор я проекта в глаза не видел. Ни до, ни после Джангу не трогал, не пришлось.
461 2576580
>>76548
В данном случае тебе нужно понять разницу между функцией и выражением. И что из них ожидает увидеть синтаксис в конкретном месте.
462 2576583
>>76580
Даже ещё, разницу между определением функции и её вызовом.
464 2576626
>>76548
Кстати, присоединюсь!

Меня давно и очень сильно интересует, накой они нужны. И видел уйму примеров и в целом понимаю, как они работают, но в моём коде их так ни разу и не появилось и причина тому - то, что я не понимаю, когда они дадут профит!

>>76588
Например, тут вместо лямбды ровно с тем же успехом можно было бы объявить обычную функцию. Да и понять бы, что оно делает было бы проще, я пока несколько раз не прогнал не понял, как это работает, что всегда недостаток, но для питона ещё и умножение на ноль его естественных преимуществ.
465 2576633
>>76626
Они не нужны, но иногда удобно если функция короткая и ей нет смысла придумывать отдельное название. Типичный пример
sorted(dict.items(), key=lambda kv: -kv[1])
466 2576634
>>76626

>накой они нужны


map reduce filter
В пистоне с 3.2(?) уже не особо нужны, когда компрехеншены добавили и самые популярные юзкейсы для редьюс, типа sum(). Редьюс после этого вообще в функтулс сослали.
467 2576639
>>76626
Что бы не писать функции однострочные, захламляя им код.
468 2576650
>>76552 (Del)

> Лямбда это просто однострочная функция, ... , просто инструмент, который иногда может быть удобен.


>>76639

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



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

>>76634

>map reduce filter


Генераторы и итераторы понял давно, а вот с map и filter не всё так легко. Сделаю ещё один наскок... завтра же.
Screenshot85.jpg21 Кб, 276x418
469 2576653
>>76650
Работа с некоторыми фишками просто начинается с "Озарения".
Если не знаешь где их использовать и не чувствуешь, что они тебе необходимы, ну оставь пока-что. Если сейчас активно учишься, то всё равно есть лимит знаний который можешь переварить за определённое время.
Потом разок увидишь, что тут лучше лямбду использовать, потом у кого-то подсмотришь и увидешь, что он через лямбды реализовал твой алгоритм просто намного красивее и тут же придёт в голову где в своём коду их прописать. А так пока можешь запомнить как их использовать в map-freduce-filter и не париться дальше.
470 2576655
>>76653
ну и в ключах ещё
471 2576677
>>76626

>Меня давно и очень сильно интересует, накой они нужны.



в 97,5% случаев использую в качестве аргумента key для функции сортировки

> sorted(student_objects, key=lambda student: student.age) # sort by age

472 2576679
>>76639

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



проблема лямбд в том, что их очень любит кушоть сборщик мусора, и передавая куда-то лямбду часто вместо лямбды передаётся хуй за щеку
1673912187170.jpg8 Кб, 790x62
473 2576681
>>76650
Просто бывают функции в стандартной библиотеке и в других местах, где одним из аргументов передается функция. Иногда эта функция очень простая и ее удобнее записать лямбдой. Можно не писать лямбдой, а придумать имя и написать def строкой выше. Это тупо вопрос форматирования кода.
474 2576696
>>76679
Чё несёшь, лол
Приводи пример давай
475 2576706
>>76696

эвент менеджер, регистрирующий коллбэки через weak references
events.subscribe('back', lambda: print('pook'))
лямбда удалится после выхода из events.subscribe
476 2576763
>>76706
Так лямбда отработает в твоём примере, а анон просит пример в соответствии с твоим утверждением, что лямбда передаст хуй вместо отработки.
image.png323 Кб, 2793x693
477 2576917
>>76316
Хочешь в задротские игры поиграть?
Что значит "когда тебе что то туда нужно положить и после сверху же взять"? Если возьму "не сверху" будет плохо браться?
478 2576953
>>76763
https://pastebin.com/3qz0p7Ge
Вот накидал хуйню с коллбеками, у меня при вызове показало все 4, включая ту которую я добавлял через отдельную функцию (TWO). Что сделать чтоб сборщик мусора ебнул лямбду?
479 2577000
>>76953

> вызове показало в


Лямбда освобождает память после вызова. Ты в своём коде посмотри ID лямбд и покрути их в своём окружении, каждый раз новая ячейка памяти.
480 2577522
>>76763

> Что сделать чтоб сборщик мусора ебнул лямбду?



например вот это:
https://www.online-python.com/hySUJr4PQI
1673974527429.png8 Кб, 270x196
481 2577552
>>68047 (OP)
Посоветуйте какой-нибудь интерпретатор адекватный под винду, чтобы в консольке к примеру автокомплишн работал. Я знаю что есть у красноглазиков много такого есть, но я то спермохлёб.
Суть в том что я очень часто пользуюсь консолькой чтобы проверить как что-то работает в питоне. Просто потому что мне лень пользоваться идешкой для такого и через консольку кажется что будет быстрее. Просто жму win+r -> cmd -> py -> в бой.

Но очень сильно не хватает автокомплишена. Хочу прямо в консольке интерактивной напрямую исследовать какие у меня опции есть для библиотеки к примеру, чтобы в идешке под это не создавать отдельный файл муторно. Вот чтобы я хотя бы методы мог посмотреть и их описание небольшое. Есть такое расширение под cmd?

Vim'ом не хочу пользоваться, он какой то ебанутый абсолютно. Я не знаю какой больной мудак придумывал ему хоткеи.
482 2577553
>>76706

>weak references


А теперь попробуй без weak
Потому что в питоне всё построено на счётчиках ссылок. Если ты куда-то передаёшь лямбду, пока ты на неё можешь сослаться, то она существует в виде ссылки, соответствующий счётчик ненулевой, объект не может быть удалён.

Эта логика работает со всеми объектами вообще.

Если ты их хранишь в WeakSet разных, ты злой буратино. Weak объекты как раз для того, чтобы можно было удалить то, что в них хранится. Их специально так делали, чтобы память не текла.
483 2577559
>>77553

> попробуй без weak


а мне нужно с weak
484 2577564
>>77552
вскод + джупайтер ноутбук самый топ для такого ковыряния
485 2577567
>>77564
Вкурсе про них, но вскод еще и запустить надо. Мне просто доставляет легковесную консольку открыть просто потому что моча в голову ударила, а не сидеть с вскодом открытым всегда даже когда я ничего не пишу. А если еще и какой-то проект у вскода был открыт до этого, то придется каждый раз ждать пока он прогрузится, venv, git, вся хуйня, в общем время займет.
486 2577576
>>77552
И ещё вопрос: можно ли "одноразовый" venv использовать в питоне? К примеру я хочу затестить библиотеку, но не хочу создавать отдельную папку, накатывать venv туда, устанавливать внутрь эту библу. Но и глобально не хочу устанавливать. Есть ли инструмент для одноразовой установки и теста библиотек? К примеру чтобы с перезапуском консоли/компа все что ты накачал удалилось?
487 2577621
>>77576
Создай папку в /tmp/
На самом деле вопрос секунд, так что не вижу смысла экономить.
15876796790982.jpg265 Кб, 550x960
488 2577652
>>77576
всё равно вскод

открываешь в чистой папке через контекстное меню проводника → креэйт энвайронмент (venv/conda) → терминал → pip install pooksrenk → new (python/notebook) file → играешься

это секунды делается
489 2577803
>>77567
Тогда просто jupyter и запускай через локалхост и пусть висит, понадобится - поработаешь, не понадобится - выключится с комплуктером.
490 2577807
>>77576
Я бы сделал мусорный тестовый venv через poetry. Активировал окружение, протестил либу, удалил либу и иди дрочи налево и направо. Очень странные вопросы.
Олсо погугли disposable venv, там ссылка на гит есть.
491 2577825
>>77576

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


nix
492 2578053
>>77559
Перевожу:
я удаляю объект, а потом сру на питон за то, что он объект удалил
493 2578084
>>78053
но я не сру на питон. но спасибо за ценный совет не использовать то, что мне нужно использовать
494 2578123
Сап двач , аноны подскажите:

Я написал парсер на пайчарме , предварительно создав проект в Virtuallenv. Теперь мне необходимо запустить его вне пайчарма.

Сначала пробовал просто через установленный интерпретатор.

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

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

Пробовал ради интереса, закинуть в переменную PATH путь к библиотекам - ожидаемо соснул

Пробовал создать из файла екзешник - ожидаемо соснул x2
Так вот вопрос :
Неужели все Virtuallenv проекты можно запустить только через IDE? Или есть другой вариант?

P.S. Если только через IDE , то нахуй virtuallenv вообще нужен?
Снимок экрана 2023-01-18 112829.png6 Кб, 470x94
495 2578125
Быстро фикс
496 2578144
>>78132 (Del)
а если необходимо запустить через рабочий стол? Ну или через любое другое место на диске , не юзая консоль?
497 2578149
>>78123
Ну так сделай ярлык или бат-файл, в нём пропиши базовый путь, активируй венв и запускай скрипт.
498 2578181
>>78144
Типа экзешник ты хочешь сделать или что?
499 2578200
>>77522
Но ведь ты сам слабые ссылки на них понавесил...
500 2578206
Пацаны, есть таблица в БД где указано имя файла (путь где его найти на диске) и время его создания, все пути по идее валидны. Крон раз в день ходит по этой таблице и удаляет из нее все записи которые старше 1 недели. Естественно помимо записей он должен и удалить сами файлы, чтоб не лежали мертвым грузом на диске, но как это правильно сделать?

Вот допустим я сначала почистил записи в БД и пошел удалять файлы, но тут хуякс - и какая-то ошибка, очевидно я сделаю rollback на транзакцию и выйду. Либо можно сначала удалить файлы а потом идти удалять записи, но тогда как сделать rollback? Хер там. Как в принципе подобные задачи решать?
501 2578233
>>78181
Ну да , разве что хотелось бы решить проблему с путями , типо когда скрипт через ярлык запускаешь , в командах надо указывать абсолютный путь ,а он на разных пк различается
502 2578241
>>78233
Напиши скрипт, который будет искать твой путь.
503 2578243
Подскажите , есть способ получить значения из переменных внутри скрипта в консоли?
504 2578267
>>78123

>вне пайчарма



>venv\Scripts\activate


>python main.py


>deactivate

505 2578329
>>78206
У тебя первый вариант самый правильный, если атомарная транзакция по чистке записей отношения завершилась успешно, то тогда запускается скрипт по удалению файлов. Можешь временно перед удалением удаляемые пути заносить куда-нибудь в лист или дикт, чтобы по нему потом пройтись.
506 2578658
Подкиньте идею, плиз.
Есть таблица. Через микксин ListViewгенерируется станичка со списком данных записей, одно из значений поля я обрабатываю респонзами (поле ip) и накидываю в jinja через context.
Поймал себя на мысли, что я долбоеб, т.к. каждый заход на страницу со списком у меня response пробегает по всему полю ip и страница грузится от 10секунд. Что можно сделать, кроме очевидного расширения количества полей, анонсы?
507 2578825
>>78084
О. Чувак освоил лямбды, но всё ещё не словил второго озарения программиста...
Первое, эйфорическое и весьма интимное, ловишь, когда "ух ты, компьютер исполняет мои приказы! Я написал и он сделал, что я прошу!!!"
А второе -- куда более печальное, когда понимаешь "Компьютер делает не то, что я хочу, а то, что я прошу... Оказывается, просить нужно правильно, а это сложно".
508 2578910
>>78243
Есть print() и есть отладчик IPDB.
Отладчиком пользоваться так:
import ipdb; ipdb.set_trace()
Вставляешь эту строку в нужном месте в скрипт. Скрипт остановится в этом месте и выпадет в отладчик. Дальше можно смотреть локальные переменные и много чего еще.
509 2578994
Сап двач , нужен совет

Есть проект с виртуальной оболочкой и установленной в неё библиотеками. Заказчик не хочет устанавливать библиотеки через pip install -r requirements.txt , хочет чтобы все открывалось двумя щелчками. Так вот вопрос:

Как создать екзешник который сразу же запустит venv и скрипт?
Image 345.png16 Кб, 369x298
510 2579019
Поясните вот за какую хуйню. Удаляю EXIF информацию с помощью подушки, копируя только данные самого изображения, но на выходе изображения сильно теряют в размере - с 5 Мб до 600 Кб.

Какого хуя? Я же просто беру данные из одного файла и помещаю их в другой. На каком этапе у меня потеря качества идет?
511 2579029
>>79019
По идее метод save перекодирует. Ты же можешь вообще в любой формат сохранить.

С метаданными иначе работают, сейчас не скажу как.
512 2579043
>>79029

>С метаданными иначе работают, сейчас не скажу как.


Как? Даже есть какие-то другие способы удалить метаданные, то тебе по итогу все равно надо будет сохранять изображение, которое пожмется.
513 2579044
Поясните, нахуй нужно использовать pathlib, если я могу указать путь просто от корня приложения? Хоть оно у меня на локалке крутится, хоть в кубере - абсолютные пути от корня аппа не меняются же.
514 2579053
>>78200
ну да. и?
515 2579210
Как перестать писать непонятный костыльный код? Понимаю назначение переменных и смысл циклов только пока программирую, стоит проверить задание/отойти на минуту - хуй пойму, что я накодил. Вот задачка и моё решение, нормально, или полное говно?
https://www.codewars.com/kata/54e6533c92449cc251001667/train/python
516 2579211
>>79210
Полное говно, даже если это работает.
517 2579230
>>79210

я по названию функции и аргумента понимаю, что она делает. для меня это хороший код

абстрактный код часто нечитаем. а матан всякий еще нечитаемей

куда проще, когда код делает что-то конкретное. просто адекватно именуешь переменные, и сразу понятно, что делает код
518 2579233
>>79210

так, падажжи! дерьмо код!

я думал, что он возвращает сиквенс уникальных значений в сиквенсе, сохраняя порядок (т.е. не тупо делает set(sequence))

тогда я бы назвал функцию как-то типа remove_repeating_items
519 2579234
>>79230
Программирование это логика. Если у тебя логика кода говно, значит и код говно.
image.png22 Кб, 387x317
520 2579239
521 2579257
>>79239
годно кроме нейминга
522 2579284
Как скачать файл с помощью requests? Я не программист, поэтому плохо представляю, как все это работает. Отследил запросы и понял, что в итоге мне надо получить clientIp и sessionId. Дошел до этого момента, все отлично. Логинюсь и тд. Потом в браузере я жму на кнопку для скачки файла и происходят post запросы. Как я понимаю, клиент запрашивает отчет за указанный в полях период. Сервер генерирует файлик excel и путем циклического запроса о состоянии его готовности. Здесь тоже все нормально. В итоге я получаю "1" в response, что говорит о том, что файл готов к скачиванию. После этого происходит get запрос (пик1). В теле появляется ссылка вот такого вида (пик2). Потом появляется окно выбора пути для сохранения файла. Больше ничего не происходит на вкладке network, сайт просто пингуется, т.к. время сессии ограничено. Если повторить этот последний запрос на python, то выдает ошибку 500. Здесь мне уже ничего непонятно. Нет никакой привычной урл вида /download/file.xlsx, чтобы можно было получить ее. Я погуглил и понял, что это динамический blob ссылка, но не понял, как мне получить ее в python теперь. Возможно ли это в принципе? С Selenium все работало через эмуляцию нажатия на кнопку загрузки, но я хочу использовать только requests. Плиз, помогите
523 2579299
>>79284
замазывать полупрозрачной кистью всё же не лучшая идея
524 2579340
>>79299
Так эт специально, чтобы не бросалось в глаза. Я настолько параноик, что переживаю, что здесь могут сидеть разработчики которые еще больше окуклятся потом. Они недавно убрали апи.
525 2579348
>>78994
Дам три варианта. Все три будут работать, даются в порядке увеличения всратости.
1. Современно, модно, православно: упакуйся в Docker. Конечно, на том конце запускать тоже надо будет через какой-нибудь Docker, но это уже мелочи.
2. Хороший рабочий вариант. Сделай скрипт с таким содержанием:

> #!/usr/bin/env bash


> mkdir env


> python3 -m venv env


> source env/bin/activate


> pip3 install -r requirements.txt


> python main.py && deactivate



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

> mkdir env


> python3 -m venv env


> source env/bin/activate


> pip3 install -r requirements.txt


> deactivate


> sed -i "s|$(pwd)/ansible_env|blahblah/ansible_env|" ansible_env/bin/



А в скрипте-запускаторе - так:

> #!/usr/bin/env bash


> sed -i "s|blahblah/ansible_env|$(pwd)/ansible_env|" ansible_env/bin/


> . ansible_env/bin/activate


> python main.py


> deactivate



Оно сработало, но в прод, слава ЛММ, не пошло. Там ПМы допизделись до поднятия зеркала в каком-то DMZ или что-то типа и прошёл второй способ (первый не подходил по арзитектуре: докер хуёво умеет в ).
525 2579348
>>78994
Дам три варианта. Все три будут работать, даются в порядке увеличения всратости.
1. Современно, модно, православно: упакуйся в Docker. Конечно, на том конце запускать тоже надо будет через какой-нибудь Docker, но это уже мелочи.
2. Хороший рабочий вариант. Сделай скрипт с таким содержанием:

> #!/usr/bin/env bash


> mkdir env


> python3 -m venv env


> source env/bin/activate


> pip3 install -r requirements.txt


> python main.py && deactivate



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

> mkdir env


> python3 -m venv env


> source env/bin/activate


> pip3 install -r requirements.txt


> deactivate


> sed -i "s|$(pwd)/ansible_env|blahblah/ansible_env|" ansible_env/bin/



А в скрипте-запускаторе - так:

> #!/usr/bin/env bash


> sed -i "s|blahblah/ansible_env|$(pwd)/ansible_env|" ansible_env/bin/


> . ansible_env/bin/activate


> python main.py


> deactivate



Оно сработало, но в прод, слава ЛММ, не пошло. Там ПМы допизделись до поднятия зеркала в каком-то DMZ или что-то типа и прошёл второй способ (первый не подходил по арзитектуре: докер хуёво умеет в ).
526 2579354
>>79284
Кажется, до меня дошло, что в ответе на последний get запрос приходит закодированный в base64 zip файл (пик1), который надо раскодировать. Я так понял, что это несложно. Вот только я не могу получить этот ответ таким же запросом в python. Ошибка 505. Пик2 - повторяю запрос в браузере, получаю файл в ответе. Пик3 - повторяю запрос в python - ошибка. Что я делаю не так?
527 2579355
>>79354
500* фикс
528 2579358
>>78997 (Del)
Они почкованием размножаются.
image.png51 Кб, 665x374
529 2579364
>>79210
Как-то так это делается...
530 2579491
>>79210
В первую очередь не старайся решить как можно больше задач за одно и то же время. Лучше решить одну за несколько дней, попутно изучив поглубже смежный материал или даже различные библиотеки, которые подходят к тебе задания, чем попытаться как можно быстрее что то написать и отправить ответ.
Screenshot86.jpg109 Кб, 813x692
531 2579562
Что-то я копался, копался и код никак не работал, решил проверить сам граф и проблема оказалась в нём. И всё вроде верно идёт, но под самый конец он ломается и там где должно быть 0, 2 появляется 0, 0 и я хз как он может появиться.

Хотя, не, отбой. Как начал писать сразу же заметил в чём облажался. 0 вместо Y был
532 2579634
А какой бамплимит на доске?
Screenshot87.jpg195 Кб, 1864x929
533 2579760
Всё же на третий день домучил.
Алгоритм я понял на первый же. Два дня считай, исправлял "баги". Буквально там ноль вместо игрик, тут игрик с иксом надо переставить местами. Такие мелочи, а искать их офигеть как долго. Хотя за эти пару дней я в голове и лучше уложил алгоритм поиска проблемы в коде. Не стоит только ориентироваться на строку, которую выдаёт пайчарм
>>79634
Пора бы уже перекатывать
534 2580032
Сап двач на связи вкатывальщик

В недавнем времени освоил парсинг и написание ботов , думал немного поднять лаве на фрилансе. ХУЙ ТАМ ПЛАВАЛ СУКА.

ПОЧЕМУ БЛЯТЬ ТАК ТРУДНО ВЗЯТЬ ЗАКАЗ СУКА. И ДАЖЕ ПРОБЛЕМА НЕ В ТОМ ЧТО - БЫ ВЫПОЛНИТЬ.НИХУЯ.ЕГО ПРОСТО ТРУДНОНЕРЕАЛЬНО ВЗЯТЬ.Я БЛЯТЬ ОТКЛИКОВ 12 ОТПРАВИЛ.ЗАРЕГАЛСЯ НА 4 БИРЖАХ.ЗАПОЛНИЛ СУКА ПРОФИЛТ , ВСЕ ПО ГАЙДАМ , ОТКЛИК ТОЖЕ НОРМ ОСТАВЛЯЛ , ЦЕНУ ЗАКАЗАМ ДО 500 Р ВЫКРУЧИВАЛ И ВСЕ В ПУСТУЮ.ПИЗДЕЦ.

сори что не в тот тред ибо фриланс тред мертв
535 2580079
>>80032
Дорогу осилит идущий.
536 2580092
Решилп попробовать применить chatgpt в работе в качестве альтернативы гуглу. Спросил вроде довольно простой вопрос - вот у меня датакласс в питоне, хочу валидацию типов полей делать. Высрал сказки про магический агрумент validate у dataclass.field(), тип можно лямбду передать в которой можно проверить тип поля например isinstance()-ом. В реальности нихуя такого агрумента не существует, придется видимо аки холопу вручную бойлерплейтом в __post_init__ проверку делать.
Суть в чем, до замены людей этой хуйне еще далеко
537 2580110
>>80092
chatGTP это именно, что замена гуглу. И пока что не очень даже.

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

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

Вполне вероятно, что подобные ИИ-помощники будут примерно там же где и летающие машины. В теории сделать можно, на практике это тупо из-за огромной растраты ресурсов, которая не оправдывает результат
image.png105 Кб, 720x785
538 2580126
>>80110
Я не очень много вопросов практичных задавал. Очень хорошо и точно отвечает на часть вопросов, которые хрен нагуглишь. Но через раз несёт адский бред.

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

Это в принципе непригодно для реальной разработки. Как только тебе надо делать что-то новое, а не гуглить сто раз написанное решение.
539 2580136
>>80126
Некоторые ответы даже при кривом коде могут быть годными и лучше чем гугл. Потому что могут тебе быстро подсказать куда двигаться дальше и что лучше использовать. А там уже и загуглить можешь даже подробнее. Особенно, если сталкиваешься с задачей к которой не знаешь как подойти и даже как загуглить
540 2580144
>>80136
Но это именно, когда учишься. При работе то такого быть уже не должно, ибо даже если джуну дадут работать над тем, что он не трогал ещё ему всё равно укажут где документацию и прочее курить
541 2580180
>>79044
Бэмп.
542 2580306
>>80126
Я правильно понимаю, что без иностранной симки там никак не зарегаться?
543 2580314
>>80306
Видимо правильно, уже не помню, но у меня есть симка иностранная. А почта gmail-российская
544 2580316
>>80144

>При работе то такого быть уже не должно


Как раз постоянно при работе возникает что-нибудь.

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

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

В реальной работе тебе надо разобраться с тем, что надо сделать, зачем сделано так, как сделано, как можно реализовать, как состыковать с тем, что есть, какие проблемы будут из-за этого. Вот тут уровень, а не чтобы накодить какую-нибудь функцию. А это как раз то, к чему ИИ даже не прикасались ещё.
545 2580319
>>79354
Боже, я наконец-то разобрался! Тупо моя невнимательность. Забыл добавить к имени файла его расширение в параметрах. Я в ахуе, у меня получилось
546 2580340
>>80032
Рейтинг какой у аккаунтов? На биржах дроч на рейтинг. Ищи путь повысить рейтинг. Можно купить готовый акк с накрученным рейтингом. Предлагай работу за отзыв и рейтинг. Договаривайся со знакомыми, чтобы они размещали простые заказы, а ты их выполнял за символическую цену или бесплатно, а они тебе рейтинг за это.>>80032
547 2580342
Покидайте плиз статьи, видео, книги, други ресурсы о том, как проектировать бд на примерах разных несложных проектов (для немного туповатых).
image.png99 Кб, 236x214
548 2580370
Пожалуйста, хостите треды с этой картинкой в шапке
без ссылки на рисовач в углу
549 2580375
>>80032

>ЦЕНУ ЗАКАЗАМ ДО 500 Р ВЫКРУЧИВАЛ И ВСЕ В ПУСТУЮ


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

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

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

Просто человек смотрит так. У этого
550 2580403
сука, как же 10 гигов видеопамяти не хватает, пиздец
551 2580469
>>80375
А на каких сайтах можно посмотреть это?
Не хочется бросать основную работу, но как тренировку скилла\интересные задачки было бы круто посмотреть что требуется
552 2580480
Братцы, есть скрипты, которые надо выполнять круглосуточно, ПК включённым держать не хочу. Куда можно залить их, чтобы они сами выполнялись, делали дела, сохраняли данные?

Желательно без затрат)
553 2580523
>>80480
В роутер залей.
554 2580525
>>80480

>Желательно без затрат)


>ПК включённым держать не хочу


Не хоти.
555 2580591
>>80480
на сервак залей , в инете полно бесплатных
556 2580602
Аноны помогите советом

Хочу по совету ОПа написать имиджборду (ну или другой сайт) , какой стек технологий для этого нужен. Прочитал что знания верстки и Django необходимы , но по мимо этого что то еще нужно?
557 2580619
>>80525
ПК шумит слишком сильно. Меня устроит просто самый оптимальный вариант по соотношению цена/функционал. Просто не знаю какие оптимальные.
558 2580633
>>80619
Ну так ты вводные дал такие, будто тебе надо крутить скрипты на своём ПК и данные сохранять на свой ПК. Нам за тебя архитектуру продумывать?
Скрипты могут крутиться удалённо, на своём серваке/на выделенном серваке/хероку/авс/я.клауд/етц, данные могут сохраняться на диск/в бд/в гуглшитс/в облако.
Реши, что тебе из этого надо и подумай, что надо сделать с твоими скриптами для реализации твоей задачи.
559 2580636
>>80375
есть такое. есть колбаса за 250 рублей, но такую даже своей собаке стрёмно покупать
560 2580639
>>80619
VPS купи. цена вопроса 3-4к в год
561 2580660
>>80619
кулеры нормальные купи и скорость их работы настрой, если шумит
562 2580666
>>80469

>но как тренировку скилла\интересные задачки


Будешь кодить незаконные или тупейшие вещи, от которых отказались или которые никому из контор не нужны.
1. Парсинг (незаконен)
2. Боты финпирамид
3. Боты продажи порнухи
4. Ебейшие идеи восьмиклассников с оплатой «ну когда твоя прога заработает мне миллион, я отстегну»
5. Боты продажи всякого говна, включая наркоту
563 2580720
Здравсвутйе, я рмтшник-доширачник очень хочу написать бота для игры. изучение питона мне с этим поможет? можно начинать с книжек в оп посте или лучше начать с учебников информатики с 5 по 11класс?
564 2580766
>>80666
Есть такое представление интуитивное, что на ФЛ есть рынок ботов для телеграма. Вполне легальных. Очень многие хотят себе сделать, бизнесу нужны, альтернатив нет. Как раз работа для фриланса.

Остальное всё либо сложно, либо не нужно.
565 2580786
>>80720
Питон в любом случае хороший язык для обучения с нуля особенно. Потому что он с одной стороны очень простой, как раз для школьного уровня, но и достаточно глубоко с ним можно зайти при этом, не меняя язык.

В теории то написать можно что угодно, вопрос в производительности. Ну и нужно тебе будет это рмт, если нормально язык освоишь, что сможешь написать бота за которого тебя не забанят быстро
566 2580796
>>79053
Пидорас? Педофил?
567 2580832
>>80720

>рмтшник-доширачник


Это кто?
568 2580922
>>80832
торговля в играх за реальные деньги
569 2580927
>>80922
есть дебилы которые на это ведутся?
570 2580929
>>80927
В смысле ведутся?
571 2580931
>>80796
питонист всё сразу
572 2580934
>>80929
ну типа платят бабки
573 2581112
>>80934
платят за указанную услугу . наеба нет. наебщиков быстро банят на рмт площадке.
574 2581122
>>80934
Очень старый бизнес, но в последнее время туда набежало куча народа. Да и некоторые трудности ввиду ограничения платёжек для РФ. Ну и сезонное занятие побольше. В среднем лучше в пятёрочку идти и меньше заморочек, но под выход некоторых игр в начале можно было по 2-4 штуки баксов в месяц делать. Но сейчас и народа стало больше рмтшить, да и санкции. Так что оно того особо и не стоит уже в принципе.
Стикер250x241
575 2581155
Аноны, есть ли какое-то место, где код написанный на питоне 3.7.9 обосрется и сделает что-то не так, если его запустить на питоне 3.8.х ?
576 2581161
>>80666
С 1 по 3 пункты очень интересно!
Так где это найти? И кстати, а почему парсинг незаконен, че за бред. Я понимаю продажу говна с 5го пункта - это реально конч, а парсинг-то чем не угодил.
577 2581166
>>81161
Анон хуйню просто написал, забей.
578 2581185
>>81161

>а почему парсинг незаконен, че за бред.


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

https://habr.com/ru/post/544788/
https://xmldatafeed.com/zakon/
579 2581188
>>81185
Т.е. поисковики гугл яндекс и прочие теперь вне закона. Ясно.
580 2581191
>>81188
Кукарекать на швабре будешь. А тут внимательно читай законы.
581 2581194
>>81191
Таблетки прими шизофреник, а потом посмотри в словарике значение слова парсинг.
582 2581202
>>81194
чепушила не в силах три строки прочесть
всё как обычно
583 2581205
>>81202
Ничего страшного, примешь таблетки и прочтешь.
584 2581213
>>81205
ты промазал коментом, чепушила
585 2581217
>>81213
Уймись, шизик.
586 2581219
>>81217
Ты чё полыхаешь-то, придурок? Пролапс в трусы выпал?
587 2581530
>>81155
Вроде не должно
588 2581544
Хауди-хо друзья, вкатун свитчер на связи!
Поясните как правильно развиваться для поиска работы, ситуация такая что вкатываться надо куда получится, вот я заполняю резюме ссылками на свой репозиторий с разными проектиками, получается солянка, типо
-вот тырнет-магазин на джанге;
-вот бложик на фласке;
-вот телеграмм бот на фаст-апи;
и чувствую себя дурачком который никому не нужные проекты в стол дрочит, думаю лучше бы это время на дрочку алгоритмов потратил, подскажите как правильно поступить?
может написать туду лист который нахуй никому не нужен и на собесе пиздеть как ими пользуются все мои друзья?
589 2581549
>>81155
нет, только наоборот.
590 2581552
>>81549
вот если питон 4.0 выйдет, то тогда да
591 2581560
Аноны поясните нубу за синтаксис

def func(arg:"foo"):
pass

Что вот это такое "arg:foo" ? Что оно делает?
Пробовал словарь передавать с ключом "foo", но это не оно.
592 2581564
>>81560

это type annotation. подсказывает твоей IDE, что функция func ожидает arg с классом foo

> class Pook: ...


> def srenk(arg: Pook): ...



наличие кавычек означает type annotation forward reference. нужно для таких случаев:

тут тайп чекер ругается, потому что Pook еще не существует:

> def srenk(arg: Pook): ...


> class Pook: ...



forward reference это специальный костыль для этих случаев:

> def srenk(arg: "Pook"): ...


> class Pook: ...

593 2581582
Аноны, вот у меня есть ООООЧЕНЬ большой и грузный словарь (парсинг трехмерной сцены которая передается в json, там всё включая координаты вершин) весом мегабайт 100 например, там буквально сотни тысяч ключей с массивом в значении {'key':[]}.

Я делаю некие калькуляции и добавляю в эти ключи некие данные. Много много раз, тысчи раз в тысячах циклов.
НО редко случается такое, что ключа нет в словаре, примерно в 1-5% случаев.

И вот я думаю, каждый раз проверять в этом ООООГРОМНОМ словаре наличие ключа
1) if 'key' in "big_dic"
получится миллионы проверок в пустую т.к. ключ обычно есть
или
2) использовать try except.

Какой путь более питонический? Как правильно сделать по всем стандартам? Может быть есть ещё варианты? Вообще размер словаря влияет на скорость поиска ключа в нем или может в питоне работает какая-то бинарная магия которая делает этот процесс пренебрежительным для любого обьема ?
594 2581583
>>81564
Отаночо, спасибо.
595 2581588
>>81582

да всё используется, всё питонично. есть еще:

метод some_dict.get('pook', None), чтобы вместо ошибки вернулся второй аргумент (None)

defaultdict. вместо кей еррора сделает новую запись с чистым объектом указанного тобой типа
596 2581601
>>81155
Имеет, случается, даже довольно часто. Из-за выпиливания depricated штук всяких в основном.
597 2581636
>>81544
Да.
598 2581911
>>80720
Во что играешь?
600 2583966
>>81911
Плюс к этому господину - тоже хочется рмтшить, но как вкатиться в эту тему вообще непонятно
161761991643-p-katya-elise-henry-model-44.jpg633 Кб, 2048x2048
601 2590713
Привет ребятки, вопрос следующего характера:
Хочу написать прогрумму, чтобы она определяла кругляшки, квадратики, треугольники и ещё несколько значков на экране, и тыкала по ним мышкой.

При запросе в гугле "питон распознавание обьектов" - он выдает однотипные ролики про распознавание лиц и номеров машин, с какими то заранее оттеринированными весами, или типа того.

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

Заранее спасибо и с новым годом!
197a2a.jpg29 Кб, 640x250
602 2590838
>>90713
короче мне надо вот такие значки различать, как на пике.
Мне для этого надо YOLOv4 обучать собственным моделям или есть более простые варианты?
603 2591929
>>68047 (OP)
прив ребятки и девчатки.

Вопрос такой - как быть если удобно иметь в словаре какой-то not serializable объект, если периодически нужно дампать весь словарь в json?

Пока что приходится временно вынимать объект из словаря, дампать а потом вставлять обратно, но это пиздец костыли, хотелось бы чтобы json сам понимал что это не текст и что его можно просто пропустить.
image.png95 Кб, 1200x1116
604 2598375
>>90838

>ева

Тред утонул или удален.
Это копия, сохраненная 7 февраля 2023 года.

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

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