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

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

Ответить в тред Ответить в тред
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 511 77 146
Питон тред №150 /python/ Аноним 09/11/22 Срд 06:56:21 2509442 1
0009.jpg 620Кб, 1920x1267
1920x1267
311logo.png 80Кб, 507x500
507x500
World-map.png 225Кб, 1434x1077
1434x1077
Тред, посвящённый языку программирования Питон, #150

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

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

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

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

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

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

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

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

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

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

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

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

старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
текущий исходник: https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
Аноним 09/11/22 Срд 07:07:37 2509444 2
сахарный.jpg 114Кб, 1000x676
1000x676
господа, хочу замутить декоратор методов типа такого:

class Pook:
____@input_event('quit')
____def quit(self):
________self.save()
________sys.exit()

но это исполнится во время импорта и зарегистрирует классовую функцию Pook.quit и будет пытаться вызвать Pook.quit(self) вместо some_object.quit(). мне же нужно, чтобы это работало с bound method-ами на инстансах. чтоб self работал

как это сделать?
Аноним 09/11/22 Срд 08:05:53 2509456 3
>>2509445
Если мне за питон платят, то зачем учить твою тухлую жабу? Чтобы лазить по корпоративных канализациях в резиновом костюме?
Уж если куда катиться, то в жс - порриджевать, нихуя не делая.
Аноним 09/11/22 Срд 08:22:01 2509461 4
>>2509456
Ну тебе самому не стыдно? Если тебе будут платить за то что ты сосешь, это значит что ты не гей?
Аноним 09/11/22 Срд 08:27:38 2509463 5
>>2509461
Почему мне должно быть стыдно за питон? Потому что ты дурачок с детскими комплексами?
Аноним 09/11/22 Срд 08:56:42 2509467 6
>>2509445
> Почему вы не пересядете на корпоративный кукан Оракла или Майкрософта
Фиг знает, очком не вышел.
Anaconda PyCharm + Qt Designer: моментально закрывается окно в Windows 10 Аноним 09/11/22 Срд 10:47:54 2509515 7
1.png 49Кб, 968x231
968x231
Bash.png 8Кб, 832x144
832x144
Последовательны[...].jpg 79Кб, 980x513
980x513
Результат запус[...].jpg 24Кб, 986x515
986x515
В общем проблема в том, что я использую Anaconda и в отличии от IDLE там нельзя просто так поставить ассоциацию .py файлов с интерпретатором PYthon, так как там используется множество окружений и необходимая среда должна быть активирована перед запуском файла .py. Без написания .bat файла не обойтись. Я никогда этого не делал и не знаю синтаксиса cmd. Я нашел, как активировать нужную мне среду с помощью .bat файла, но я не могу открыть в нем нужный мне файл. Я уже согласен, чтобы задавать его статически через текстовый редактор, но в идеале, конечно, путь к нему должен передаваться в качестве аргумента. Далее нужно как-то зайти в нужную мне папку и запустить нужный мне .py файл в уже активированной среде. Должно получиться что-то вроде прикрепленного кода. Но это не работает, в нужную мне папку оно не переходит, но если ввести эти команды последовательно вручную через консоль, то программа запускается и отрабатывает нормально.
Аноним 09/11/22 Срд 11:21:22 2509528 8
>>2509515
нормально всё работает в анаконде. у тебя прога просто с ошибкой валится, запусти через консоль
Аноним 09/11/22 Срд 11:23:46 2509532 9
>>2509444
Прямым способом наверное никак

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

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

Ты ведь после этого не можешь использовать конструкцию вида
obj = Pook()
Pook.quit(obj)
а это подразумевается
Аноним 09/11/22 Срд 11:57:01 2509556 10
изображение.png 397Кб, 620x879
620x879
Аноним 09/11/22 Срд 13:57:28 2509646 11
>>2509463
>>2509467
Ну типа могли бы нормальные деньги зарабатывать, а не на яп школьников сидеть и ждать пока какой-то девятиклассник фрилансер вас заменит
Аноним 09/11/22 Срд 14:24:09 2509669 12
>>2509646
А что, мем из нулевых про таксистов учащих жабу уже не актуален?
Аноним 09/11/22 Срд 14:43:13 2509706 13
изображение.png 454Кб, 503x711
503x711
изображение.png 397Кб, 591x960
591x960
>>2509646
Как тебе такое положение дел?
Аноним 09/11/22 Срд 15:02:32 2509723 14
На связи парень 29 лет из Сочи, надо как-то поднимать норм бабки, решил для вката взять язык peton, подскажете, сколько времени примерно займет обучение? На курсах слыхал просто бабки вытягивают и учебный процесс больно растянут, реально же самому выучиться? За месяц-полтора возможно? И сколько платить будут? Поначалу согласен на невысокие ставки, но совсем за еду тоже пахать не собираюсь. 60-80к будет?
Аноним 09/11/22 Срд 15:06:45 2509728 15
>>2509723
>просто бабки
Сказки. Пердиксы боятся конкуренции и распускают слухи.
>реально же самому выучиться
Да, но это на год и более, если есть способности
>За месяц-полтора возможно
Читай выше. За месяц ты даже метаклассы и асинхронное программирование не выучишь
>60-80к
Без опыта надо готовиться за 20-40к работать с полгода хотя бы.
Аноним 09/11/22 Срд 16:10:43 2509798 16
>>2509706
Надо подрисовать ещё с крестами. Там ты тоже один, но без ноги.
Аноним 09/11/22 Срд 16:16:10 2509806 17
>>2509728
>метаклассы
Это и есть ООП? Т.е. ты, обращаясь к классу, создаёшь объект, который отрабатывает методы, а потом схлопывается, будто его и не было, но оставляет за собой информацию, которая была прописана в методах (либо ничего не оставляет)?
>асинхронное программирование
Это что за йоба? Это что-то из дата-сайенс? Пример приведи самый простой.
Аноним 09/11/22 Срд 16:34:55 2509829 18
Аноним 09/11/22 Срд 16:36:25 2509833 19
>>2509706
По такой логике человечек + 1с должно быть непомещающееся на экран количество тянок
чем хуже - тем лучше ведь?
Аноним 09/11/22 Срд 18:17:55 2509941 20
>>2509806
>Это и есть ООП
Нет
>Пример приведи самый простой
Веб сервер
Аноним 09/11/22 Срд 18:19:01 2509942 21
>>2509806
>Это что за йоба?
Узнаешь в процессе.
Аноним 09/11/22 Срд 18:30:34 2509950 22
image.png 76Кб, 1350x653
1350x653
В Админке модели разделены по app, в которых они определены. Можно как-то по-своему из раздербанить? В Main у меня слишком много моделей, хотелось бы разделить их еще
Аноним 09/11/22 Срд 19:43:26 2510009 23
Пытаюсь учить, но очень быстро забываю всё, что-то выучил, вроде понятно, перешел дальше, через 2 дня уже забыл то, что было понятно. Я дурак или что-то делаю не так?
Аноним 09/11/22 Срд 20:03:39 2510028 24
>>2510009
учишься неправильно
learning how to learn пройди на курсере
Аноним 09/11/22 Срд 20:13:29 2510032 25
>>2510009
Практику делай с каждым примером. Желательно несколько и разное
Аноним 09/11/22 Срд 20:34:03 2510059 26
Вот бы был thread для обсуждения того как челикам из Сочи в 29 лет обустроить свою жизнь и отдельный thread где мы обсуждаем язык программирования Python.
Аноним 09/11/22 Срд 20:54:25 2510088 27
Аноним 09/11/22 Срд 21:45:58 2510145 28
>>2509942
>>2509941
Ну что вы за люди-то, а?
Какой блджад вебсервер? При чём тут асинхронное программирование? Мы тут серверы пишем и изобретаем велосидпеды или простыми словами пытаемся разобраться в сути?
Ссать и срать одновременно - это ассинхронное программирование или ссать, а потом срать (или срать, а потом ссать) - это ассинхронное программирование?
Аноним 09/11/22 Срд 22:46:45 2510210 29
Мне понадобилось полтора года чтобы устроится джуном в ДС, летом дело было.
Минимум с текущими требованиями, если не проебываться (как я) и повезет думаю полгода, если не повезет - год.
За полтора месяца выучишь ты в лучшем случае разберешься с самим языком более менее (этого абсолютно недостаточно)
Аноним 09/11/22 Срд 22:51:33 2510213 30
qualitypost.png 253Кб, 396x423
396x423
Асинхронное программирование это поссать между двумя какахами, синхронное не можешь ссать пока не просрался полностью.
Аноним 09/11/22 Срд 23:14:43 2510231 31
1.png 62Кб, 1087x676
1087x676
Код конвертируе[...].png 5Кб, 658x136
658x136
>>2509528
Нашел программу Bat_To_Exe_Converter https://bat-to-exe-converter-x64.en.softonic.com/download, которая конвертирует .bat файлы в .exe. Так же она позволяет скрывать командную строку при запуске .py файла, установить иконку полученному .exe файлу. Программа даёт возможность установить ассоциацию .py файлов с полученным .exe файлом, позволяя тем самым запускать .py файлы в нужном окружении Anacond'ы двойным щелчком мыши. После конвертирования .bat файл можно удалять.
Аноним 10/11/22 Чтв 01:03:09 2510307 32
>>2510145
Иди лучше в пятерочку работать, программирование не твоё
Аноним 10/11/22 Чтв 03:20:05 2510352 33
Аноним 10/11/22 Чтв 04:07:05 2510359 34
>>2509532
хреново, блин. такой сахарок приятный. придется в ините регистрироваться
Аноним 10/11/22 Чтв 04:27:56 2510362 35
>>2509444
В ините писать self.quit = input_event('quit')(self.quit)
Аноним 10/11/22 Чтв 04:55:19 2510374 36
>>2510362
да, у меня так сейчас (без враппера есессн)
Аноним 10/11/22 Чтв 05:15:36 2510376 37
Как можно писать на языке, у которого логотип - украинский флаг? Вы вообще нормальные?
Аноним 10/11/22 Чтв 05:56:29 2510387 38
>>2510376
python старше, чем Украина
Аноним 10/11/22 Чтв 09:12:31 2510417 39
>>2509556
Какое-то хуйло скопипастило доку из стандартной биллиотеки и пары сторонних библиотек и назвал это книгой
Аноним 10/11/22 Чтв 10:26:31 2510457 40
>>2510417
Я когда в универе учился и писал курсач кучу книг перерыл и обнаружил, что всякие ученые и преподы которые пишут новые книги тупо копипастят куски из разных книг 60-70-х годов и выпускают это как свою книгу. Причем зачастую копипастят с ошибками. Мне больше всего понравилось как я смотрел книгу, а там аннотация была что этот учёный посвещяет её какому то своему учителю. Я чуть не расплакался, а при беглом осмотре обнаружилось, что произведение состоит из выдранных кусков трёх старых совковых книг, спизженно было всё вплоть до названия разделов и самого текста.
Аноним 10/11/22 Чтв 10:32:03 2510459 41
>>2510457
Пиздец, меня бесят такие ублюдки! А тебя?
Аноним 10/11/22 Чтв 10:35:14 2510461 42
>>2510459
Та я просто проорал, но это печально на постсовковом пространстве во многих областях в той же медицине, протоколы лечения например, наука находится на уровне 60-70 годов прошлого века.
Аноним 10/11/22 Чтв 11:08:39 2510488 43
>>2510417
давай-ка, переведи на русский ВСЮ документацию asyncio, а мы посмотрим
Аноним 10/11/22 Чтв 11:54:08 2510504 44
>>2509442 (OP)
Товарищи питонисты, как мне заставить две хуеты обрабатывать файл одновременно?

Например, башем я бы делал что-то вроде:
tar -cf - ./shit | xz -9 -c - > ./shit.tar.gz

Как мне провернуть тож самое с tarfile и pgzip? У второго в примерах только строки, но наверняка это говнище должно и с файлами уметь работать.
Аноним 10/11/22 Чтв 12:53:50 2510559 45
>>2510461
почему всё так ебано?
Аноним 10/11/22 Чтв 12:59:17 2510564 46
>>2510504
Ты конвейер обработки хочешь запилить?
Аноним 10/11/22 Чтв 13:15:20 2510582 47
Уважаемые помогите пожалуйста.
Я очень много раз пытался ставить себе питон, не для того чтобы писать код, а для прикладных задач. И каждый раз, установив пакет, у меня не получалось достучаться до консоли, команды не принимает, пишет что неверный синтаксис.
Не занимаюсь кодингом, но есть нужда в том чтобы скомпилировать софт, все лежит в архиве. Есть ли на данный момент онлайн сервис который делает это за тебя в облаке?
Аноним 10/11/22 Чтв 13:25:18 2510590 48
>>2510582
Сам разраб при этом пишет что все легко делается через Nuitka, но я не смог эту библиотеку добавить, руки кривоваты
PyCharm + PyQt5 автодополнение текста Аноним 10/11/22 Чтв 13:32:33 2510594 49
В VisualStudio, когда обращаешься к компоненту через точку тебе сразу предлагают методы и данные, которые к этому классу относятся. В PyCharm'е при работе с .ui файлами ощущение, что ты обращаешься к черному ящику про содержимое которого ничего не известно. Есть ли плагины или какие то другие способы организовать автодополнение текста для графических компонентов в PyCharme'е наподобие того, что есть в VisualStudio?
Аноним 10/11/22 Чтв 13:38:06 2510597 50
>>2510564
Наверное, это так и называется, да.
Я, короче, пытаюсь ужать 500 гигов данных, и мне не очень хочется хранить промежуточный tar на диске.
Аноним 10/11/22 Чтв 13:49:35 2510603 51
>>2510594
>PyCharme
Я бы, конечно, посоветовал бы это говнище раздутоене использовать, но дело твое. pyqt5-sip, pyqt5-tools установлены?
Аноним 10/11/22 Чтв 13:55:11 2510605 52
>>2510582
Ванную, пакеты ставятся не на тот питон, который вызывается в консоли
Аноним 10/11/22 Чтв 13:55:42 2510606 53
Аноним 10/11/22 Чтв 14:04:58 2510609 54
>>2510597
tarfile сам умеет сжимать, можно не ебаться с буферами

А если нужен таки буфер, то вроде никак. tarfile в них не умеет.
Аноним 10/11/22 Чтв 14:07:33 2510610 55
>>2510594
>при работе с .ui файлами
Посмотри плагины в сторе, а также потыркай гугл на тему PyCharm'а и qt5. PyCharm из коробки банально не умеет в эти файлы.
Аноним 10/11/22 Чтв 14:13:23 2510614 56
Задача. Есть ответ сервера, json. Данных много, 5Гб. Как распарсить его с минимальными затратами, чтоб записать в файл, изменив содержимое
Аноним 10/11/22 Чтв 14:17:57 2510616 57
>>2510614
Смотри стриминговые json-парсеры, вроде ijson.
Аноним 10/11/22 Чтв 14:24:39 2510622 58
>>2510609
Блин, он это в один поток делает. Это чудовищно медленно, особенно на машине с 64 cpu. Как бэ, я могу и дальше subprocess дёргать, но интересно как сделать это без костылей.
Аноним 10/11/22 Чтв 14:27:51 2510624 59
>>2510622
Если ты делаешь скриптуху, то subprocess костылём не считается.
Аноним 10/11/22 Чтв 14:35:46 2510632 60
>>2510624
Ну а всё-таки? Просто подозреваю, что там какой-нибудь BytesIO нужен, но он разве не целиком всё в ram грузит?
Аноним 10/11/22 Чтв 14:43:43 2510635 61
>>2510632
Да, верно, через это и делается подобие пайпов. Просто я не вижу, чтобы tarfile отдавал bytesio наружу. Если найдёшь - можно попробовать.
Аноним 10/11/22 Чтв 14:49:03 2510638 62
>>2510635
Я вижу что можно открыть через tarfile bytesio объект и дальше работать, меня смущает только, что не окажется ли на моём серваке всё забито питухоном, а потом oom убьёт всё к хуям?
Аноним 10/11/22 Чтв 14:56:04 2510643 63
>>2510638
Не должно, но зависит от того, как это внутре тех либ реализовано. Лучше протестить, чтоб наверняка. Либо чекнуть код.
Аноним 10/11/22 Чтв 15:32:25 2510666 64
Guys, надо ли добавлять файлы вроде poetry.lock или Pipfile.lockв гитигнор? Или они должны всегда передаваться в гит?
Аноним 10/11/22 Чтв 16:01:11 2510674 65
Аноним 10/11/22 Чтв 16:38:20 2510692 66
>>2510352
Спасибо
>>2510307
А ты пошёл на хуй со своим гонором, говно
Аноним 10/11/22 Чтв 16:44:07 2510696 67
>>2510307
Имагинируйте мое ебало, когда я сижу в X5
Аноним 10/11/22 Чтв 16:58:59 2510715 68
>>2510622
Алёбля, а как ты собираешься сжимать последовательный поток данныз многопоточно?

Более того, очень даже выгодно когда файлы одного типа последовательно и однопоточно подаются на вход в gzip. Сам подумай почему.

Вообще непонятно нафига что-то писать, есть bash все это делает и нужно просто разобраться с subprocess
Аноним 10/11/22 Чтв 17:02:40 2510718 69
>>2510674
Не надо игнорить в смысле
Аноним 10/11/22 Чтв 17:03:26 2510720 70
Аноним 10/11/22 Чтв 18:52:53 2510836 71
>>2510715
>Алёбля, а как ты собираешься сжимать последовательный поток данныз многопоточно?
А в чём проблема? Сжатие вполне параллелится.
Аноним 10/11/22 Чтв 19:33:57 2510861 72
Как убрать дубликаты в списке словарей, сохраняя изначальный порядок?
Аноним 10/11/22 Чтв 19:50:11 2510870 73
>>2510861
>сохраняя изначальный порядок
Императивно.
Аноним 10/11/22 Чтв 22:19:13 2510939 74
>>2510715
Ну а как баш тож самое делает? Вот я и пытаюсь понять. Во-первых чисто лулзов ради, во-вторых, опыт.
Аноним 10/11/22 Чтв 23:16:59 2510963 75
>>2510720
Вот я для xtrabackup и делаю обёртку. То xbstream иногда подводит и между версиями хуёво соображает.
Аноним 11/11/22 Птн 00:12:46 2510995 76
>>2509442 (OP)
>3 пик
IRL Африку по площади составят две России
Аноним 11/11/22 Птн 00:25:59 2511000 77
image.png 20Кб, 740x382
740x382
>>2510995
Ты ещё скажи, что гренландия на самом деле не больше южной америки, ха!

>>2510861
ld = [{"b":"B"}, {"a": "A"}, {"b":"B"}]
nodup = []
for d in ld:
__if d not in nodup:
____nodup.append(d)

nodup
Аноним 11/11/22 Птн 03:05:29 2511032 78
>>2510836
gz - нет, в силу алгоритма, мало какие алгоритмы сжатия в параллель работают, потому что у большинства принцип накопления словаря в зависимости от текущего потока в том или ином виде
Аноним 11/11/22 Птн 03:15:01 2511033 79
>>2511032
Впрочем может я неправ насчёт gz, хотя не очень понимаю, как это работает
Аноним 11/11/22 Птн 10:30:10 2511118 80
>>2511032>>2511033
> gz - нет, в силу алгоритма
pigz
> мало какие алгоритмы сжатия в параллель работают
Практически все современные. Словарь можно шарить между потоками. Словарь можно использовать претрененый. В конце концов можно делать словарь на поток, в больших масштабах невелика потеря.
Аноним 11/11/22 Птн 11:18:24 2511130 81
>>2510939
>Ну а как баш тож самое делает? Вот я и пытаюсь понять. Во-первых чисто лулзов ради, во-вторых, опыт.

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

man 2 pipe.
прочитать классические книги и reference api - вот это опыт. а у тебя опыт бесполезного глупого тыканья.
Аноним 11/11/22 Птн 11:27:17 2511133 82
>>2510963
А зачем? С чего все началось?

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


У меня тут недавно обновилась программа qpress и весь бекап по пизде пошел. скорее всего это потому что Percona - это уже не пара русских пацанов, а <вставьте_обидное_национальное_прозвище>
В общем, теперь бекап с помощью mariabackup просто зависает навсегда. Я перешел на сжатие с помощью gzip в конвеере, но как-то медленновато стало работать.

Разве xbstream может подвести тоже?
Аноним 11/11/22 Птн 11:38:21 2511138 83
>>2510504
>xz -9 -c - > ./shit.tar.gz

У тебя расширение файла неправильное, в курсе?
Аноним 11/11/22 Птн 12:38:33 2511189 84
>>2511138
Да, знаю. Ток как запостил заметил.
Аноним 11/11/22 Птн 12:39:44 2511190 85
А насколько нормально делать что-то такое в __init__? Бля, никто вроде так не делает, но это не значит же, что это говно?

from toolbox.termcolors import colorize
from toolbox.s3tool import S3Wrapper
from toolbox.xtrabackuptool import XtrabackupWrapper

__all__ = ['s3', 'termcolors', 'xtrabackup']

s3 = S3Wrapper
xtrabackup = XtrabackupWrapper
Аноним 11/11/22 Птн 12:45:34 2511197 86
>>2510504
Отвечу на свой вопрос сам, спасибо ЛОРу:
with pgzip.open(f"{name}.tar.gz", "wb", compresslevel=9) as fw, tarfile.open(mode="w|", fileobj=fw) as tf:
&nbsp;&nbsp;&nbsp;&nbsp;tf.add(f'{self.backup_dir}/backup/.', arcname='backup')
Аноним 11/11/22 Птн 12:46:11 2511200 87
>>2511197
Да бля. Ебаная макаба.
Аноним 11/11/22 Птн 13:10:03 2511217 88
image.png 713Кб, 1777x860
1777x860
>>2510995
Это единственное что тебя смущает на этой проклятой карте?
Аноним 11/11/22 Птн 13:20:26 2511221 89
>>2511217
так, стоп Северный Кипр чей?
Аноним 11/11/22 Птн 15:09:48 2511310 90
Посоны, помогите!
Нужно сделать что бы у пользователя на сайте(Django) появлялись новые комментарии в режиме реального времени. Т.е. при добавлении комментария по постсэйв сигналу у человека на сайте автоматом погружался новый комментарий. С бэк частью всё понятно, вопрос что гуглить и курить что бы реализовать это на фронт части? Мне в голову пришло только отправлять запрос с клиента каждые 30 сек по time.sleep. Но я знаю что есть правильное решение.
Помоги плиз, Антончик!
Аноним 11/11/22 Птн 15:17:18 2511312 91
Аноним 11/11/22 Птн 16:42:14 2511387 92
Снимок экрана ([...].png 292Кб, 1920x1080
1920x1080
Что за хуйня?
Аноним 11/11/22 Птн 16:42:44 2511388 93
>>2511221
Если платят турецкой лиров, то Турции
Аноним 11/11/22 Птн 16:43:32 2511389 94
>>2511310
Сокеты /таймер опросов сервера
Аноним 11/11/22 Птн 16:44:29 2511391 95
>>2511387
Выкинь нахуй этот пайчарм. Больше с ним дрочиться заставляет
Аноним 11/11/22 Птн 16:46:19 2511392 96
>>2511391
Правильно! Пусть вим накатит
Аноним 11/11/22 Птн 16:50:27 2511396 97
Аноним 11/11/22 Птн 16:51:16 2511398 98
>>2511387
дА бля, как фиксить сука
Аноним 11/11/22 Птн 16:53:20 2511400 99
image.png 186Кб, 478x261
478x261
Аноним 11/11/22 Птн 17:04:51 2511412 100
Снимок экрана ([...].png 246Кб, 1920x1080
1920x1080
Аноним 11/11/22 Птн 19:27:34 2511568 101
Снимок экрана 2[...].png 2365Кб, 3584x2240
3584x2240
>>2511392
Без шуток.
Естественно, собрать его, особенно не зная всех конфигов и хоткеев - квест не легче чем генту установить, после сидения на виндовсе. Но окупается значительно.
Аноним 11/11/22 Птн 19:49:43 2511584 102
Я пару дней пытаюсь разобраться в Python, и уже начитался кучи негативных отзывов про PyCharm, но так и не понял в чем суть претензий. Можете мне по человечески объяснить чем он так плох и какую IDE лучше юзать?
Аноним 11/11/22 Птн 19:59:32 2511593 103
>>2511584
Ищи то, что тебе подойдет. Перепробуй что можешь.
У пайчарма проблема, что он сильно громоздкий. Индексация и ревалидация кеша на каждое открытие проекта, причем не быстрое. LSP бывает подвисает жестко. Интеграция с гитом, но очень куцая, бисект и локальное игнорирование файла нельзя сделать.
Профилировщик - мне кажется единственная сильная и безконкурентная сторона. Историю гита тоже очень удобно просматривать.
Аноним 11/11/22 Птн 19:59:48 2511595 104
>>2511584

лучшая иде для питона так-то

понятно, что никто не сидит и от нехуй делать строчит дифирамбы пичарму, чтобы создать у тебя и других мимокроков впечатление охуенности ПО. и наоборот: кому-то явно нехуй делать, и он сидит говнит пичарм ИТТ почем зря, может на срач рассчитывает, но всем лень/похуй
Аноним 11/11/22 Птн 21:53:24 2511711 105
>>2511593
>локальное игнорирование файла нельзя сделать
Можно, добавляешь правки в другой ченжсет и забываешь про него
Аноним 11/11/22 Птн 22:50:00 2511787 106
>>2511595
>понятно, что никто не сидит и от нехуй делать строчит дифирамбы пичарму
В смысле? Вот >>2511595 же
Аноним 11/11/22 Птн 23:54:52 2511806 107
сколько можно.mp4 317Кб, 472x360, 00:00:05
472x360
Пытаюсь сделать кликер в одной браузерной игрушке. Но он сука нихуя не кликает. В этих интернетах пишут что это может быть как-то связано с directx. 10 резных библиотек перепробовал и ни одна не кликает. Сука.
Аноним 12/11/22 Суб 00:09:34 2511813 108
>>2511806
>пишут что это может быть как-то связано с directx
Настало время устанавливать линукс.
Аноним 12/11/22 Суб 00:23:13 2511814 109
Это падло все таки кликает. На обьекты у которых курсор меняется на палец оно кликает. Обьекты под обычной стрелкой нихуя.
Аноним 12/11/22 Суб 01:19:54 2511819 110
>>2509442 (OP)
В пандасе формирую таблицу в необходимом мне виде.
usecols="B,E,V,AI,R"
Но выводятся столбцы в алфавитном порядке, как в эксель файле. Как сделать, чтобы столбцы шли в том порядке, в каком я прописал в юзколс?
Аноним 12/11/22 Суб 04:28:39 2511858 111
>>2511814
ХЗ как эти кликеры устроены, наверное не опознаёт некоторые элементы управления как кнопки. Ты же можешь функционал кнопки сам реализовать, просто перехватываешь клик-эвент, смотришь на чём был курсор и в соответствии с этим поступаешь. Кликнуть можешь в абсолютно любое место. И тебе не надо явно регистрировать сам объект как обработчик клика.
Аноним 12/11/22 Суб 04:39:18 2511861 112
>>2511819
list(cols) для итератора или dict(cols[vals]) для хардкода
Аноним 12/11/22 Суб 09:28:35 2511892 113
>>2511819
у таблицы НЕТ ПОРЯДКА столбцов, алло!
Аноним 12/11/22 Суб 10:34:48 2511928 114
>>2511568
Чем окупается-то? Красноглазием? Тем, что после настройки вима можно сразу устраиваться middle lua developer? На каждый новый чих весь день сидеть и разбираться, как перенастраивать все плагины?
Аноним 12/11/22 Суб 11:00:29 2511947 115
Аноним 12/11/22 Суб 13:29:37 2512022 116
>>2511861
>list(cols)
Не смог нагуглить как это использовать, у меня код на 5 строк, а в гугле у всех простыни какие-то.
Аноним 12/11/22 Суб 14:59:07 2512087 117
Аноны помогите , я только начинаю вкат..

Есть функция которая проверяет одинаковые буквы в слове которые идут подряд если есть возвращает true если нет то false

def double(word):
for i in range(len(word)-1):
if word== word[i+1]:
return True
return False


Вопрос такой какие тут preconditions ?
Аноним 12/11/22 Суб 15:40:16 2512114 118
>>2512087
>if word[ i ] == word[i+1]:
Прадумова такое што трэба показваць код праз сэрвісы разметкі. Другая - твае слова мусіць быць даўжэй за адну літару.
Аноним 12/11/22 Суб 15:47:25 2512118 119
>>2510457
>всякие ученые и преподы которые пишут новые книги тупо копипастят куски из разных книг 60-70-х годов
Добро пожаловать в рашку, страну воровства и плагиата, в том числе интеллектуальной собственности.
Аноним 12/11/22 Суб 20:17:29 2512343 120
Хелп. Есть такая конструкция:
{'vnet0': {'addrs': [{'addr': '192.168.122.86', 'prefix': 0, 'type': 0}], 'hwaddr': '52:54:00:aa:03:7b'}}

Как проще всего вытащить айпишник оттуда? Это еще интерфейс один, а может быть несколько - тогда нужно самый первый взять
Аноним 12/11/22 Суб 22:05:49 2512408 121
>>2512343
Используй функцию type(), чтобы понять какой тип у переменной. Понимание типа многократно способствует возможности работы с ней.
https://pastebin.com/2wKuLfr1
Аноним 12/11/22 Суб 22:52:22 2512445 122
Аноним 13/11/22 Вск 00:33:38 2512493 123
>>2512343
first_if_name = list(out)[0]
print('The first IP of the first Interface:', out[first_if_name]['addrs'][0]['addr'])
Python документация Аноним 13/11/22 Вск 01:06:47 2512516 124
Ладно я дибил мне с английским сложно. Куда бы я не зашел везде какие то троли нахваливают доки к Qt и PyQt в частности. Я извиняюсь, но по сравнению с VisualStudio это полное убожество, я 3 часа менял цвет на лейбле, в документации этого просто нет, одно из основных свойств компонента который кроме вывода текста ничего не делает вообще отсутствует как отдельное поле, это просто смешно. Ответ вместо этого гуглится на левых форумах, какая то сраная html разметка. Цвет устанавливается через метод SetStyleSheet, но самое смешное что в доках он отсутствует в описании QLable, потому что оно не родное, а наследуется от QWidget. Это блядь занавес. Эту хуйню разрабатывают с 95 года, неужели нельзя было за это время сделать нормальную справку по типу VisualStudio? Где искать информацию? На левых форумах? Это наркомания.
Аноним 13/11/22 Вск 01:14:52 2512521 125
image.png 0Кб, 65x21
65x21
triangleinterse[...].png 26Кб, 771x532
771x532
triangleinterse[...].png 85Кб, 1237x681
1237x681
Помогите советом инженеру.
Написал для работы расчётную программу на питоне - всё отлично, но слишком медленно работает. Затык - в алгоритме нахождение точки пересечения луча и многоугольника (фактически луча и треугольника). Функция ray_polygon_intersection выполняется 98.7% от общего времени работы программы.
Возникла идея переписать эту функцию на C++ для ускорения, тем более, что изначально она на нём и была написана - https://ru.wikipedia.org/wiki/Алгоритм_Моллера_—_Трумбора
Но вот вопрос, а ускорится ли работа программы? Там в основном ведь работает numpy, а эта библиотека и так на C написана. Понимаю, что очевидный ответ - взять, запустить эту функцию на обоих языках и сравнить, но я совсем не умею с C++ работать, после питона натурально шиза какая-то. Так может, я зря сейчас мучаюсь?
Аноним 13/11/22 Вск 01:32:09 2512534 126
>>2512521
Покажи код где у тебя numpy вызывается. По коду выглядит так будто ты можешь все распаралелить
Аноним 13/11/22 Вск 01:40:26 2512538 127
view.png 49Кб, 791x893
791x893
>>2512534
Могу. Но это не решение.
У меня в проге лучи кидаются тысячами и всё тормозит.
При этом на доисторической программе ЦНИИмаша с похожими задачами лучи бросаются сотнями тысяч - и всё считается очень бодро. Разумеется, никакого распараллеливания там нет, программа 97 года компиляции, может вообще на фортране писалась, чёрт его знает. А может и на С.
Я пока не понимаю, как деды из прошлого века меня так обгоняют по скорости.
Аноним 13/11/22 Вск 02:02:25 2512543 128
newf.png 12Кб, 777x225
777x225
triangleinterse[...].png 38Кб, 1132x368
1132x368
>>2512538
Нухуя себе.
Заменил np.cross и np.dot на самопальный пикрилейтед. Прирост производительности - 5.8 раза!!!
Мда, цензурных слов относительно numpy у меня больше нет.
Жалко я раньше умных людей не почитал.
https://stackoverflow.com/questions/1988091/poor-numpy-cross-performance
Аноним 13/11/22 Вск 02:05:54 2512544 129
Аноним 13/11/22 Вск 02:06:58 2512545 130
>>2512521
>но я совсем не умею с C++ работать, после питона натурально шиза какая-то
Возьми какой-нибудь раст, там более похоже на питон.
Аноним 13/11/22 Вск 02:12:43 2512547 131
>>2512545
Ну я всё-таки надеюсь сладить с этой одной несчастной функцией в C++ и интегрировать её прям в питон. Через dll, или как там это делается, надеюсь, не будет очень сложно.
Меня питон вполне устраивает, исключая такие вот редкие косяки производительности.
Аноним 13/11/22 Вск 02:21:27 2512550 132
>>2512547
Имею в виду эту единственную функцию на расте написать вместо с++, а не весь проект менять.
Аноним 13/11/22 Вск 09:34:54 2512627 133
Что занимает больше памяти -- List[Tuple] или Tuple[List] ?
Например если у меня есть 100500 измерений по 4 float значений каждое, какой формат выйдет выгоднее?
Аноним 13/11/22 Вск 09:37:00 2512628 134
Аноним 13/11/22 Вск 09:50:16 2512635 135
Аноны подскажите как отсортировать список списков, сразу по нескольким параметрам.

Вот допустим есть список (list_1), он состоит из списков(list_N) их и надо сортировать.
list_N состоит из десятков элементов.
[
['23', 'text1', [1,2,3],'Боря', 'хуй', 'пизда', 'джигурда'],
['24', 'text2', [1,2,3],'Боря', 'хуй', 'залупа', 'джигурда'],
['23', 'text1', [1,3,2],'Боря', 'хуй', 'пизда', 'анти джигурда'],
['23', 'text0', [1,2,3],'Боря-лох', 'хуй', 'пизда', 'джигурда'],
]

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

Очевидно что нужно проходить циклом по каждому элементу и сравнивать его со всеми другими. Но может в питоне есть какое-то особе волшедное решение для таких задач. например диффлиб - который кстати не подошел, он высчитывает "индекс похожести" каким-то своим способом и возвращает не удовлетворительный результат по моему случаю.
Аноним 13/11/22 Вск 10:19:30 2512651 136
>>2512635
Нейронной сетью. Сначала отсортируй руками, потом сделай много рандомных сортировок, обучи модель, чтобы из рандомных делала ту, которую хочется тебе, а потом её используй для сортировки.
Аноним 13/11/22 Вск 12:12:22 2512734 137
>>2512635
невозможно сделать корректно, потому что нет линейной упорядоченности, возможны принципиально разные результаты сортировок, традиционные алгоритмы не пригодны
Аноним 13/11/22 Вск 18:07:34 2513019 138
Аноним 13/11/22 Вск 18:38:32 2513040 139
>>2513019
Спс. Не уверен что это мне подходит, но есть над чем подумать.
Аноним 13/11/22 Вск 19:14:15 2513076 140
>>2512734
все можно отсортировать.
тебе нужно просто определить операцию сравнения или операцию расстояния чтобы использовать уже определенные операции сравнения чисел.
Аноним 13/11/22 Вск 19:18:13 2513080 141
>>2512635
мне кажется на программистов свалили задачу которую раньше выполнял математик.

может вернешь им?
Аноним 13/11/22 Вск 19:25:45 2513089 142
>>2512635
https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.euclidean_distances.html#sklearn.metrics.pairwise.euclidean_distances
вообще, я бы не занимался сортировкой тут.
преобразуй эти строки в номинативные переменные и сохрани данные в виде sparce matrix.
Дальше посчитай евклидовы расстояния попарные (https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.distance.euclidean.html) ну и начни сортировать от 0 прикрепляя наименее отличающийся к каждому следующему.
Очевидно способов посчитать расстояние - множество.
Способов собрать сортированные список - множество.
Но человек все равно посчитает такие данные близкими, ведь это же компьютер так решил :))

вот тут мы видим пример такого рассуждения. давайте загоним в нейросеть чтобы с снять с себя ответственность : >>2512651
Аноним 13/11/22 Вск 19:36:38 2513095 143
>>2512635

хуй знает как тебе помочь. у тебя не с сортировкой, а с постановкой задачи проблема. формализуй, что ты считаешь гармонией, и что такое удовлетворяющий тебя результат. сортировка тут это самое простое
Pyuic5-Tool Аноним 13/11/22 Вск 20:16:06 2513117 144
NLP+ML прохар 13/11/22 Вск 20:31:41 2513135 145
Здарова молодые. Объясните мне ПЛИЗ одну вещь.

Я хочу заебашить курсач. Допустим, у меня есть твиты вет. клиник (которые лечат только кошек и собак) и я хочу с помощью NLP+ML разделить все твиты на "кошачьи" и "собачьи". Допустим, я хочу таким образом классифицировать 100 тыс. твитов.

Итак вопросы:

Первое: можно ли с помощью NLP+ML анализировать текст не только на тональность (позитив/негатив), но и на "кошачьесть", "собачесть", при наличии офк test и validation выборок?

Второе: я правильно понимаю, что если я хочу проанализировать 100 тыс. твитов, то мне вручную для обучения модели придется классифицировать 10-20% от этих ста тысяч?

Огромное спасибо за ответы, это реально поможет перестать мне прокрастинировать, поскольку через гуглинг и чтение документации порой бывает очень сложно найти ответы на фундаментальные вопросы.
Аноним 13/11/22 Вск 20:56:11 2513170 146
>>2512635
если элементы повторяются, то lru cache от functools сильно поможет
Аноним 13/11/22 Вск 21:35:19 2513210 147
>>2513117
Каманда у кансоле:
pyuic5 -o mainwindow.py mainwindow.ui
дзе mainwindow.ui - шлях да твайго інтэрфэйсу.

Але табе ня трэба гэта. Ужывай uic.loadUi('mainwindow.ui', self). Прыклад https://pym.dev/p/2mba6/
Аноним 13/11/22 Вск 21:41:58 2513212 148
>>2513210
Ты не понял оно должно автоматом при запуске приложения в IDE обновлять .py файл с учётом внесённых изменений, без необходимости вообще вызывать консоль.
Аноним 13/11/22 Вск 21:49:08 2513217 149
>>2513212
Карыстайся uic.loadUi() - усё абновіцца бяз пуску асяроддзя.
Аноним 13/11/22 Вск 21:52:29 2513218 150
>>2513217
Там автодополнения кода нет и через точку нельзя обратиться к членам формы.
Аноним 13/11/22 Вск 22:14:33 2513243 151
нужна помощь с написанием небольшого юнит-теста с применением mock-ов за оплату, тг mvgnvs
Аноним 14/11/22 Пнд 01:01:42 2513390 152
>>2513135

>Первое: можно ли с помощью NLP+ML анализировать текст не только на тональность (позитив/негатив), но и на "кошачьесть", "собачесть", при наличии офк test и validation выборок?

Да пожалуйста. Мы не против любой движухи.
Обеспечишь ли ты ожидаемую людьми точность?
Хоть курсяк и не диплом, защищать ты его будешь перед людьми очень хорошо понимающими суть научного метода и метрики достижения научных заслуг, даже если им влом погружаться в nlm.
И им не понравится твое издевательство над ними (метриками)


>Второе: я правильно понимаю, что если я хочу проанализировать 100 тыс. твитов, то мне вручную для обучения модели придется классифицировать 10-20% от этих ста тысяч?

Вообще-то, желательно пометить все имеющиеся данные. 10% - это граница чего? Кто ее провел?
Аноним 14/11/22 Пнд 01:06:29 2513393 153
>>2513076
Не всё можно упорядочить
Попробуй упорядочить комплексные числа. Вот у тебя 4 числа,
1, -1, i, -i
по модулю одинаковые, расстояния между ними или 2, или sqrt(2)

А теперь отсортируй их и обоснуй, почему так, а не иначе
Аноним 14/11/22 Пнд 02:08:14 2513414 154
>>2513117
Создается отдельный .py файл с кодом:

from converter import convert_ui
convert_ui("MainForm.ui")

Каждый раз после редактирования в дизайнере .ui файла запускаем скрипт и он заново конвертирует нужные .ui файлы без вызова консоли. Благодаря работе с pyuic5 функция автодополнения работает и есть доступ к членам формы через точку
Аноним 14/11/22 Пнд 11:17:00 2513527 155
Пистонщики привет! Поясните за веб. Чем ваш питон лучше той же пыхи? Или просто мода на яп заставляет высасывать плюсы из пальца?
Аноним 14/11/22 Пнд 11:17:55 2513529 156
>>2513393
Линейный порядок можно предъявить для любого множества. Более того, по теореме Цермело любое множество можно вполне упорядочить (правда не всегда получится построить такой порядок конструктивно). Комплексные числа можно, например, просто сравнивать лексикографически, или сначала по модулю, а потом уже лексикографически.
Аноним 14/11/22 Пнд 11:32:36 2513533 157
>>2513527
в пыхе нет культуры постоянно запущенного кода. после обработки запроса все ресурсы автоматически освобождаются и в следующий раз начинаются вычисления заново.
Только представь сколько предварительно вычисленных данных можно хранить глобально в твоем приложении.

несмотря на то, что они пытаются это исправить, нет культуры - нет движения.
Аноним 14/11/22 Пнд 11:34:43 2513535 158
>>2513393
>А теперь отсортируй их и обоснуй, почему так, а не иначе
а схуяли? я могу выбрать любое правило. Хеширование или еще что-то.
Это тебе придется обосновывать почему я не могу это сделать так, а не иначе.
Аноним 14/11/22 Пнд 12:00:28 2513550 159
>>2511947
>>2511568
Видал буквально 2 людей кто сумел настроить себе вим нормально и оба были красноглазыми петухами. Остальные без конца ломали себе руки и ноги в попытках на нем работать но сцук каждый повизгивал что ему очень вкусно
Аноним 14/11/22 Пнд 12:06:41 2513554 160
>>2513550
Илитно же.
Ну знать там двадцать ходовых хоткеев заебись - что-то подкрутить на сервере, а хуевертить какие-то конфиги-плагины и превращать его в НЕХ это очень на любителя.
Аноним 14/11/22 Пнд 12:36:39 2513578 161
>>2513527
да ничем. нахуй не нужны в вебе другие языки кроме жс, всё лучшее у жсеров, остальные чисто костыли для тех кто жсом не хочет пользоваться
Аноним 14/11/22 Пнд 12:41:29 2513580 162
Аноним 14/11/22 Пнд 12:42:34 2513581 163
image.png 535Кб, 719x583
719x583
>>2513578
>нахуй не нужны в вебе другие языки кроме жс
Твое ебало - пикрил.
Аноним 14/11/22 Пнд 14:52:49 2513651 164
image.png 3Кб, 281x171
281x171
>>2509442 (OP)
А насколько нормально делать вот так?
Вдогонку, как понять вообще, что принятое тобой решение не говно? Как бы, с моей стороны, если код делает свою задачу, значит он не говно. Однако всегда находятся чуваки с нюансами и говорят, что вообщет так не принято.
Аноним 14/11/22 Пнд 15:31:39 2513703 165
>>2513651
>А насколько нормально делать вот так?
А какие альтернативы этому ты представляешь?

>Вдогонку, как понять вообще, что принятое тобой решение не говно? Как бы, с моей стороны, если код делает свою задачу, значит он не говно. Однако всегда находятся чуваки с нюансами и говорят, что вообщет так не принято.
В каком сценарии? На роботе будет тимлид; на гитжабе, если код популярный, то кто-нибудь отпишет или даже отрефакторит; пока учишься на стак оверфлоу или реддите можно попросить отревьюить. А там и сам будешь знать, как принято.
Аноним 14/11/22 Пнд 15:41:47 2513717 166
>>2513703
> А какие альтернативы этому ты представляешь?
Никаких. Я только это смог придумать.

> В каком сценарии?
Да в том и дело, что я в основном для себя пишу. Я девопс и иногда, короче, приходится самому делать инструменты. Лида нет, как бы, я один. На питухоне в компании пишу тоже только я. Ну и короче хочется, чтобы никто потом не охуел, разгребая километры скриптов, написанных мной. Они с одной стороны простые и логичные, а с другой стороны, это может я так считаю, а другой припрётся и короче, не поймёт нихера.
Аноним 14/11/22 Пнд 15:42:24 2513718 167
>>2513651

эксепт не нужен тут
try: ...
finally: ...
Аноним 14/11/22 Пнд 15:43:09 2513719 168
>>2513717
>>2513651
except-блок тебе тут не нужен
В finally стоит делать закрытие какого-то ресурса а это дефолт блэт для любых операций с файлами/сокетами
Аноним 14/11/22 Пнд 15:48:47 2513721 169
>>2513719
А, так можно было. Окей.
У меня в finally подчищаются хвосты от работы скрипта, чтобы при следующем запуске не наебнулось говно из subprocess.
Аноним 14/11/22 Пнд 15:52:51 2513724 170
>>2513721
оно для этого и придумано
Аноним 14/11/22 Пнд 15:53:17 2513725 171
>>2513717
Ничего не поделаешь тогда. Попробуй полуркать по ключевым словам code smell, там научат, как не надо делать.
Аноним 14/11/22 Пнд 17:04:44 2513770 172
Аноны, кто-нибудь сталкивался с тем, что при попытке экспорта датафрейма в xlsx/csv/любой вообще формат, нихуя не происходит. Облазил весь stackoverflow и ничего дельного не нашел
Аноним 14/11/22 Пнд 17:16:01 2513775 173
>>2513770
Если тебе так интересно, не сталкивался.
Я последние лет 25 не сталкиваюсь с ситуациями когда код ведет себя необъяснимо. Вот когда меня посадили на VAX VMS после ПК - вот это была проблема и растерянность !
А у тебя Гугл есть, декомпозиция задач и отладчик.
Аноним 14/11/22 Пнд 17:56:30 2513793 174
Кто в Джанге шарит, хелп

Заделал кастомные роли у юзеров, в админке проверяем возможности смотреть/редактировать определенную модель согласно проверке роли юзера. Все бы ничего но у меня юзеры к ролям соотносятся many-to-many через промежуточную таблицу, каждый раз при проверке будут вызываться запрос в БД, что в общем-то пиздец накладно. Как это обойти?
Аноним 14/11/22 Пнд 18:35:42 2513815 175
Снимок экрана 2[...].png 71Кб, 1030x284
1030x284
Добрый вечер, как на сервере ебануть pip3, установить просто так не могу, python3 работает
Аноним 14/11/22 Пнд 18:38:16 2513818 176
image.png 136Кб, 548x515
548x515
image.png 556Кб, 1563x755
1563x755
Пацаны, я в питоне не шарю, можете код проанализировать?
Аноним 14/11/22 Пнд 18:48:44 2513825 177
>>2513818
Ну такой говнокод действительно нужно уметь писать
Аноним 14/11/22 Пнд 18:52:12 2513827 178
Как минимум функция перегружена, че там происходит лень вникать
Аноним 14/11/22 Пнд 18:57:59 2513834 179
image.png 22Кб, 534x139
534x139
Аноним 14/11/22 Пнд 19:12:06 2513845 180
>>2513815
>python 2.7
>centos покрылся мхом

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

Переустанавливайте все там на ubuntu 22.04.

2022 год на носу!
Аноним 14/11/22 Пнд 19:21:43 2513847 181
Аноны, вопрос.

Вот есть например словарь.

dict = {1:'', 2:'',}

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

dict_keys_var = dict.keys()
if 'some_key' in dict_keys_var:
pass


Это лучше чем каждый раз обращаться к dict.keys() ?

if 'some_key' in dict.keys():

Ну т.е. если я выполняю dict.keys() в этот момент создается список ключей. А если я это делаю в цикле, то список ключей будет делаться много раз, значит лучше поместить этот список в переменную?
Аноним 14/11/22 Пнд 19:28:29 2513852 182
>>2513818

вот это лютое дерьмище
Аноним 14/11/22 Пнд 19:31:05 2513854 183
>>2513847

со значениями так можно делать. но с ключами это лишнее. просто делаешь if key in dict, и будет работать
Аноним 14/11/22 Пнд 19:42:07 2513861 184
>>2513854
>будет работать
Лол ну понятно что будет. Вопрос про оптимизацию. Каждый раз при обращении будет список из ключей создаваться, или этот список - готовый объект в памяти, который уже создался когда-то там вместе со словарем?
Аноним 14/11/22 Пнд 19:43:10 2513862 185
>>2513861
Это мапка, там за тебя все создано уже
Аноним 14/11/22 Пнд 19:48:06 2513865 186
>>2509442 (OP)
Блять, меня уже трясёт от этого пидорства, помогите разобраться. Есть некий код на питоне, он отлично работает из консоли. Но вот при попытке выполнить этот код из шелл-скрипта - питон просто не выполняет его. Т.е. команда типа "python zalupa.py" просто не работает, а плюс ко всему питоновкая пидорасина ещё и возвращает код завершения 0, без выхлопа. Дальше ахуеннее - кладу код питона в другую соседнюю папку - он работает из скрипта, но при переключении на другого юзера опять такая же хуита. Права на доступ к папке чекал. Просто из консольки работает всегда. Перемещаю другим юзером - уже не работает у первого из скрипта.
В этом дерьме есть логи самого интерпретатора? Как это вообще дебажить, если он код 0 возвращает? До выполнения питоновского кода похоже даже не доходит, по крайней мере первые строчки уже не отрабатывают. И я нихуя не понимаю в чём разница запуска из консоли или скриптом, его же запускает один и тот же шелл, под одним и тем же юзером. Окружение? Но какого хуя оно начинает работать в другой рандомной папке?
Версии питона менял, если что.
Аноним 14/11/22 Пнд 19:50:24 2513867 187
>>2513861

item in list: O(n)
key in dict: ~O(1)

так понятнее?
Аноним 14/11/22 Пнд 19:53:36 2513872 188
>>2513865
> Есть некий код на питоне

я один хрустальный шар разбил, а другой потерял, звыняй
но скорее всего проблема либо в коде, либо не в нём
Аноним 14/11/22 Пнд 19:54:54 2513874 189
>>2513865
>До выполнения питоновского кода похоже даже не доходит
Так доходит или не доходит? Если не доходит - то при чем здесь питухон тред. ты где-то на стороне обосрался. А если доходит - то, ну хуй знает. Расставь по всему коду маркеры и смотри какие сработали, чтобы локализировать "проблему".
Аноним 14/11/22 Пнд 20:25:19 2513891 190
Аноним 14/11/22 Пнд 21:02:09 2513924 191
>>2513527
Преимущество питона - изобилие библиотек, в том числе C++. И многопоточность.

Для веба преимуществ не видно. Сам питон - язык незрелый, по ООП недоразвитый как php4, страдает несовместимостью версий. Документация никакая. С зависимостями ебля. После php выглядит как мопед после люксового авто. Короче еще лет 10 до уровня пхп и джавы.
Аноним 14/11/22 Пнд 21:20:26 2513928 192
>>2513865
У тебя некая проблема с администрированием unix системы.
Недавно команду придумал:
python -V
Ею можно определить работает ли сам и нтерпретатор из-под юзера. Еще прикольная команда есть:
which python
показывает путь к данному интерпретатору. Ну и дальше там всякие
ls -al *.py
показывает права доступа к файлам, скрипту например...
Аноним 14/11/22 Пнд 22:33:30 2513975 193
>>2513924
>джавы
Думаю перекатываться в бэкенд-разроботку из бэкенд-автоматизации и раньше думал про джавуна ней тесты пишу, но после полугода скриптов на петухоне как-то нет желания дрочить фабрики фабрик
Или я не прав и джава - охуенно, а я тупой уебан?
Аноним 14/11/22 Пнд 23:14:01 2514011 194
>>2510603
зато в нем все удобно и работает.
Аноним 14/11/22 Пнд 23:16:28 2514015 195
>>2511387
>>2511398
это кривой тийп хинтинг в либе.
никак не фиксить.
либо ты сделал какую то хуйню кривую.
Аноним 14/11/22 Пнд 23:23:58 2514028 196
>>2512114
Просто вслух проорал с этого визга.
Аноним 14/11/22 Пнд 23:25:37 2514030 197
>>2512408
Какой лист нахуй. Там dict епта. Ты глупый чтоли?
Аноним 14/11/22 Пнд 23:29:06 2514032 198
Аноним 14/11/22 Пнд 23:31:26 2514034 199
>>2513818
выглядит как какая то каша.
Аноним 14/11/22 Пнд 23:33:49 2514037 200
image.png 251Кб, 1545x261
1545x261
>>2513818
Что это блять за хуйня и нахуя она тут нужна?
Чел под спидами сидел код писал?
Аноним 14/11/22 Пнд 23:35:49 2514040 201
>>2513834
Девочка написала лютейшую кашу без понимания зачем она это все собирала, если можно было сделать проще.
Это как видел пример кода где чел на питоне работал с циклами на манер С
На типе
for i in range(0, a):
....list1
Может все таки хоть доку по питону разочек откроют?
Аноним 14/11/22 Пнд 23:41:45 2514045 202
>>2513975
Джава имеет за собой поддержку больших корпораций, поэтому её выбирают крупные компании. Однако, для веба она очень медленно пишется в отличие от интерпретируемых языков, дороговата в разработке. Джава хороша как язык в возможностях ООП. Пхп её в этой плане копирует, сохраняя при этом простоту и легкость написания кода под веб.

Короче, для бекенда по размерам проекта я вижу такую иерархию:
- java и php - для больших проектов
- python и ruby - для средних
- js и typescript - для мелочевки одностраничной
Аноним 14/11/22 Пнд 23:42:08 2514046 203
>>2513834
Так же эта чушка написала Oneline if condition, но из других ифов это оставила как есть в несколько строк.
Для чего она воткнула зип для 3х элементов в которых блять еще и tuples, не ясно не понятно..........
action is not None - тут уже сразу все ясно становится.

Епттваю мать. Тут до каждой строчки можно доебаться. 13ти летнее дите хвастается как может переусложнить 2 + 2 на питоне.
Аноним 15/11/22 Втр 00:12:07 2514072 204
Здарова, мужики. Есть гайд какой-нибудь, как вкатиться в 2022 году в России?
Аноним 15/11/22 Втр 00:15:09 2514076 205
Аноним 15/11/22 Втр 01:31:13 2514115 206
Аноним 15/11/22 Втр 09:45:42 2514185 207
Аноним 15/11/22 Втр 11:36:05 2514218 208
>>2514072
Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь.
Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки.
Потом зубришь, именно, сука, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало.
Когда напишешь свою первую имиджборду, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую Tornado или Gevent.
Как переделаешь имиджборду, чтобы выдавала по крайней мере 5 тысяч запросов в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, MapReduce.
Отсос хиккующих выблядков / просто неудачников типа рейфага или сисярп/джава-хуесосов, которые сосут хуй по жизни не заставит себя ждать и уже через пол года ты будешь получать такие суммы, что любая баба будет течь при одном упоминании твоей зарплаты.
Аноним 15/11/22 Втр 14:28:28 2514347 209
1576968677maxre[...].jpg 171Кб, 1280x720
1280x720
Есть библиотека для подключения к s3, не AWS, а любой s3? Нагуглил boto3, но я хз как там адрес сервера менять

Пикрандом
Аноним 15/11/22 Втр 14:32:38 2514352 210
>>2514347
> но я хз как там адрес сервера менять
нагугли
Аноним 15/11/22 Втр 22:56:24 2514660 211
df.groupby(["Unnamed: 1", "Unnamed: 17", "Unnamed: 4"]).sum().reset_index()

Почему не целые числа сгруппировались плохо? Не суммировались, а просто в одно строчку все значения.
9,041,060,841,6213,659,814,86
Как суммировать их?
Аноним 15/11/22 Втр 23:22:11 2514685 212
>>2514660 df['Unnamed:1'].sum() + df['Unnamed: 2'].sum() ..
Аноним 16/11/22 Срд 00:00:48 2514705 213
Почему нету способоа нормально прибить тред, не дожидаясь его завершения? Что-нибудь вроде thread.kill()
Аноним 16/11/22 Срд 00:30:12 2514714 214
>>2514705
Не создали. Учитывая, что проблема обсуждается часто, то, вероятно, что это из-за философии python. (Поправьте, если не так).
Для того, чтобы остановить поток, необходимо подать сигнал завершения. В редких ситуациях можно использовать булёвый флаг name_thread.daemon = True, чтобы поток стал демоном и он завершился с завершением основного процесса - это плохо, если выполняется работа с БД, файлом и т.д, а ресурсы, как сказано в руководстве, "may not released properly"; поэтому так делать не надо, если попадает под эти случаи.
Аноним 16/11/22 Срд 02:30:10 2514735 215
Блин, зарегался на госуслугах на курс по python, дали тест, там задачи для выпускников 8-11 классов, пиздец, я просто нихуя не помню, плюс минус понимаю как с помощью каких то функций или формул это все считается на изи, но я просто нихуища не помню, ни логарифмов ни вообще самых обыкновенных функций даже, просто "решил" задачи методом логического мышления (ну и методом тыка немножк). Мне судя по всему школьный курс информатики и математики не помешает пройти пока жду курс, лол блять. ВКАТИЛСЯ ЕПТЫ
Аноним 16/11/22 Срд 05:30:22 2514749 216
>>2514705
Кильни по pid.
Если это не то что ты хочешь - тогда хули тебе надо?
Аноним 16/11/22 Срд 05:45:43 2514752 217
>>2514037
Ну иначе пришлось бы Thread().start() два раза писать.
По заветам DRY так делать нельзя

А то что ошибки из треда никак не обрабатываются это неважно
Аноним 16/11/22 Срд 10:19:05 2514866 218
>>2514218
>любая баба будет течь
Ебать ты быдло.
Аноним 16/11/22 Срд 13:37:45 2515034 219
Аноним 16/11/22 Срд 15:15:33 2515103 220
>>2514045
А как же го вместо пхп?
Аноним 16/11/22 Срд 17:36:48 2515237 221
>>2514752
А как надо обрабатывать ошибки тредов? Только не как в DRY с этого примера, а нормально.
Аноним 16/11/22 Срд 20:29:13 2515394 222
>>2514866
мне хотя бы вкатываться никуда не надо.
Аноним 16/11/22 Срд 20:30:52 2515399 223
>>2514752
она могла это вынести в отдельную структуру и собрать отдельно от лупа, который разползся на 2 строчки.
Аноним 16/11/22 Срд 23:47:45 2515569 224
image.png 31Кб, 641x565
641x565
15637602561530.png 253Кб, 655x1000
655x1000
как аннотировать функцию, чтобы она принимала динамический кортеж типов и возвращала итератор с аналогичной сигнатурой? так, чтобы пичарм знал типы распаковываемых переменных

вот мои нелепые неработающие потуги:
https://pastebin.com/JH3kyDPk
Аноним 16/11/22 Срд 23:50:04 2515570 225
>>2515569
классы могут быть любыми
Аноним 17/11/22 Чтв 00:16:25 2515583 226
парни, объясните че будет если написать
print(type(type(int)))
в вариантах ответа "class "type" нету
хули от меня хотят то, я гуглил но такого примера не нашел, я понимаю что когда ты пишешь там type(10) тебе выдаст что это int, но тут то хуле
мимовкатун
Аноним 17/11/22 Чтв 00:30:49 2515586 227
>>2515583
Так напиши и сам увидишь.
Аноним 17/11/22 Чтв 00:41:19 2515591 228
>>2515586
я написал, выдает <class 'type'>
но в вариантах ответа этого нет, максимально близкое по смыслу это type'type', это одно и тоже получается чтоли? Я уже специально не правильно ответил, просто хочется на будущее знать.
Аноним 17/11/22 Чтв 01:09:20 2515596 229
>>2515583
class obj есть в ответах? вполне подходящий вариант.
Аноним 17/11/22 Чтв 01:12:44 2515597 230
>>2515591
> type'type'
Это второй бидон.
Аноним 17/11/22 Чтв 02:22:41 2515615 231
Аноним 17/11/22 Чтв 02:31:10 2515619 232
>>2515615
Я же говорю - такое выдаст вторая версия, а ты учишь третью, очевидно.
Аноним 17/11/22 Чтв 02:36:38 2515622 233
Аноним 17/11/22 Чтв 03:28:14 2515630 234
>>2515619
охуеть, найс курс походу будет, третьему питону сколько? 14 лет? До сих пор старые методички отправляют лол.
Аноним 17/11/22 Чтв 06:09:02 2515663 235
>>2515630
Ну скобки у принта есть, видимо апдейтили со второго и прошляпили эту конкретную хуйню.
Аноним 17/11/22 Чтв 06:13:33 2515665 236
Аноним 17/11/22 Чтв 10:47:37 2515741 237
>>2515570
>>она принимала динамический кортеж типов и возвращала итератор с аналогичной сигнатурой
>>так, чтобы пичарм знал типы распаковываемых переменных
чиво блять? пайчарм то откуда может знать что у тебя может быть там внутри, если ты это нигде не описал. Сделай дженерики епта.
Аноним 17/11/22 Чтв 12:32:36 2515830 238
1523746131299.png 30Кб, 746x393
746x393
Нагуглил пасту из Stack Overflow и переписал для себя. Как вам?

Реквестирую советы по улучшению кода.

https://www.onlinegdb.com/1o0ZpYsdLt
Аноним 17/11/22 Чтв 13:11:24 2515869 239
Аноним 17/11/22 Чтв 13:20:23 2515879 240
>>2515869
А что тебя смущает?
Аноним 17/11/22 Чтв 13:23:52 2515885 241
>>2515879
Неявное поведение, хоть и прописано в доке. Мне это психику сломало
Аноним 17/11/22 Чтв 13:26:20 2515891 242
>>2515885
Какое поведение неявно?
Аноним 17/11/22 Чтв 13:30:48 2515900 243
>>2515891
Не изменяется объект по ссылке, хоть бы ошибку рейзили, что я долбаеб
Аноним 17/11/22 Чтв 14:42:18 2515970 244
Почему везде пишут что змiй такой язык медленный, для "лохов" и вкатунов с 5 классами средней церковной школы? При этом это один из наиболее развивающихся языков, новые версии выкатывают быстро, появился нормальный многопоток/процессинг, скорость работы повышается через либы всякие на сях.
Все это похоже на утку которую когда то пустили и теперь все ее разносят.
Он же явный пример easy to learn, hard to master.
Чи не?
Аноним 17/11/22 Чтв 14:46:56 2515976 245
>>2515900
А он и не должен меняться, i внутри for и i, которому ты присваиваешь внутри итерации, это разные имена, у второго своя область видимости, и на следующей итерации он перезаписывается i из for.
Аноним 17/11/22 Чтв 14:47:17 2515978 246
>>2515970
> змiй такой язык медленный,
Потому что медленный

>для "лохов"
Нигде не пишут

>При этом это один из наиболее развивающихся языков, новые версии выкатывают быстро,
Какая разница?

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

>скорость работы повышается через либы всякие на сях.
Если бы был быстрый, то либы были бы на питоне, логично?

>Он же явный пример easy to learn, hard to master.
Hard to master-то где? Или ты про необходимость переписывания логики на си, если нужна скорость?
Аноним 17/11/22 Чтв 15:13:02 2516002 247
1562230835623.png 89Кб, 900x628
900x628
Аноним 17/11/22 Чтв 15:21:27 2516005 248
>>2516002
>tr = ...
str.maketrans(*symbols) уже есть. Не обязательно руками собирать.
Аноним 17/11/22 Чтв 15:32:05 2516019 249
1662205970571.png 90Кб, 955x638
955x638
Аноним 17/11/22 Чтв 15:44:21 2516032 250
1612384336806.png 87Кб, 1885x436
1885x436
1554472594778.png 90Кб, 955x638
955x638
>>2516019
Чета он последний абзац не выводит, нужно вхолостую enter нажимать, чтобы вывел, с чем это связано, непонятно
Аноним 17/11/22 Чтв 16:16:42 2516060 251
1515466960263.png 111Кб, 1417x680
1417x680
Аноним 17/11/22 Чтв 16:19:18 2516064 252
1616907807873.png 111Кб, 1444x651
1444x651
>>2516060
Не та картинка, вот
Аноним 17/11/22 Чтв 16:21:31 2516068 253
>>2516060
>по реквестам
каким реквестам наху, ты тут один срёшь
Аноним 17/11/22 Чтв 16:23:31 2516070 254
>>2516068
МЕРТВЫЙ ТРЕД
@
МЕРТВОГО ЯЗЫКА
Пусть срёт. Он хоть погромирует, а не тянучку ищет или курсы для сорокалетних покупает.
Аноним 17/11/22 Чтв 16:24:16 2516071 255
Аноним 17/11/22 Чтв 18:23:17 2516149 256
Как перестать скачивать курсы и начать кодить? Я уже компульсивно штук 10 посмотрел. У кого-то еще из вкатунов была такая проблем?
Аноним 17/11/22 Чтв 18:42:03 2516175 257
>>2510210
Что спрашивали на собесе? Что конкрктно изучал, курсы, книги?
Аноним 17/11/22 Чтв 19:05:29 2516194 258
>>2516149
Если ты еще не вкатился то почти никак, если у тебя нет никаких вещей, которые ты хотел бы автомотизировать
Аноним 17/11/22 Чтв 19:22:53 2516211 259
>>2516194
Ну и нах я тогда учу этот питон? На работу я без опыта никак не попаду.
Аноним 17/11/22 Чтв 19:36:15 2516218 260
>>2516211
Потому что его распиарили как язык для вкатышей для заработка на "обучении" дебилов, пускающих слюни на 300к/сек.
Аноним 17/11/22 Чтв 19:41:55 2516221 261
>>2516218
Точно. Лучше бы это время на джаваскрипт потратил.
Аноним 17/11/22 Чтв 20:24:45 2516244 262
Я вам секрет открою, очень часто всем похуй на скорость языка.
Аноним 17/11/22 Чтв 20:26:46 2516248 263
>>2515741
я думаю TypeVarTuple это то что я ищу. надо бы пистон обновить
Аноним 17/11/22 Чтв 21:08:25 2516279 264
>>2516211
Всмыле не попадешь? А ты думал, что все мидлосеньки сразу на такие должности попали?
Аноним 17/11/22 Чтв 21:28:17 2516290 265
>>2516279
>Всмыле не попадешь? А ты думал, что все мидлосеньки сразу на такие должности попали?
Щас на любую открытую вакансию с нулем опыта откликается по 300 человек, и требования к джуну стали как к мидлу 5 лет назад.
Аноним 17/11/22 Чтв 21:56:36 2516305 266
15486504826203.jpg 220Кб, 1280x1831
1280x1831
как кратко и ёмко назвать метод bar?

> foo.bar(Spam, Eggs, Qux)

1) берет один или больше типов компонентов с объекта foo
2) все указанные компоненты обязаны присутствовать на объекте


неудачные варианты:
> foo.get_components(Spam, Eggs, Qux)
> foo.get(Spam, Eggs, Qux)
> foo.get(Spam, Eggs, Qux)
пункт 2 не используется. кажется, будто сообщаешь функции возможные варианты - "поищи такое, такое и такое, чо найдешь возвращай"

боле-лимение:
> foo.find_set(Spam, Eggs, Qux)
но слово set в питоне занято другим, а функция возвращает тупли в порядке указанных аргументов
Аноним 17/11/22 Чтв 22:47:33 2516328 267
>>2516290
Я вкатился 5 лет назад, недавно специально смотрел собесы джунов, не особо там все и поменялось. При том, что опыт работы над крупными проектами будучи джуном ты не получишь даже если сотни книг перечитаешь.
Аноним 18/11/22 Птн 00:09:21 2516363 268
>>2516305
Ад самага пачатку йдзеш памылковым шляхам. Не пішы ў назве функцыі як яна працуе. Пішы якую справу яна робіць у кантэксце дамэна: гатовіць яешню, ці правярае пошту.
Аноним 18/11/22 Птн 00:27:46 2516380 269
Pvuzr4pDiI-1.jpg 95Кб, 828x656
828x656
>>2516328
5 лет назад не было такого дикого хайпа и конкуренции за право быть червем-джуном
Аноним 18/11/22 Птн 04:35:03 2516416 270
>>2516305
короче, я остановился на слове match
если у кого есть получше варианты - пишите
Аноним 18/11/22 Птн 10:47:24 2516493 271
>>2516290
ой какой мидлу. чо фантазируешь. в вакухах просто примерный скилсет пишут. могут взять и с заметно меньшими если мозги на месте.
Аноним 18/11/22 Птн 11:04:27 2516498 272
>>2516290
Я в 2019 году свичнулся из аналитика данных в питухон разраба, при этом питон знал на уровне пердолинга датафреймов в пандасе + реквесты + бс4 + склалхимия + паймонго. Всё писал в функциональном стиле, линтерами не пользовался, гитом не пользовался, тесты не писал, с докерами не пердолился. Теперь представь, какой я говнокод писал (да и продолжаю писать). При этом взяли на ставку мидла, и взяли просто потому что на собесах всех больше понравился + был норм опыт работы с БД, неплохо шарю в скле. До сих пор работаю, поменял за это время уже 2 места, на текущем месте уже старший разработчик (сеньерская ставка), зп апнулась по сравнению с аналитиком данных в 3 раза.
Аноним 18/11/22 Птн 12:14:51 2516549 273
>>2516498
У тебя был релевантный опыт, это другое
Аноним 18/11/22 Птн 12:25:56 2516559 274
>>2516549
У меня был просто опыт в ИТ, в плане именно питон разраба у меня был опыт как у червя-пидора. Мне пришлось с нуля изучать штангу, веб, докеры, редисы и паттерны, которые по хорошему я должен был уже знать, когда меня брали на эту позицию.
Аноним 18/11/22 Птн 13:25:27 2516591 275
image.png 427Кб, 1200x675
1200x675
Короче, придумал психологическую защиту. Просто представлю, что я изучаю питон для собственного удовольствия, а работа мне не особо и нужна. Можно еще систему файликов на компе автоматизировать, да.
Аноним 18/11/22 Птн 13:52:12 2516605 276
image.png 198Кб, 1784x1223
1784x1223
Guyz, кто шарит в celery, почему мой лог вот отсюда не сохраняется в файл который я указал?
Вернее все еще хуже - сохраняется но не целиком. Все это запускаю в docker-compose, логи в консоли (StreamHandler) прекрасно вижу, каждые 10 секунд туда высирается сообщение "Hello world!", но почему блэт я не вижу этих логов в файле celery.log, которые указал при конфигурировании логов? Там всего 1 единственная запись - "Celery is ready!", где остальные бля?
Аноним 18/11/22 Птн 14:00:38 2516610 277
>>2516605
Предвижу кукарек не тему уровня логирования. Скажу так: я пробовал ставить какой угодно, всем похую. Я и там и там поставил уровень warning - в файл пишется только первая запись. Пробовал кидать эксепшн в dummy-таске, в файл traceback не пролезает в файл, логгер почему-то просто отвалился, какого хера?
Аноним 18/11/22 Птн 14:37:14 2516632 278
>>2516175

https://stepik.org/course/154/syllabus
https://stepik.org/course/96018/syllabus
https://stepik.org/course/217/syllabus
https://stepik.org/course/1547/syllabus

еще отсюда много
https://www.youtube.com/user/zaemiel
https://www.youtube.com/c/SeniorPomidorDeveloper
https://www.youtube.com/c/%D0%94%D0%B8%D0%B4%D0%B6%D0%B8%D1%82%D0%B0%D0%BB%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B9
https://www.youtube.com/c/ArjanCodes
https://www.youtube.com/@anthonywritescode

Плюс часто просто шел и гуглил если что-то было непонятно.

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

На собесе спрашивали про многопоточность/многопроцессорность/асинхронность много, про алгоритмы немного, вроде какая сложность добавить элемент в лист, сортировку пузырьком на бумажке написать не просили, про тестирование. Про паттерны спрашивали, но на них я уже запинаться стал, про веб мало спрашивали. Показал проекты свои (учебные), вроде все на этом.
Аноним 18/11/22 Птн 16:51:42 2516762 279
>>2516605
Нормальный пацан устанавливает логирование через сигнал celery.signals.setup_logging.connect
Аноним 18/11/22 Птн 17:01:11 2516772 280
>>2516632
>>ArjanCodes
Балдежный поц. сам его смотрю
Аноним 18/11/22 Птн 21:28:03 2517037 281
Есть на Ютубе годные курсы по Питону от 0 до полноценного джуна?
Аноним 18/11/22 Птн 22:22:25 2517077 282
>>2517037
Чекай канал freecodecamp, полноценным джуном конечно не станешь, но там все подробно разжевывают.
Аноним 18/11/22 Птн 23:46:09 2517115 283
70GdGRFVfJK-g.jpg 33Кб, 337x350
337x350
Я в любом случае буду гуглить и делать сам, но может подскажите либы и куда копать.

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

Как понимаю, нужна библиотека по работе с виндовым треем и виндовыми уведомлениями.
И всё это должно висеть в автозагрузке компа фоном 24/7 и не жрать много ресурсов.
Аноним 19/11/22 Суб 00:33:45 2517145 284
Аноним 19/11/22 Суб 03:14:51 2517227 285
Хочу освоить питон и стать прости Господи программистом на уровне полуднаря правда, ибо тех вышки нема.
Все пиздят, что питончик самый простой язык , но я чот сомневаюсь, какие подводные при изучении,? Реально ли попасть на работу в ДС после полугода изучения?
С кем придется конкурировать?Если он самый простой, не значит ли, что кроме технарей туда идут и обычные Васяны? Насколько котируется в айти тех вышка?

Мои перки: B2-C1 инглиш, 3 месяца работы ручным макакой(не зашло, бросил), полгода работы it сапортом в неплохой айти компании.
Кароче мне тут наверное нужен тот, кто вкатился по сути с нуля в ДС без тех вышки. Есть такие ребята?
Аноним 19/11/22 Суб 03:47:56 2517231 286
>>2517115
Купи esp32 с камерой за пару баксов и снимай показания автоматически, вот это заебись задачка.
Аноним 19/11/22 Суб 06:45:29 2517253 287
>>2517227
Если ты говоришь про дата сайенс, то полгода - мало, если ты не супер гений, но я в этом сомневаюсь.. Сайты парсить, наверное, можно научиться за полгода, но тоже требует усилий.
Аноним 19/11/22 Суб 20:45:56 2517725 288
>>2516305
>>2516416
ПолучитьОстаткиНаСкладах()
Слово match начиная с 3.10 тоже другое означает
Аноним 19/11/22 Суб 20:55:44 2517732 289
>>2515237
Ну например вместо thread.start взять concurrent.futures,
с каждого треда возращать future и потом палить в .result()

По дефолту питоновские треды молча дохнут и никому ничего не говорят
Аноним 20/11/22 Вск 03:23:11 2517967 290
image.png 23Кб, 570x291
570x291
image.png 27Кб, 743x299
743x299
Писал регулярки для приватных IP.

И для класса B (172...) регулярка отказывается работать пока не заэкранирую бэкслэшем "16-31" -> "16\-31".
Жалуется на какой-то range.
Хотя на сайтах верификации регулярок все отрабатывает нормально.
Чё это за хуйня?
Аноним 20/11/22 Вск 03:36:41 2517975 291
>>2517725
Они сделали костыль в виде soft keywords для совместимости, лул. Это типа кейворд, но его можно использовать в виде имени, чтобы не ломались старые скрипты с такими именами. Но зная что он уже есть, лучше не использовать, да.
>>2517967
Ты неправильно понимаешь классы символов.
[0-255] это не от 0 до 255, а от 0 до 2 и 5.
[16-31] это не от 16 до 31, а 1 и от 6 до 3. Так наоборот нельзя, вот он и ругается. Другие движки может и не ругаются, просто делают не то, что ты думаешь.
Аноним 20/11/22 Вск 03:50:50 2517978 292
>>2517975
Понял, в общем регулярки не умеют вычленять числа из строки, нужно оперировать цифрами и разбивать необходимое число на совокупность цифр.
Аноним 20/11/22 Вск 03:53:02 2517979 293
image.png 31Кб, 875x591
875x591
Аноним 20/11/22 Вск 04:01:14 2517982 294
>>2517979
Это ты ещё корректную валидацию имейлов не видел размером в страницу.
Аноним 20/11/22 Вск 04:06:34 2517983 295
>>2517982
Но вообще это переусложнено, эта первая галка должна чуток сократить. А вообще, гугли сразу готовые варианты для айпи, это дохуя частая задача, так что готовых оптимальных вариантов должно быть навалом.
Аноним 20/11/22 Вск 06:36:29 2518012 296
>>2517983
>это переусложнено

двачую. разбил стринг по точкам, сконверил в инты, проверил диапазон. еррор чекинг по желанию
Аноним 20/11/22 Вск 09:17:14 2518045 297
Аноним 20/11/22 Вск 20:53:15 2518848 298
Аноним 21/11/22 Пнд 16:49:13 2519496 299
Яндексоиды ("Слава Попыту!") задали задачку.

Во времена, когда люди верили в великую силу чисел, оказалось, что волшебник Пифуман предал все народы и стал помогать Зерону.

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

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

Формат ввода
Одно трёхзначное число.

Формат вывода
Два защитных числа для каждого отряда, записанные через пробел.

Пример 1

Ввод
103

Вывод
10 31

Пример 2

Ввод
787

Вывод
77 87

Мой код:

https://www.online-python.com/0CQPJBtb8A

Вопрос. ЧЯДНТ?

Все проверки проходит кроме одной, а что в ней - хз.
Аноним 21/11/22 Пнд 18:23:06 2519623 300
>>2519496
number = int(input("The number is: "))
min_num = min(number / 100, 101)
max_num= max(number / 100, 101)
print(f"The minimal number is {min_num} and the maximal number is {max_num}")
Аноним 21/11/22 Пнд 19:50:47 2519724 301
>>2519496
Когда ты конвертируешь все возможные двузначные строки в инт, у тебя минимум находит некорректное однозначное число, например для '100' минимум по твоему коду будет int('01') = 1
Аноним 21/11/22 Пнд 21:46:00 2519841 302
Планирую покупать курс, потому что, во-первых, я - даун, а во-вторых я знаю себя и банально не смогу проебывать обучение, зная, что я за него заплатил. Какие из существующих больше всего котируются?
Аноним 21/11/22 Пнд 21:59:11 2519853 303
>>2519841
Бери любой который на английском. Чем свежее - тем лучше.
Аноним 22/11/22 Втр 03:03:19 2519996 304
>>2519841
который подороже бери, больше знаний получишь
Аноним 22/11/22 Втр 03:11:03 2519997 305
>>2519724
Так нет же. Я специально делают проверку чтобы "01" не получался.

if num_operated[0] != "0":

И так далее

>>2519623
Это вообще не про то код
Аноним 22/11/22 Втр 03:11:45 2519998 306
>>2519841
Взял бы на Степике от Биигик. Там первые два курса бесплатные, их тебе для самого начала хватит
Аноним 22/11/22 Втр 11:13:15 2520147 307
как накодить предсказатель результатов матчей на чемпионате мира?
Аноним 22/11/22 Втр 11:52:17 2520173 308
Аноним 22/11/22 Втр 12:13:20 2520195 309
>>2520147

Ты, очевидно, в новостях прочитал об этом. Но прочитал невнимательно.

"накодить" легко.
нужно чтобы предсказатель еще и угадывал с приемлемой точностью. Вот с этим очень большие проблемы. Там в новостях даже не указана точность.
Аноним 22/11/22 Втр 12:15:22 2520197 310
>>2520195
Например, есть фильм с Бредом Питом - Человек, который изменил всё (2011)
Там забавно. Посмотри.

Суть в том, что в американском бейсболе действительно была культура чисел. Они годами в докомпьютерную эпоху выпускали справочники и тд.

С европейским футболом все не так предсказуемо. За это болельщики и любят спорт.
Аноним 22/11/22 Втр 12:45:15 2520207 311
>>2520195
>>2520173
я спРАишвал именно чтобы УБЕР точный был.
рандом параша не нужна
Чтобы все матчи с точностб 100% бустанул
И я не в новостях прочитал, а узнал что фонбет за такое сто лямов дает
Аноним 22/11/22 Втр 13:35:17 2520245 312
>>2520207
Собирай машину времени лучше.
Аноним 22/11/22 Втр 14:43:47 2520315 313
>>2520207
У тебя наивное понимание науки и мира.
Удивительно, что оно нередко не только среди двачеров.

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

Фонбету, конечно, на это все насрать. Для него главное реклама
Аноним 22/11/22 Втр 15:30:55 2520371 314
>>2520315
вообще я наукоёмкий человек
>>2520245
как думаешь когда примерно такую тачку сделают и что это изменит в мире? не наступит ли сразу полный коллапс?
Аноним 22/11/22 Втр 15:37:05 2520381 315
Аноним 22/11/22 Втр 15:56:27 2520405 316
Аноним 22/11/22 Втр 16:17:34 2520428 317
это школьник был.mp4 638Кб, 480x360, 00:00:11
480x360
Аноним 22/11/22 Втр 16:24:33 2520431 318
>>2520371
Аргентина только что проиграла Саудовской Аравии.
Уверен (с уверенностью 99%) что почти все модели такое не предсказывали.

Вот таков реальный спорт.
Аноним 22/11/22 Втр 16:34:50 2520440 319
>>2520431
матч кстати был охуенно жёстким
а что если все этим матчи забигдатить? все мельчайшие параметры?

алсо кстати че кто ставил на саудитов выиграли миллионы?
Аноним 22/11/22 Втр 16:41:04 2520452 320
>>2520440
> а что если все этим матчи забигдатить? все мельчайшие параметры?
... то ничего не произойдет.
все привлекательные способы заработать на пустом месте давно уже обдуманы людьми.
Аноним 22/11/22 Втр 17:00:38 2520493 321
>>2520452
Кроме тех, которые ещё не обдуманы.
Напоминаю, техи для создания ядерки появились гораздо раньше, чем сама ядерка.
Аноним 22/11/22 Втр 17:04:24 2520499 322
>>2520493

слышь, ты там харош уже обдумывать, а то обдумоешь какой-нибудь очередной мировой пиздец
Аноним 22/11/22 Втр 17:09:30 2520512 323
>>2520499
Я и так уже дообдумывался до того, что работаю в микрофинансах и тащу мир в ад
Аноним 22/11/22 Втр 17:36:35 2520549 324
markdown-image.png 204Кб, 1743x1728
1743x1728
Пачаны, как такую фигуру описать в Питоне? Типа чтобы за пределами круга выполнялось одной событие (принт), внутри круга и вне красной зоны - второе событие, внутри красной зоны - третье событие.
Аноним 22/11/22 Втр 17:40:32 2520558 325
Аноним 22/11/22 Втр 17:41:48 2520559 326
>>2520558
Ебанешься так описывать. Тут какие-то кривые Безье... Мне кажется есть какой-то умный способ
Аноним 22/11/22 Втр 17:51:13 2520577 327
16691277959330.png 231Кб, 1743x1728
1743x1728
>>2520549
Догадаешься, где треугольник, прямоугольник, парабола и сектор круга?
Аноним 22/11/22 Втр 17:56:40 2520587 328
>>2520577
А параболу как описывать... Опять формулы что ле гуглить?
Аноним 22/11/22 Втр 18:06:14 2520606 329
>>2520587
Твоя это
f(x) = (x - 1)^n - 9, где n - чётное, вроде как
n мне лень считать, то кажется это 2
Аноним 22/11/22 Втр 20:52:33 2520856 330
>>2520559
в игропроме кривые рисует дезайнер.
А твоя хутика это какое-то тестовое задание на интегралы. Нахуй не нужное.
Аноним 23/11/22 Срд 01:28:13 2521099 331
>>2520587
С кем я на одной борде сижу, пиздец

>>2520606
>(x - 1)
(x + 1)
23/11/22 Срд 01:55:00 2521109 332
>>2519496
d = str(random.randint(100, 999))
_ = sorted(d, reverse=True)
print(d/+' >> ' + ''.join(_[:2]) + ' ' + ''.join(_[1:]))
Аноним 23/11/22 Срд 07:32:17 2521186 333
>>2520577

ебать ты глазастый. я уж пошел гуглить чем искать коллизии точки и фигуры из кривых безье либой bezier вроде
прям рилворлдкейсом пахнуло, йопта. всегда выборка значений внутри странного набора простых геометрических фигур оказывается
Аноним 23/11/22 Срд 10:02:23 2521245 334
>>2521099
>>2521109
>>2520606
>>2520577
>>2520558

На самом деле это задание из раздела "Условный оператор" из "Основы Питон" от Яндекса. Там по ходу задания так составлены что процентов 50 норм, еще 40 посложнее и 10 изъебистые.

https://academy.yandex.ru/handbook/python

Алсо Яндекс и яндексоидов рот ебал, чтобы они там все сдохли, путинисты обоссанные.
Аноним 23/11/22 Срд 12:49:13 2521323 335
Здравствуйте. Не знаю, как принять решение и сделать выбор между Python и Java. Помогите определиться, пожалуйста?
Аноним 23/11/22 Срд 12:54:12 2521325 336
>>2521323
Индекс вката посчитай по своей локе и от него пляши, самый верняк
Аноним 23/11/22 Срд 12:54:17 2521327 337
image.png 5Кб, 505x115
505x115
Аноним 23/11/22 Срд 13:26:19 2521354 338
>>2521325
В моей локе работы нет, буду релоцироваться.

>>2521327
Выглядит достаточно убедительно.
Аноним 23/11/22 Срд 13:28:08 2521355 339
>>2521354
По той. куда собираешься релоцироваться
ну чё как маленький
Аноним 23/11/22 Срд 13:41:54 2521365 340
>>2521355
Учитывая ситуацию, почти без разницы куда, лишь бы устроиться.
Аноним 23/11/22 Срд 16:29:08 2521495 341
Как аннотировать в аргументах функции список, в котором неопределенное количество словарей?
Аноним 23/11/22 Срд 16:58:15 2521504 342
Аноним 23/11/22 Срд 16:59:45 2521505 343
>>2521504
бля я так и делал, но я вот смотрю на аннотацию со стороны и вижу как будто список из ОДНОГО словаря, а не из многих
Аноним 23/11/22 Срд 17:22:32 2521519 344
>>2521505
list[dict] - лист диктов

> вижу как будто список из ОДНОГО словаря

это для туплей специально так сделали, чтобы типы данных на лету описывать
https://docs.python.org/3/library/typing.html#special-forms

tuple[dict] - тупль из одного дикта
tuple[dict, dict, dict] - тупль из трех диктов
tuple[dict, ...] - тупль диктов
Аноним 23/11/22 Срд 17:57:08 2521536 345
>>2509442 (OP)
Пацаны, тут случилась небольшая оказия. В celery мы из Джанги вытягивание содержимое нескольких таблиц и засовываем их в pandas-датафреймы, что-то типа:

stores = pd.Dataframe(Store.objects.all().values())
preset = pd.Dataframe(Preset.objects.all().values())
items = pd.Dataframe(Item.objects.all().values())

Было бы неплохо эти операции сделать параллельно, т.к. это простой SELECT, но в каждой такой таблице по миллиону строк а в ссаной Джанге все они делаются последовательно. Кто-то может сказать "но чел бля, у тебя ж celery - засунь все в разные celery-таски!", по началу идея вроде здравая но вы учли оверхед на сериализацию/десериализацию? Если celery-таска будет в результате выдавать список с миллионом словарей это пздец, поэтому все это надо сделать в рамках одного таска. Как обычно в Джанге такое решают? Тредов наплодить?
Аноним 23/11/22 Срд 18:01:38 2521540 346
Аноним 23/11/22 Срд 18:08:09 2521553 347
Моржовый оператор := норм тема или залупа для хипстеров?
Аноним 23/11/22 Срд 18:11:11 2521556 348
Аноним 23/11/22 Срд 18:18:43 2521562 349
>>2521553
Норм, но лет через пяток, когда нужная версия уже будет на любом холодильнике.
Аноним 23/11/22 Срд 19:09:18 2521618 350
>>2521556
Иногда в компрехеншнах нужно.
Аноним 23/11/22 Срд 20:02:32 2521669 351
>>2509442 (OP)
Нужны советы по следующему вопросу. Я пилю диссертацию параллельно с проектом. Суть проекта заключается в создании симуляции классической настольной игры Монополия для нахождения оптимальных выигрышных стратегий. Проект пишу на Python. Научрук сказал, что прикольно бы было сделать это с использованием машинного обучения. Если с созданием условий для игроков в виде ролла костей, карточек шанса, условий при попадании в тюрьму и прочего я не испытываю проблем, то в части с машинным обучением я полностью проседаю. Я не могу установить отправную точку. Мне нужно сделать хотя бы 4х игроков ИИ, которые будут играть в Монополию и набираться опыта, чтобы с каждой итерацией игры они играли лучше и лучше, но я хз как именно сделать модель. Забить им правило, чтобы они сперва покупали хоть какую-то улицу, а потом пытались собрать сет из них? Но не будет ли это тупо алгоритмом действий? Алсо, не ясно как быть с аукционами и моментом, если игроки захотят поторговаться друг с другом, чтобы получить недостающие улицы которые уже есть у других игроков. Даже начал читать Grokking Machine Learning чтобы как-то разобраться в этой теме.
Аноним 23/11/22 Срд 20:21:43 2521692 352
>>2521669
>Научрук сказал
Это такой же научрук как у нас тут лиды с 3 годами опыта?

Спизданул - пусть читает литературку и рассказывает как.
Аноним 23/11/22 Срд 20:26:08 2521696 353
>>2521669


https://www.bbc.com/russian/vert-fut-51673199

> Почему Монополия - на самом деле очень плохая игра

>"Все сводится к везению, - говорит Рейнольдс. - Цели в ходе игры не меняются, поле все время одно и то же. Никакой особой стратегии не существует. Добавьте еще то, что приходится долго ждать своего хода, и вы поймете, почему людям так скучно в нее играть

Ну и что тут можно оптимизировать?
Аноним 23/11/22 Срд 20:26:26 2521697 354
>>2521692
Ну собственно он меня и послал читать книжки по данному вопросу. Есть какая-то проблема в его решении? Я просто не шарю. У меня направление Big Data, и мы поверхностно проходили машинное обучение, так что его применение здесь мне показалось логичным.
Аноним 23/11/22 Срд 20:27:49 2521699 355
>>2521696
Выбор сета улиц как минимум.
Аноним 23/11/22 Срд 21:01:56 2521727 356
>>2521697
Ну читай
https://www.researchgate.net/publication/289403522_Learning_to_play_monopoly_A_Reinforcement_learning_approach

И литературку в конце.
И все что нагуглишь про RL


Грессер Лаура, Кенг Ван Лун
Г91 Глубокое обучение с подкреплением: теория и практика на языке Python. — СПб.:
Питер, 2022. — 416 с.: ил. — (Серия «Библиотека программиста»).
ISBN 978-5-4461-1699-7
Аноним 23/11/22 Срд 21:45:47 2521744 357
PyQt 5: QTableWidget отобразить значения списка Аноним 23/11/22 Срд 21:56:59 2521748 358
Почитал есть метод, который задает значения таблицы поэлементно setItem(). Допустим у меня есть двумерный список, есть способ быстро присвоить значения этого списка таблице не перебирая их в цикле поэлементно?
Аноним 23/11/22 Срд 23:01:36 2521766 359
>>2509442 (OP)
Джангисты, нужна помощь!
https://stackoverflow.com/questions/60042351/editing-posts-in-a-django-blog

У меня функция edit 1 в 1 как у молодого человека.
Оно как бы работает, подсасывает данные в нужную форму, сохраняет, вот только оно сохраняет мне новый пост, а не отредактированную версию старого.

Что я делаю не так?
Пока писал, осенило, что, возмоно, дело в том, что в поле форма нет нкиакого упоминания об id (хотя пост я нахожу по id), может быть где-то тут собака зарыта...
Аноним 23/11/22 Срд 23:33:44 2521774 360
Аноним 24/11/22 Чтв 11:05:55 2521944 361
>>2521766
сохраняешь форму, но не пишешь её в базу с помощью commit=False
затем присваиваешь старый id, чтобы не создавалась новая запись в бд
и затем .save()
и ещё в Джанго есть метод update()
Аноним 24/11/22 Чтв 13:38:15 2522144 362
image.png 325Кб, 1407x853
1407x853
>>2509442 (OP)
Это карта спецоперации? Хохлы захватили пол планеты?
Аноним 24/11/22 Чтв 16:01:21 2522239 363
>>2522144
В Европе только 4 страны пишут на JavaScript - это Ирландия, Грузия, Армения и Крым
Аноним 24/11/22 Чтв 17:30:05 2522294 364
Аноним 24/11/22 Чтв 18:27:51 2522354 365
Аноним 24/11/22 Чтв 23:15:31 2522560 366
>>2521944
Анончерс, спасибо тебе!
Аноним 25/11/22 Птн 01:10:52 2522594 367
>>2521536
>>но вы учли оверхед на сериализацию/десериализацию
Ну так посчитай что быстрее будет. Откуда мы знаем что у тебя там за объемы и сложность твоего говна.
Аноним 25/11/22 Птн 01:17:04 2522597 368
Аноним 25/11/22 Птн 12:39:52 2522866 369
Есть способ поставить тайпхинты в pandas DataFrame? Чтоб было ясно какие там колонки и с какими типами?
Аноним 25/11/22 Птн 12:47:02 2522869 370
>>2522866
Каким образом и куда, в названия колонок? Чем DataFrame.info() не устраивает?
Аноним 25/11/22 Птн 12:55:10 2522877 371
>>2522866
привет, ты что охуел?
разумеется, колонки в numpy имеют конкретные типы. dtypes по-ихнему.
Аноним 25/11/22 Птн 13:53:38 2522919 372
image.png 31Кб, 510x269
510x269
Смотрю описание таблиц в PyCharm Pro, вот одна из них. Не могу въехать, почему где-то (abc и id) колонка выделена синим а где- то нет? null / not null это другое - за это отвечает точка в левом нижнем углу, у всех колонок тут например стоит not null.
Foreign Key тут также ни при чем, он обозначается ключиком в правом нижнем углу, тут FK нет
Аноним 25/11/22 Птн 13:59:27 2522922 373
>>2522869
Тем что это не вариант для проверок того, что схемы валидны
Слыхал про статическую типизацию?
Аноним 25/11/22 Птн 14:02:41 2522925 374
>>2522919
Может потенциальные ключи или индексы?
Аноним 25/11/22 Птн 14:59:34 2522957 375
>>2522922
И как тебя тайп хинты спасут, еблуша? Они помешают в рантайме сконкатить 2 фрейма, где в первом тип колонки флоат64, а в втором - инт64? И расскажи поподробнее про статическую типизацию, mypy, cython, а то гуглить лень.
Выше уже писали про пайдантик. Либо создавай свой датакласс и пиши свой `__post_init__` с кастомной валидацией.
Аноним 25/11/22 Птн 15:02:45 2522960 376
Аноним 25/11/22 Птн 15:31:23 2522977 377
>>2522922
ох ебать.а ты слыхал что датасаентисты всю эту "программную инженерию" в рот ебут и прекрасно себя чувствуют?

Я не отрицаю что она может быть полезна, но ты пришел на чужое поле свое порядки наводить. С pandas ты не справишься никак.
Аноним 25/11/22 Птн 16:14:14 2523018 378
>>2522977
Это я их в рот выебу если они такое у меня будут мутить
Потому что я сейчас вынужден разбираться с их помоями, и мне не в кайф в них копаться. Часть я поправлю остальное будет уже на них, если они не будут соблюдать эти конвенции, будут выебаны в жопу ПМом и лидом

>>2522957
>в рантайме
Статическая типизация это не про рантайм. Typescript тоже в рантайме не делает нихуя
Аноним 25/11/22 Птн 16:26:02 2523029 379
>>2523018
>Typescript тоже в рантайме не делает нихуя
Так он компилится в жс. Что мне мешает всем поставить всем any и в конфиге компилятора уровень проверки минимальный поставить?
Аноним 25/11/22 Птн 17:58:06 2523128 380
Анончики хелп, решите задачу: Найти сумму чисел от 100 до 200, кратных 17. Кто решит будет ахуенен
Аноним 25/11/22 Птн 18:09:24 2523139 381
>>2523128
for i in range(100, 200+1):
# Store i as a string on a separate variable
var = str(i)
# Split i
var_parts = var.split()
# Go through the parts
for i in var_parts:
if i % 17 == 0:
sum = sum + i
Аноним 25/11/22 Птн 18:16:52 2523151 382
>>2523128
sum(n for n in range(100,201) if not n % 17)
Аноним 25/11/22 Птн 19:40:46 2523236 383
1669394520595.jpg 40Кб, 848x454
848x454
Аноним 25/11/22 Птн 21:18:26 2523292 384
>>2523018
>Потому что я сейчас вынужден разбираться с их помоями,
ты чьмо и кодерок взаимозаменяемый.
а датасаентист - учоный и светило.
какое твое дело?
Аноним 26/11/22 Суб 14:25:23 2523803 385
>>2523470
Ну жак устройся программистом, да заработай.
Аноним 26/11/22 Суб 23:09:12 2524316 386
Страшие братья, вот я сижу, решаю задачки для совсем чайников и задаюсь вопросом, а хули так сложно?
В работе тоже придётся изъебываться так же, как и в задаче с пайтонтьютор?
Аноним 27/11/22 Вск 00:11:23 2524350 387
>>2524316
Когда сложно, это значит, что задачи тебе по уровню.
На работе по-разному бывает.
хакатон Аноним 27/11/22 Вск 12:57:15 2524696 388
парни, есть тема в leader-id https://leader-id.ru/events/342770
сам на питоне писал только в школе но интересно изучить.
А тут как раз на хакатон наткнулся. был бы рад чтоб меня подтянули (раньше писал на laravel(php)) и хочется найти друзей/знакомых в этой нише
Аноним 27/11/22 Вск 17:48:54 2524983 389
16663836195700.jpg 611Кб, 864x1080
864x1080
Я так и не понял, зачем нужны классы, если можно создавать функции и внутри них методы. Можно хоть один пример задачи, которую можно выполнить с помощью классов и нельзя с помощью функций.
Аноним 27/11/22 Вск 17:54:44 2524987 390
>>2523128
def solution():
____return 867

давай следующую задачу
Аноним 27/11/22 Вск 18:08:57 2525000 391
>>2524983
Сделать ты можешь как угодно, но проще и удобнее будет через классы.
Если сейчас не можешь это переварить пока ньюфак, то поймешь потом со временем.
Аноним 27/11/22 Вск 18:26:33 2525010 392
>>2524983
Создай на функциях онли вариант игры shoot-em-up (где кораблик внизу, а сверху на него летят враги). И реализуй на функциях снаряды врагов, снаряды игрока, появление кораблей врагов и их исчезновение при попадании по ним игрока или при достижении нижней границы экрана этими кораблями.

Просто попробуй. А потом это же сделай на классах.
Аноним 27/11/22 Вск 18:30:19 2525015 393
>>2524983
>пример задачи, которую можно выполнить с помощью классов и нельзя с помощью функций
Рекомендую пыху, там на каждый класс стдлибы есть по 50 дублирующих его функций засирающих глобальный неймспейс, рекомендую, еще захочешь.
Аноним 27/11/22 Вск 18:31:06 2525017 394
>>2525015
А почему рот в пыхе?
Аноним 27/11/22 Вск 19:22:27 2525062 395
>>2525010
>А потом это же сделай на классах.
В следующей серии - поясните за преимущества классов, перенес функции в де факто статик методы, ниче не поменялось, только объявление классов добавилось.
Аноним 27/11/22 Вск 19:33:33 2525072 396
>>2524983
а ты и не поймешь пока не будет работать в коллективе.
Вопрос не в удобстве. И нет такой задачи, которую нельзя было бы выполнить без классов.

Классы - инструмент поддержания порядка в большом легаси-говне.
Как только будешь это держать в уме, сразу поймешь все ООП и классы.
Аноним 27/11/22 Вск 19:44:34 2525078 397
>>2524983
второй важный фактор - возможность менять программу под изменяющиеся требования кабанчика, который либо сам не знает чего хочет, либо действительно условия ведения бизнеса меняются со временем.
К этому относятся все варианты мантры DRY (Don't Repeat Yourself).

Почему программисты такие тупые и объясняют все мантрами - я не знаю
Аноним 27/11/22 Вск 20:45:01 2525145 398
Можно ли как-то сделать все переменные в функции глобальными?
Как-нибудь коротко, без "global" с перечеслением всех переменных.
Аноним 27/11/22 Вск 21:04:53 2525163 399
>>2525145
Ты куда-то не в ту сторону думаешь, для чего это?
Аноним 27/11/22 Вск 21:41:06 2525187 400
Аноним 27/11/22 Вск 22:35:13 2525220 401
aeHx84mvkwPyLTv[...].jpg 94Кб, 813x1080
813x1080
Устроился полгода назад QA Automat эникеем по блату.

Обязанности:
- Писать pytest под разные железки для проверки интерфейсов.
- Писать простенькие bash скрипты.
- Поддерживать инфраструктуру (коммит-хуки, репозитории, CI/CD и не пизди).
- Верстать доки по всякой хуйне.
- Диджитал подай-принеси.

Куда можно пытаться развиваться?
Девопс? Дальше в QA расти?

Не чувствую своей незаменимости, а значит зарплата расти не будет.
Прогресс идёт очень медленно потому что работа связана с железками.
Любая проблема с железкой тормозит мою работу.
Если что-то сломалось мне нужно ждать пока другие люди починят и заменят.
Если появилось что-то новое мне нужно ждать пока примут коммиты по поддержке новой ебанины.
Аноним 27/11/22 Вск 23:37:11 2525254 402
image.png 15Кб, 317x335
317x335
Можно ли как-то внутри одной функции определить несколько функций и чтоб потом их можно было вызывать извне функции, в которой я их задал? Типа такого
Аноним 27/11/22 Вск 23:42:04 2525258 403
>>2525254
Сделай ретерн ф3 из ф1.
Аноним 28/11/22 Пнд 04:26:05 2525330 404
>>2525254
Зачем создавать функцию внутри функции, но при этом вызывать её снаружи?.. Ты осознаёшь, что ты делаешь? Пространство имён не просто так придумали, с которым у тебя тотальное непонимание.
1. Один из не самых лучших вариантов - это создать функцию, который передавать какой-либо аргумент. На основе значения аргумента выполнять действия и возвращать результат через return, если это необходимо.
https://pastebin.com/utk7iGK7
2. Нормальный вариант - это создать класс, у которого шаблон Singleton, и вызывать методы.
https://pastebin.com/ec6uhcHs
Аноним 28/11/22 Пнд 10:00:37 2525412 405
>>2524316
На работе у тебя код будет в десятки и сотни тысяч строк... И не всегда с документацией. И не всегда будет в коллективе кто-то, кто смог бы объяснить что здесь, откуда, почему и куда (люди могут умирать или уходиться с работы).

И на работе ты будешь отвечать за деньги кабанчика.
Аноним 28/11/22 Пнд 12:31:41 2525496 406
image.png 4Кб, 241x140
241x140
Сап, есть конфиг на подобие этого, можно ли из него как-то вытащить значения и присвоить переменным?

Ну к примеру, мне нужна переменная 'TestValue = 1024'
Аноним 28/11/22 Пнд 13:12:21 2525520 407
Знатоки, какой курс бы вы прошли до 80к?

Только не говорите что все необходимо учить самому, курс для меня будет бесплатным, надо только выбрать
Аноним 28/11/22 Пнд 13:34:33 2525530 408
>>2525496
0, Дублируй код / данные на pastebin и аналогичные сайты. Нет желания печатать текст вручную, когда можно обойтись.
1. "Вытащить значения", которые будут сохранены в словаре:
https://pastebin.com/4ySvJ9wq
> присвоить переменным
Подскажи, пожалуйста, а как возможно создавать переменные автоматически и, что самое главное, обращаться к ним, если их название (вышеупомянутая TestValue) может быть произвольным, т.к... пользовательские данные могут быть различные; можно буквально генерировать псевдослучайные данные (см. информацию о random).
Я знаю, что можно динамически создавать объекты, если есть класс.
Аноним 28/11/22 Пнд 13:41:46 2525535 409
>>2525520
Бля, чего тебе не хватает, то и бери
Аноним 28/11/22 Пнд 13:52:57 2525543 410
>>2525535
Не, я просил посоветовать школу, а не то, что нужно изучать

Я начинающий
Аноним 28/11/22 Пнд 14:02:05 2525562 411
>>2525496
Нужен парсер такого файла. Это я хз какой формат. Бывают стандартные, типа json, toml, для них качаешь библиотеку (или встроенная) и скармливаешь файл конфига. Они тебе в ответ, обычно, выдают dict с конфигурацией из него.
Аноним 28/11/22 Пнд 14:13:03 2525569 412
>>2525543
Школу для чего? Иди на Степик, там курсы от Биигик. 2 бесплатных первых. На 3-6 месяцев тебе хватит с головой.

А 80 к можешь в окно выкинуть, если у тебя опыта пока нет.
Аноним 28/11/22 Пнд 14:17:52 2525576 413
>>2525496
это какой-то нестандартный файл.
Нет такого формата.

Максимально близко к nginx config.
То есть, это neat config: https://github.com/iafan/Config-Neat

Пиши сам, хуле как непрограммист.
swagger - боль Аноним 28/11/22 Пнд 16:22:39 2525720 414
Будучи джуном на работе дали задачку креативную, сделать для фронта доку в swagger, при попытке понять/осознать что там писать, словил кучу нервяков. Есть кто-нибудь кто занимался чем-то подобным и может проконсультировать?

tg: https://t.me/Nothing_unknown
Аноним 28/11/22 Пнд 16:41:28 2525751 415
from lxml import html
import requests

page = requests.get('https://translate.google.com/?hl=ru')
tree = html.fromstring(page.content)
prices = tree.xpath('//a[2]/div[2]/text()')
prices = str(prices).encode('utf-8', 'replace')
print(prices)


Котаны проблема с кодировкой, энкодами декодами дрочился, читаемого ничего так и не получил, строку с болдом можно удалить и посмотреть что получается на выходе, что-то примерно такое ['СоÑ\x85Ñ\x80аненнÑ\x8bе'], что сделать чтоб эта галиматья нормально отображалась?
Аноним 28/11/22 Пнд 18:13:12 2525832 416
>>2525412
>На работе у тебя код будет в десятки и сотни тысяч строк
Предположим, что джуна на такое сразу не кинут, но понимаю, о чём ты.
Умру за деньги кабанчика. Ну или уволят.
Аноним 28/11/22 Пнд 18:17:13 2525835 417
>>2525751
Готового решения, к сожалению, не подскажу, но напишу, что возможно поможет разобраться с проблемой.
Если получить тип у переменной prices, то будет list.
При получении информации о типе 0 элемента list будет lxml.etree._ ElementUnicodeResult. (Добавил пробел; надеюсь, что imageboard не уберёт подчёркивание).
https://stackoverflow.com/questions/53459703/type-lxml-etree-elementunicoderesult-cannot-be-serialized
Тебе необходимо читать документацию о lxml.
https://lxml.de/tutorial.html#parsing-from-strings-and-files
Аноним 28/11/22 Пнд 19:31:33 2525897 418
>>2525751
>tree = html.fromstring(page.content)
>>> type(page.content)
bytes

tree = html.fromstring(page.content.decode())
Аноним 28/11/22 Пнд 19:39:30 2525904 419
Аноним 28/11/22 Пнд 23:23:30 2526040 420
image.png 120Кб, 1317x666
1317x666
Мне нужно с определенным интервалом парсить несколько сайтов. Я тупо записываю предыдущее время парсинга в переменную и добавляю в глобальный словарь. Всё работает, но недавно вот узнал, что юзать global в принципе - плохая практика. Как тогда сделать правильно и по питоновски?
Аноним 28/11/22 Пнд 23:41:23 2526053 421
>>2526040
Друг, в аргументы передавай свою хуйню. И как ты функцию вызываешь, у тебя там разве не должны быть строки в аргументах?
Аноним 28/11/22 Пнд 23:45:53 2526060 422
>>2526053
>в аргументы передавай свою хуйню
Так а сохранять где, чтоб потом снова взять это значение? Ретерн что ли делать?

> разве не должны быть строки в аргументах
Да, там строки. Это я просто для примера сделал.
Аноним 28/11/22 Пнд 23:56:55 2526068 423
>>2526060
Возвращай и присваивай новое значение.
Аноним 29/11/22 Втр 00:05:05 2526074 424
image.png 139Кб, 1321x665
1321x665
>>2526068
Блин, ну это колхоз какой-то. Нагромождение хуйни. Это больше кода, чем у меня сейчас. И что делать если if не вызывается? Значит еще больше ифов добавлять. Хуйня какая-то, с записью в глобальную гораздо удобней.
Аноним 29/11/22 Втр 00:07:53 2526077 425
>>2526040
Ты городишь наколеночный celery/системные таймеры? Тебе для саморазвития или просто не знал?
Аноним 29/11/22 Втр 00:11:11 2526078 426
>>2526074
Ну вообще глобалы на свой страх и риск используй. А так, передаешь свой словарь в аргументы, внутри функции его меняешь и его же возвращаешь в самом конце, после всех ифов. И вместо трех вызовов функции сделай цикл нормальный внутри функции.
Аноним 29/11/22 Втр 08:42:03 2526177 427
>>2526040
Есть надежный способ как переделать глобалы на неглобалы.
Создаешь класс, все глобалы делаеш аттрибутами класса, все свободные функции соответственно превращаешь в методы. Потом создаешь один экземпляр класса и на нем все что нужно запускаешь.
Аноним 29/11/22 Втр 08:50:13 2526179 428
1669701122734.jpg 8Кб, 231x217
231x217
Аноним 29/11/22 Втр 09:20:55 2526193 429
a.png 13Кб, 352x368
352x368
Аноним 29/11/22 Втр 11:24:25 2526253 430
>>2526193
Почему нет скобочки?
Аноним 29/11/22 Втр 11:44:17 2526262 431
Аноним 29/11/22 Втр 12:22:09 2526300 432
Аноним 29/11/22 Втр 12:40:49 2526317 433
Аноним 29/11/22 Втр 12:43:35 2526321 434
image.png 175Кб, 1113x780
1113x780
image.png 50Кб, 1027x440
1027x440
Гайз выручайте , не пишу на питоне выдали лабораторку. Сколько не читал документацию библиотеки , форумов понять не могу.
Ошибка вылетает на 8 строке. Как я понял нужно c помощью скрипта вынуть инфу о блоке в блокчейне с помощью ключа. Так еще сам скрипт который выдали с ошибками
Аноним 29/11/22 Втр 12:48:05 2526327 435
>>2526321
>Ошибка вылетает на 8 строке.
Так и называется? "Ошибка"?
Аноним 29/11/22 Втр 12:51:12 2526329 436
>>2526327
AttributeError: 'str' object has no attribute 'decode'. Did you mean: 'encode'?
При попытке изменить на encode получается замкнутый круг.
Пробывал загрузить ключ в отдельную переменную тоже не работает.
Аноним 29/11/22 Втр 12:56:04 2526335 437
>>2526333
Да , причём прямо на лекции слёзно требовали установить 3 питон на виртуальной машине -_-
Аноним 29/11/22 Втр 12:58:32 2526336 438
>>2526317
Сначала нужно функцию вызывать, чтоб в области видимости стали видны её атрибуты (функции), дальше можно без скобок достучаться до её атрибутов (функций).

>>2526312
Не понел сраказма.
Аноним 29/11/22 Втр 14:09:21 2526394 439
>>2526336
>Сначала нужно функцию вызывать, чтоб в области видимости стали видны её атрибуты (функции), дальше можно без скобок достучаться до её атрибутов (функций).
Выглядит как дерьмовый дизайн, если честно.
Аноним 29/11/22 Втр 14:16:54 2526408 440
>>2526394
Да ваще язык для говноедов, дебилов и олигофренов, все в пхп.
Аноним 29/11/22 Втр 17:59:43 2526658 441
Сап аноны, как засунуть словарь в map?
Хочу следующие:



def zalupa(n,m):
.....

map(zalupa,xyu.items())
Аноним 29/11/22 Втр 18:02:14 2526661 442
>>2526329
Так header_hex это строка, сшитая из нескольких других строк. Она уже строка, ей не нужен decode()

decode() нужна, чтобы байтовую строку превратить в обычную

просто сотри decode()
Аноним 29/11/22 Втр 18:03:13 2526664 443
>>2526661
>просто сотри decode()
хотя вот это вот нет, они другое хотят
Аноним 29/11/22 Втр 18:30:17 2526686 444
Аноним 29/11/22 Втр 18:31:07 2526690 445
image.png 34Кб, 699x401
699x401
Аноним 29/11/22 Втр 19:46:26 2526756 446
>>2526686
Я шо за интернет плачу, чтоб доки читать?
спасибо Анончик, оно, шлю лучи добра
Аноним 29/11/22 Втр 21:37:34 2526820 447
Есть где код захостить, чтобы работал круглосуточно бесплатно с доступом в сеть?
10 секунд процессорного времени и 1 мб в день хватит.
Аноним 29/11/22 Втр 21:51:39 2526831 448
Аноним 29/11/22 Втр 22:12:25 2526852 449
>>2526831
А можешь конкретнее сказать что мне нужно? AWS Lambda?

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

Нужна функция реагирования по событию (чтобы с любого айпишника можно было его отправлять), и чтобы оно само раз в несколько часов по своим таймерам могло отправлять сообщение на айпишник. А это выглядит как то что оно в фоне никак не работает, а только откликается на запросы.
Аноним 29/11/22 Втр 22:51:47 2526862 450
>>2526852
https://aws.amazon.com/free/
На год бесплатный триал. Ну и подобные сервисы довольно дешевые. Чтобы откликаться на запросы машина должна работать 24/7. Не знаю сервисов, которые бы могли поднять машину по запросу, и чтобы она в остальное время спала.
Аноним 29/11/22 Втр 22:53:21 2526863 451
>>2526852
ЕС2 я имел в виду. Хотя Lambda звучит как что-то подходящее. Не разбирался, но тебе стоит посмотреть.
Аноним 29/11/22 Втр 23:39:12 2526880 452
Питоны, а зачем вообще нужны классы? Это же те же самые функции.
Аноним 29/11/22 Втр 23:41:43 2526881 453
>>2526880
Чтобы их ставить, очевидно 👍
Аноним 30/11/22 Срд 00:22:44 2526899 454
>>2526880
чтобы можно было где-то объединить несколько функций в одном месте!
Аноним 30/11/22 Срд 00:28:06 2526904 455
>>2526880
Посмотри на с++ код sfml, там множественное наследование и очень простая логика классов, смотришь и сразу понимаешь что лаконичнее не напишешь и классы тут уместны.
Аноним 30/11/22 Срд 01:02:03 2526917 456
>>2526899
Но ведь функции можно объединять внутри функций.

>>2526904
>Посмотри
Посмотрел. Всё равно непонятно зачем нужны классы.
Чем они принципиально от функций отличаются? Поясните нюфагу же, ну.

Вот надо мне запилить ОБЬЕКТ который считал бы количество залуп. В каком случае мне нужно делать функцию, а в каком класс. Что такого в классе чего нет в функции?
Аноним 30/11/22 Срд 01:23:41 2526926 457
>>2526917
>Но ведь функции можно объединять внутри функций.
но это не так модно, как внутри класса
можно еще пустой инит пихнуть, чтобы казаться умным
Аноним 30/11/22 Срд 01:31:08 2526928 458
>>2526917>>2526880
Ты про функциональные объекты с методом __call__ или про обычные классы?

Функции - когда у тебя какая-то операция над данными. Сортировка, там, нормализация векторов, что хочешь.

Классы когда тебе нужно хранить сложный объект с кучей параметров. Пример - дискорд-бот, ты создаёшь экземпляр бота, он логиниться, и он уже может принимать и отправлять сообщения, и при этом он должен в себе хранить соединение, айдишники и прочее, а при отсоединении всё это убрать? И его можно передать в параметр функции, которая используя переданного бота отправляет прогноз погоды на сервер условно говоря.
Ты точно хочешь подобную задачу решать без классов? Да хотя бы как ты бота будет передавать в функцию? Как словарь с полями?
Аноним 30/11/22 Срд 01:54:06 2526931 459
>>2526917
>Что такого в классе чего нет в функции?
Магические методы, наследования, инкапсуляция, полиморфизм
Аноним 30/11/22 Срд 02:32:34 2526933 460
>>2526928
>как ты бота будет передавать в функцию? Как словарь с полями?
Блин? ну с какими он данными там работает? такие данные и будут передаваться куда следует. Абсолютно точно так же как и с классом же, не?

Я правильно понимаю, что класс это такой обьект ООП, который в себе СОХРАНЯЕТ свое собственное окружение с данными, переменными вот этим всем и может с ним туда-сюда передаваться. И в этом его особая отличие от функций, которые из себя представляют просто алгоритм, а данные для них надо сохранять отдельно. например в глобальной среде, а это не удобно?
Аноним 30/11/22 Срд 05:56:16 2526953 461
>>2526917
>Но ведь функции можно объединять внутри функций.
у нас за такое на галере убивают нахер
Аноним 30/11/22 Срд 06:26:41 2526956 462
>>2526933
Функции и классы - это вообще разные категории объектов, я не понимаю что ты спрашиваешь уже.

Ты можешь практически любую программу написать вообще без классов (если не считать, что строки и списки - тоже классы), но это будет очень невыразительно.
Аноним 30/11/22 Срд 06:29:45 2526957 463
>>2526933
Предположим у тебя есть функция отправить - куда можно передать как изображение (по ulr или набор байтов из файла) так и простую строку.
Как ты предлагаешь хранить строки и изображения без классов, и какой у тебя будет код обработки всего этого?
Я знаю как это написать в таком виде без классов, но не знаю как написать чтобы код был понятный, его было просто редактировать и изменять и в нём было сложно ошибиться. Совсем не знаю.
Аноним 30/11/22 Срд 08:07:41 2526983 464
>>2526956
>Функции и классы - это вообще разные категории объектов,
>вообще разные
Ну если они ТАКИЕ РАЗНЫЕ то обьясни нюфагу в чем между ними разница, что может класс чего не может функция? Может они не такие уж и разные?

>>2526957
>Как ты предлагаешь хранить строки и изображения без классов

Ну если так поставлен вопрос, то почему бы не хранить это в каком-нибудь массиве в глобальном окружении. Где тут необходимость классов, не понимаю. Чому так сложно объяснить?
Аноним 30/11/22 Срд 08:32:50 2526998 465
image.png 180Кб, 928x604
928x604
Аноним 30/11/22 Срд 08:44:25 2527009 466
>>2526998
Классочелядь опять соснула у функциябогов. Ничего нового.
Аноним 30/11/22 Срд 09:14:36 2527033 467
>>2526998
Ну так я в отличие от Валерия не упиваюсь своим невежеством. Я понимаю что много не знаю и хочу разобраться.
Аноним 30/11/22 Срд 09:35:51 2527040 468
>>2526983
Скучно уже, ты просишь разницу между микроволновкой и радугой показать.
>Где тут необходимость классов, не понимаю.
Классы необходимы, так как они используются в 99% либ. Ты конечно можешь их не использовать и написать свои на функциях.

>Чому так сложно объяснить?
Код напиши того что я предложил, про отправку картинок и текста.
Аноним 30/11/22 Срд 09:59:50 2527053 469
У меня такой вопрос.

Везде в рекламе - питон может все.
Мой вопрос. Чего питоне НЕ может делать?
Аноним 30/11/22 Срд 10:03:52 2527054 470
>>2526983
>обьясни нюфагу в чем между ними разница, что может класс чего не может функция
Вопрос семантики, удобства разработки и поддержки. Почитай, что такое наследование, инкапсуляция, полиморфизм. Конечно в питоне можно всё то же самое делать и без классов - в конце концов кроме ООП есть множество других парадигм программирования. А вот в джаве без ООП уже никуда
Аноним 30/11/22 Срд 10:23:23 2527058 471
изображение.png 565Кб, 768x480
768x480
Аноним 30/11/22 Срд 10:31:44 2527061 472
>>2527054
>>2527040
>>2527058
Ладно, скажите хотя бы про локальную видимость данных.
Вот в функциях локальное пространство создается при вызове функции и удаляется сразу когда функция возвращает что-нибудь.
А в классах как? Локальное пространство класса со всеми переменными и данными сохраняется всегда? Это бы имело смысл и было бы тем отличием, которое я ищу.

Сам проверить сейчас не могу.
Аноним 30/11/22 Срд 11:36:34 2527099 473
>>2526983
>почему бы не хранить это в каком-нибудь массиве в глобальном окружении
Тут-то ты и попался, петушок global'овский. Потому что одна из основных идей в программировании это максимальная абстракция и разделение ответственности.

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

Никто тебе не мешает, почти как в C, хуйнуть свои данные в массив и делать с ними что хочешь. Сначала одной функцией тебе надо обработать первые n элементов, потом второй функцией m элементов, а потом третьей каждые n+m/3. Вот только проебёшься с указателем и одной функцией зацепишь данные, которые для неё не предназначены, или словишь сегфолт.

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

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

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

>>2527061
И у класса и у экземпляра класса (объекта) свои области видимости, и существуют они ровно до момента, пока ты на них не удалишь ссылку или живёт процесс.
>в функциях локальное пространство создается при вызове функции и удаляется сразу когда функция возвращает что-нибудь.
Необязательно, ты можешь возвращать функцию или сделать замыкание или декоратор и тем самым прокидывать данные.
Аноним 30/11/22 Срд 12:06:28 2527117 474
Я учу алгоритмы на питоне и очень много времени трачу пытаясь разобраться почему мой код не работает. Есть ли форумы в которых уместно задавать вопросы типа: вот посмотрите на мой говнокод, объясните почему он не работает?
Аноним 30/11/22 Срд 12:08:32 2527119 475
Я вот полный нуб и понял только, что функции это простые кирпичики программы (которые можно вынести в отдельный файлик-модуль, а потом подключать по желанию), а классы - это более сложные кирпичики программы (которые тоже можно вынести в отдельный файлик).

На хрена мудрить?

Алсо, помню что в html кокодемии нас учили в плане js, что весь код должен в идеале находится в функциях. Вообще весь.
Аноним 30/11/22 Срд 12:10:11 2527123 476
>>2527117
Ты находишься на одном из таких форумах. Ну, ещё есть чаты в телеге для бегиннеров.
Аноним 30/11/22 Срд 12:15:07 2527127 477
>>2527119
Так выше уже писали про функции, что это просто последовательность команд, которую можно оформить единым блоком, который потом можно вызывать многократно в разных частях программы, но чел начал ебать мозг про "зойчееем квассы када уже есть ункции, ря квассы нинужныы".
В жиэсе вообще нет нативных классов, там классы это синтаксический сахар над функциями, т.е. там действительно классы могут быть ненужоны.
Аноним 30/11/22 Срд 12:21:35 2527130 478
Пытаюсь написать минимакс для крестиков-ноликов. Бот во время игры просто выбирает первое попавшееся свободное поле слева направо. Не понимаю почему нормально не работает(. Вот код:

def minimax(board, isMaximazing):

#Когда доступных ходов больше нет, смотрим кто победил
if ' ' not in board.values():
score = 0
if isMaximazing:
if checkWhichMarkWon(computer):
score = 1
elif checkWhichMarkWon(player):
score = -1
else:
if checkWhichMarkWon(computer):
score = -1
elif checkWhichMarkWon(player):
score = 1
return score

#Лучший ход для компьютера
if isMaximazing:
score = -800
for i in board.keys():
if board == ' ':
board = computer
minimax_score = minimax(board, False)
if minimax_score > score:
score = minimax_score
move = i
#Лучший ход для человека
else:
score = 800
for i in board.keys():
if board == ' ':
board = player
minimax_score = minimax(board, True)
board = ' '
if minimax_score < score:
score = minimax_score
move = i
print(score)
return move

def computerMove():
#Скопировать текущую позицию для минимакса
new_board = board.copy()
move = minimax(new_board, True)
#Сделать ход
insertLetter(computer, move)
Аноним 30/11/22 Срд 12:51:26 2527155 479
Аноним 30/11/22 Срд 12:51:50 2527156 480
>>2527127
Всегда казалось, что Питон какой-то слишком простой и "волшебный" язык на фоне прочих, но js это какой-то совершенно особенный случай.
Аноним 30/11/22 Срд 13:03:52 2527165 481
>>2527156
Мне после питона жс показался ещё более простым языком. Его сложность в спецификациях, кучи апи и нагромождении инструментов вокруг языка (babel, webpack и т.п.)
Аноним 30/11/22 Срд 13:28:17 2527181 482
>>2523029
>Что мне мешает всем поставить всем any
1. Пиздюлины от тимлида
2. Конфиг no-explicit-any
Аноним 30/11/22 Срд 13:35:24 2527187 483
>>2527181
А с питоном так нельзя что ли?
Соблюдением pep8/name/type convension и настройкой конфига pylint/flake8/mypy занимается команда в нормальных местах, а не берётся само по себе или из репо тимлида-хуесоса.
Аноним 30/11/22 Срд 15:11:07 2527267 484
>>2527099
Так что конкртено может квас, что не может ункция? Ты можешь на мой ответ ответить или да?
Вот в квасе есть семь залуп, а в функции только две с половиной.
Есть такое и если есть то что это?!?!?!?!?!?!11111
Аноним 30/11/22 Срд 15:20:20 2527271 485
>>2527267
Тебе уже выше отвечали, магические методы и параметры, наследование, полиморфизм
Аноним 30/11/22 Срд 15:33:09 2527281 486
>>2527267
У тебя вопрос уровня как лучше какать в яму, на корточках или взять стул и в нём очко выпилить. Сри как тебе удобно, но с стулом вероятность провалиться в яму меньше и другие могут с него срать.
Аноним 30/11/22 Срд 15:39:41 2527287 487
Тут Joe Rogan для программистов. Ток шоу для радио и подкаста, где ведущий в ходе долгого разговора раскрывает собеседника.

Guido van Rossum on Python 4.0
https://youtu.be/qC5Po77bfKI
Аноним 30/11/22 Срд 16:09:47 2527310 488
>>2527267
>Так что конкретно может класс, что не может функция?
По сути - ничего. Классы для пидоров, давно установлено уже. Функции проще
Аноним 30/11/22 Срд 16:10:57 2527311 489
>>2527287
Чё там, опять что-то сломают?
Аноним 30/11/22 Срд 16:24:10 2527313 490
проиграл с оправданий классодебилов в треде! вы в каком веке живёте?
Аноним 30/11/22 Срд 16:27:44 2527316 491
>>2527313
Вы че на шаре живете? И с классами код пишите?
Аноним 30/11/22 Срд 16:28:58 2527318 492
>>2527316
Обколются своими вакцинами и аутируют друг друга в жопу.
Аноним 30/11/22 Срд 16:29:46 2527319 493
>>2527318
Потому что в церковь не ходят.
Аноним 30/11/22 Срд 16:39:47 2527323 494
Пацаны, а как pandas делает вот эту хуйню?

#get 'Spurs' value from team column
df.loc[df.team=='Spurs'].values[0]

Для ДСера это кажется логичным но для меня - нихуя. Давайте поглядим, что у нас внутри квадратных скобок?
df.team=='Spurs'
Это ж блять булево значение! Результат сравнения. Но по логике pandas это выражение говорит "найди строчки в датафрейме df где поле в колонке team равно 'Spurs'"
Аноним 30/11/22 Срд 16:45:53 2527328 495
>>2527323
Это называется предикат.
Аноним 30/11/22 Срд 16:52:30 2527329 496
>>2527328
И че? Значение df.team=='Spurs' было вычислено до того как положено в df.loc[]
Аноним 30/11/22 Срд 16:55:01 2527332 497
>>2527328
Или ты имеешь в виду как оно работает в рамках питона?
Тогда через реализацию метода __getitem__.
Аноним 30/11/22 Срд 16:58:48 2527336 498
>>2527323
Это не булево значение, а серия (кортеж) из индекса и булевых значений.
loc первым параметром принимает эту серию и возвращает отфильтрованный по индексу результат
Аноним 30/11/22 Срд 17:00:11 2527337 499
>>2527329
== у объекта df тоже переопределен через __eq__.
Аноним 30/11/22 Срд 17:03:23 2527338 500
>>2527336
Насчет кортежа напиздел, это нампаевский массив, но суть не поменялась.
Аноним 30/11/22 Срд 17:04:20 2527339 501
>>2527329
Все куда проще
Петухонщики перегрузили сравнение у объекта DataFrame. Оно возвращает не булево значение
Аноним 30/11/22 Срд 17:16:41 2527351 502
image.png 76Кб, 1032x656
1032x656
image.png 100Кб, 858x1077
858x1077
image.png 1Кб, 65x80
65x80
image.png 5Кб, 586x70
586x70
Когда я запускаю эту программу одновременно много раз, иногда выходит ошибка как на 4-ом пике. Как убедиться перед чтением файла, что другая программа в этот момент его не записывает?
Аноним 30/11/22 Срд 17:22:24 2527356 503
Аноним 30/11/22 Срд 20:16:23 2527454 504
Аноним 02/12/22 Птн 23:49:06 2529300 505
Здравствуйте, у меня проблема. Не могу изменить размер текста. Как это исправить(библиотека pillow)?
@dp.message_handler(content_types = types.ContentType.TEXT)
async def send_welcome(message: types.Message):
img = Image.open("C:/Users/MY MSI/Desktop/gaduka/nazi_nigger.jpg")
draw = ImageDraw.Draw(img)
draw.text((450, 450), str(message.text), (255, 255, 255))
img.save('nazi_nigger1.jpg')
photo = open('C:/Users/MY MSI/Desktop/gaduka/nazi_nigger1.jpg', 'rb')
await bot.send_photo(message.chat.id, photo)
Аноним 03/12/22 Суб 01:27:02 2529337 506
>>2527053
Может все, но хуево. Десктоп, мобилки, фронт (да и то это сложно назвать фронтом, учитывая итоговую компиляцию в жс, да и вообще это просто забавная игрушка на данный момент, даже не серьезно) это смешно. Да и в бэке питон сосет у нормальных языков. Вот и остаются всякий машоб, бигдата и скриптики для сисадминов. Ну и питон полезный язык для не-программистов, как вспомогательный инструмент.
Аноним 03/12/22 Суб 11:48:13 2529521 507
>>2529300
надо в draw.text передавать font, а у фонта есть size
Аноним 08/12/22 Чтв 09:11:24 2534739 508
>>2529337
графику может делать, игрульки разные без 3Д, и сурьёзные программы ту же 1Ц уёбищную запилили бы на пистоне лучше!
Аноним 10/12/22 Суб 02:37:17 2536979 509
>>2511197
>Отвечу на свой вопрос сам, спасибо ЛОРу:
Это не называется "сам", довн
Аноним 14/12/22 Срд 20:22:54 2541046 510
Если есть аналитики в треде, то, пожалуйста, посоветуйте куда смотреть после прохождения начальных курсов по питону. Знакомиться с библиотеками, решать ситуационные задачи?
Планирую вкатываться после защиты докторской по медицине занесла нелёгкая, навыки в стат. обработке и визуализации есть, то есть я сейчас стараюсь закрыть область с получением данных, наведением в них порядка и т.д. Может что-то не так понимаю.
Аноним 19/12/22 Пнд 17:09:27 2546090 511
>>2519496
Посмотрел твой код и ошалел, не говорю что не правильно потому что не понимаю.) А не понимаю потому что все что там пишешь на этом этапе ты не проходишь и писать и думать я полагаю нужно примитивней на уровне пройденного материала. То же сначала не получилось, не найдя ответа в инете немного посидев прошел задачку.
вот код
a = str(input())
a1 = a[0]
a2 = a[1]
a3 = a[2]
min1 = int(min(a1, a2, a3))
max1 = int(max(a1, a2, a3))
min2 = int(a1) + int(a2) + int(a3) - min1 - max1
if min1 == 0:
print(str(min2) + str(min1), str(max1) + str(min2))
else:
print(str(min1) + str(min2), str(max1) + str(min2))
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов