Сохранен 533
https://2ch.hk/pr/res/2546424.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Питон тред №152 /python/

 Аноним 19/12/22 Пнд 20:46:38 #1 №2546424 
5ae0c1c8a5260bc-2.jpg
course4956image.png
image.png
Тред, посвящённый языку программирования Питон, #152

Предыдущий: >>2527453 (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
Аноним 20/12/22 Втр 01:31:26 #2 №2546731 
Pip или poetry?
Не понимать, нахуя велосипед рама карбон, семь скоростей, если первое уже есть?
Аноним 20/12/22 Втр 02:04:39 #3 №2546740 
>>2546731
Фиксировать версии зависимостей, минимально обновлять только то что тебе необходимо, менеджить venv за тебя, и ещё пара свистоперделок. Это примерно как npm/cargo, полноценная среда управления проектом. Pip тупой как пробка, умеет только устанавливать, не видит конфликтов в зависимостях, версии непрямых зависимостей будут гулять.
Аноним 20/12/22 Втр 02:15:09 #4 №2546746 
Я не понимаю, как вкатиться в ООП. Вся документация, гайды и туториалы, что я видел, ограничены вот этой абстрактной хуетой Class Animal. Где-то можно найти что-то более приближенное к реальности? Например ооп на примере работы с апи.
Аноним 20/12/22 Втр 02:21:47 #5 №2546749 
>>2546746
>Где-то можно найти что-то более приближенное к реальности? Например ооп на примере работы с апи.
В любом проекте на гитхабе, который сложнее одного скрипта.
Аноним 20/12/22 Втр 02:33:37 #6 №2546751 
>>2546746
https://ideone.com/7kCLOt
Аноним 20/12/22 Втр 02:36:38 #7 №2546752 
>>2546746
> на примере работы с апи
Каким апи? Когда ты джангу используешь, создаёшь там всякие модели-формы, это апи? Для http апи создаёшь сессию, создаёшь объект-запрос, получаешь объект-ответ, это достаточно ООП?

Если что, в питоне вообще всё объект, любые числа, функции, классы, у всего есть type(), dir(). У любого класса есть --mro--, где хранится вся цепочка наследования.
Аноним 20/12/22 Втр 03:12:20 #8 №2546755 
KaWKouEoBEQ.jpg
Я знаю что всякие гоуту конструкции это неправильно, а как правильно сделать если например проверяешь какие-то загруженные из инета строки в try, что-то не так прогрузилось и срабатывает except. Так вот как сделать чтоб трай сделал например 3 захода и тогда уже выскочил на finally.
Обработать именно этот пример "browser.get('sosach')" не варик, это в примере одна строка а на деле много запросов. Только закидывать этот весь код в цикл на 3 захода и если получилось после первого раза то брейк, так правильно?

try:
browser.get('sosach')
except Exception as ex:
print(ex)
Аноним 20/12/22 Втр 03:18:01 #9 №2546756 
>>2546755
Выносить в функцию, в которой реализовать такую хуйню.
Есть готовые решения. https://github.com/jd/tenacity
Аноним 20/12/22 Втр 03:31:26 #10 №2546758 
>>2546756
>Есть готовые решения. https://github.com/jd/tenacity
А в чём разница этого и трай-эксепт с той же функцией, я глянул быстро будто какой-то велосипед изобретен вместо трай-эксепт.
Аноним 20/12/22 Втр 03:35:40 #11 №2546759 
>>2546758
Это декоратор. Ты берешь свою функцию и навешиваешь его на неё, получая этот функционал без велосипедных трай-экспетов.
Там куча разных опций и вариантов.
Аноним 20/12/22 Втр 05:47:59 #12 №2546775 
Посоны объясните как работать с этим джисон. Вот например получаю:
driver.get('https://stackoverflow.com')
logs = [json.loads(log['message'])['message'] for log in driver.get_log('performance')]
И вывожу простыню:
print(logs)

Простыня например такая:
[{'method': 'Network.requestWillBeSent', 'params': {'documentURL': 'https://stackoverflow.com/', 'frameId': 'B074917A0EE63861EF57AE50B4562772', 'hasUserGesture': False, 'initiator': {'type': 'other'}, 'loaderId': 'B8C88702677F036388B22EF81E437B91', 'redirectHasExtraInfo': False, 'request': {'headers': {'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit...........

И вот сколько примеров не перерыл, не могу получить простой вывод например юзерагента.
Что-то вроде print (logs['User-Agent']). Как из этого logs выдрать параметры юзерагент?
Аноним 20/12/22 Втр 05:56:12 #13 №2546779 
>>2546775
>не могу получить простой вывод например юзерагента
А что ты пытаешься получить-то? Либо сериализуй, либо обращайся как с обычными словарями. Первое более тру, второе - более скриптово.
Аноним 20/12/22 Втр 06:45:35 #14 №2546785 
>>2546779
>А что ты пытаешься получить-то? Либо сериализуй, либо обращайся как с обычными словарями. Первое более тру, второе - более скриптово.
Хочу получить значение User-Agent, то есть принт должен вывести "Mozilla/5.0 (Windows NT 6.1; Win64....."

Проблема в том что в таких сложных респонсах от сайта он имеет кучу вложений, как DOM-дерево, например здесь простой джисон:
response = requests.post('https://api.myip.com', json={'key':'value'})
print(response.json()['ip'])

Ну и вот такое обращение вполне работает. Я хочу так же получить значение юзерагента, но он находится по пути уровня 'method' > 'User-Agent'. Не знаю как еще нубски описать не в корне короче. Перерыл кучу примеров и везде то в файл всю простыню сохраняют, то все значение получают. Как получить одно конкретное и какой синтаксис этой строки не понятно.
Аноним 20/12/22 Втр 07:49:35 #15 №2546792 
>>2546755
>закидывать этот весь код в цикл на 3 захода и если получилось после первого раза то брейк, так правильно?

да. зачем выебываться?
Аноним 20/12/22 Втр 08:47:05 #16 №2546808 
>>2546785
>Не знаю как еще нубски описать не в корне короче.
Если знаешь точное расположение ключа - доставай как есть:
response[0]['blah']['blah']['User-Agent']

Если нет - пиши рекурсивный обход.
Аноним 20/12/22 Втр 09:00:24 #17 №2546810 
>>2546785
>>2546808
Там скорее всего есть методы для доставания из этого самого реквеста, надо курить документацию. Хотя нахуй его доставать, его скорее самому ставить надо, а вот доставать можно уже респонс.
Что это вообще, селениум какой-то?
Аноним 20/12/22 Втр 09:12:42 #18 №2546816 
>>2546810
Так положение этого значения всегда фиксировано, по идее будет
[0]['params']['headers']['User-Agent']
если не туплю
надо только обязательно в try-except обернуть, потому что ключам может и не быть, заголовки headers заполняет клиент по своему желанию
Аноним 20/12/22 Втр 10:34:08 #19 №2546874 
>>2546731
Ещё есть pipenv, pip-tools, тысячи их. poetry самый норм.
Аноним 20/12/22 Втр 17:09:02 #20 №2547456 
изображение.png
>>2546874
Скажи мне, начал обмазываться poetry и столкнулся с тем, что в vscode после инициализации и переключения на env через ctrl+f5 скрипт запускается хорошо, но через эту ебучую кнопку пишет "module %name% not found". Проблема явно в том, что кнопка не одупляет, что я нахожусь в окружении проекта poetry.
Я недавно с пайчарма слез.
Аноним 20/12/22 Втр 17:22:36 #21 №2547485 
>>2547456
> Я недавно с пайчарма слез.
Зачем?
Аноним 20/12/22 Втр 17:30:13 #22 №2547500 
>>2547485
Пайчарм тяжёлый и медленный.
Аноним 20/12/22 Втр 19:16:53 #23 №2547629 
>>2547456
poetry использует обычные virtualenvs. по-дефолту он их где-то в жопе создает но можно указать чтобы делал в каталоге с проектом.
Просто найди где созданный им virtualenv для твоего проекта(poetry shell и там which python, например) и укажи python из каталога venv_path/bin в качестве интерпретатора для проекта.
с vs code не работал(для питона по крайней мере)
Аноним 20/12/22 Втр 19:34:58 #24 №2547651 
>>2546755
Просто перезапускай парсер целиком раз в час, пока он не высрет нужную дельту, которую ты уже впишешь в БД.
Аноним 20/12/22 Втр 19:51:56 #25 №2547676 
На Datacamp нормальные курсы по Питону и SQL?
Аноним 21/12/22 Срд 00:43:45 #26 №2547911 
Как понять, что пора перестать рефакторить свой проект? Он используется в работе, и я единственный разработчик, но к сервису нет никаких требований по части быстродействия - то есть оно все работает и так, я только докидываю функционал. Но почему-то постоянно хочется взять и переписать уже существующее говно. Вот сегодня 4 часа после работы сидел и по фану рефакторил кусок говнокода.
Аноним 21/12/22 Срд 01:05:43 #27 №2547933 
>>2547911
Детище твоё, ничего необычного. Я от нехер делать в скрипте по перекидыванию данных из БД в БД сделал навигацию по коммитам и историю зачем-то, хотя по времени мог написать свой проект. Только какой неясно.
Аноним 21/12/22 Срд 02:00:55 #28 №2547958 
>>2547911
Ты просто устанешь это делать. Рано или поздно. Это не является проблемой.
Аноним 21/12/22 Срд 02:14:17 #29 №2547963 
Ребят, вкат актуален в условиях сво или сейчас туго с этим?
Аноним 21/12/22 Срд 02:22:28 #30 №2547967 
>>2547963
В условиях чатгпт не нужен, ты опоздал.
Аноним 21/12/22 Срд 02:23:35 #31 №2547968 
>>2547963
Вместо таких вопросов лучше почитай про при и порешай задачки про подпоследовательности.
Аноним 21/12/22 Срд 02:23:59 #32 №2547969 
>>2547968
>при
АПИ
Аноним 21/12/22 Срд 02:43:41 #33 №2547973 
>>2547963
Нет, не актуален. Западное финансирование аутсорса всё, западные платформы нас забанили, на вакансии в России пизданутый конкурс, нужны только синьоры с многолетним коммерческим опытом.
sage[mailto:sage] Аноним 21/12/22 Срд 03:21:02 #34 №2547981 
>>2546424 (OP)
Объясните, что учить Джанго или Джанго Рест? И там, и там можна написать апи, но лучше ж для этого подойдет Джанго Рест, не? Та и редко случаются проекты, где на бекенде нужно писать темплейты, вот эти формочки создавать, обычно просто апи делаешь, а остальное фронтенд
Аноним 21/12/22 Срд 07:19:01 #35 №2548010 
>>2547963
Другой вкат актуален, если у тебя группа годности А-В. Если ещё есть права категории С, то вообще здорово. Найдёшь работу, найдёшь, если ты мужчина, а не мальчик

>>2547973
>на вакансии в России пизданутый конкурс
Сейчас более-менее берут, при условии, что работать из России
Аноним 21/12/22 Срд 09:52:56 #36 №2548076 
Сап, как написать на пайтон программу в которую загружаешь данные и он распределяет их по значениям, данные из ексель таблицы. В чем суть, нужно чтобы он распределял по отделениям - сколько и в каких отделениях людей, контрактник или призывник и сколько их, прочий и офицеры
Аноним 21/12/22 Срд 10:06:42 #37 №2548085 
>>2548076
Выглядит как очень просто, строк на 20, если питон умеет экселевский файлы открывать.
Найди как их открывать, покажи какое внутреннее представление твоих данных и какой вывод тебе нужен, я могу накидать примерный код.
Аноним 21/12/22 Срд 10:11:16 #38 №2548093 
image.png
image.png
>>2548085
Аноним 21/12/22 Срд 10:26:25 #39 №2548101 
>>2548093
Да я говорю найди код который экселевский файлы открывает, и покажи какой у него вывод - а я это переформатирую в нужное.

И вообще логичнее прямо в экселевском файле сделать, там же есть простейшие команды, а для более сложных можно на VB написать скрипт внутри файла.
Аноним 21/12/22 Срд 10:32:26 #40 №2548105 
>>2548076
Нахера тебе питон? Сделай сводную таблицу и все.
Аноним 21/12/22 Срд 10:34:48 #41 №2548106 
>>2548105
сделал, первый пик. Я хотел в екселе, таблица огромная служебные компы не вывозят
Аноним 21/12/22 Срд 10:42:14 #42 №2548110 
r8lkt.jpg
>>2548106
Сидит такой хуй где-то в каморке и канпилирует списки чмобилизации на пердящем пентиуме 166 ммх в шиндовс 98.
Может и вы в нем.
[mailto:Roll] Аноним 21/12/22 Срд 10:42:26 #43 №2548111 
>>2548085
Какой то чат для совсем нубов. Pandas.read_excel. Я думал тут сеньоры помидоры сидят
Аноним 21/12/22 Срд 10:58:25 #44 №2548116 
>>2548111
Челу на службе голову отбили, он загуглить не может как из петона эксель обработать, двач остался единственный оплотом знаний, че ты хочешь.
Аноним 21/12/22 Срд 11:02:36 #45 №2548117 
sort.jpg
Анонче, что это за сортировка?
Аноним 21/12/22 Срд 11:08:51 #46 №2548118 
>>2548117
пузырь
Аноним 21/12/22 Срд 11:15:06 #47 №2548122 
>>2547963
Ваканский стало сильно меньше. Причем ещё весной было норм. Летом тоже был выбор. А последнюю работу искал больше месяц и по факту был только один оффер реальный, я даже не выбирал.
В местных вакансиях как правило или платят мало или проект мутные и всё это вместе плюс безумные требования типа ездить в офис к 9-и утра. Во второй половина ваканский требуют релокейта во всякии армении/грузиии/сербии/кирпы.
С другой стороны украина сидит без света, и выехать не могут, а там была куча аутсорсеров и им ищут замену. Но тут нужен счет в каком-то банке не под санкциями(вроде счет в белорусском банке вариант) и не все вообще готовы готовы работать с РФ по политическим или юридическим причнам.
Сам с дуру бросил стабильную работут тут работу в сентябре и истал работу целенаправленно тоже в РФ. Но приходится работать на барена.
Короче всё сложно, а джунам вообще совсем бида, наверное.
Аноним 21/12/22 Срд 11:16:21 #48 №2548123 
>>2548093
это двухсотые что ли? че за даты разные и недавние
Аноним 21/12/22 Срд 11:17:16 #49 №2548124 
>>2548123
неть, просто больные
Аноним 21/12/22 Срд 11:19:21 #50 №2548125 
>>2547981
Да они похожи оч, и чего там "учить" вообще можно по ходу разобраться благо доков и инфы в инете полно и исходники вполне читаемые, прыгаешь по коду фреймворка в IDE, быстрее чем инфу искать даже.
Последние несколько лет, в основном работал с DRF. Но смотря что за проект, иногда вся эта возня с фронтом это оверкилл, особенно, если один проект делаешь и это не какое-то мега веб приложение. Прошлой зимой делал что-то вроде новостного сайта, так забабахал всё на шаблонах прост и норм.
Аноним 21/12/22 Срд 11:22:19 #51 №2548130 
>>2548123
403-е
Аноним 21/12/22 Срд 12:25:46 #52 №2548187 
>>2548118
А это точно пузырь? Вложенный цикл всегда по всему списку идёт.
Аноним 21/12/22 Срд 12:41:37 #53 №2548199 
>>2548187
Просто реализация в лоб без оптимизаций.
Аноним 21/12/22 Срд 13:08:58 #54 №2548243 
>>2548187
пузырь с первого занятия по компьютер сайнсу
на втором добавят оптимизацию - флаг и в конце скажут забыть про это говно и пользоваться тем что есть в языке
Аноним 21/12/22 Срд 15:10:34 #55 №2548377 
Как в .split() написать символ переноса строки?
Аноним 21/12/22 Срд 15:12:35 #56 №2548379 
>>2548377
'\n'
Аноним 21/12/22 Срд 15:13:06 #57 №2548380 
>>2548377
.split('\n'), как всегда
Аноним 21/12/22 Срд 15:14:53 #58 №2548383 
>>2548379
>>2548380
блять, это пять минут назад не работало, а сейчас заработало. Спасибо
Аноним 21/12/22 Срд 16:54:32 #59 №2548472 
изображение.png
Объясните пожалуйста тугодуму. По шагам
как эта функция высчитывает частоту символов?
Зачем нужно переводить список во множество?
После того как список переведен во множество, оно ведь считает все равно по списку? Зачем нужно множество? Чтобы потом сравнить с посчитанным в списке? Но как ничего не могу сообразить.
ИЛИ ЭТО ВОЛШЕБНОЕ СВОЙСТВО ФУНКЦИИ МАКС, в которой реализовано что-то типа цикла, которое последовательно сравнивает эти 2 параметра?
Кстати напомните пожалуйста, внутри скобок вот такие вот параметры или если записать вместо них функции как параметры функции(если это возможно) будут выполняться слева направо?
Аноним 21/12/22 Срд 17:13:15 #60 №2548497 
>>2548472
Сет нужен, чтобы сравнивать только уникальные элементы, количество же ищем в оригинальном списке.
Ну такое, хитрость учителя информатики.
Аноним 21/12/22 Срд 17:18:33 #61 №2548506 
>>2548472
Переменную list называть ужасная практика, это встроенное имя.
И ещё в стандартной библиотеке есть collections.Counter
Аноним 21/12/22 Срд 17:26:22 #62 №2548526 
>>2548497
Ну а по шагам можно?
Зачем нужен кей?
почему пишут
> затем применяет к каждому из них фукнцию каунт?
кому это из них?
элементам множества?
но ведь каунт применяется для списка, не множества

и куда потом идет этот кей?
Аноним 21/12/22 Срд 17:29:29 #63 №2548535 
>>2548472
>>2548506
>>2548497
что-то запустил в пичарме код, а он не работает
Аноним 21/12/22 Срд 17:34:46 #64 №2548546 
image.png
image.png
>>2548526
key тут применяется для вычисления значения для сверки. То же самое в сорт - сортируем по длинне строки.
Теперь возвращаемся к максу. С сетом мы делаем три сверки на каждый элемент (1,2,3), с оригиналом пять (1,1,1,2,3), но они избыточны для получения результата, для того и сет.
Аноним 21/12/22 Срд 17:38:53 #65 №2548549 
>>2548546
А почему каунт без скобочки?
Аноним 21/12/22 Срд 17:41:19 #66 №2548556 
изображение.png
>>2548546
TypeError: '>' not supported between instances of 'builtin_function_or_method' and 'set'
Аноним 21/12/22 Срд 17:42:34 #67 №2548558 
image.png
>>2548549
key принимает ссылку на функцию, которую выполняет для каждого элемента. a.count соответственно использует метод count объекта a.
Аноним 21/12/22 Срд 17:43:33 #68 №2548561 
изображение.png
>>2548546
>>2548556
ааааа кажись понял.
спасибо за объяснения. кей тут не переменная а аргумент функции макс. спс пойду учиться дальше
>>2548558
спасибо большое
Аноним 21/12/22 Срд 17:43:37 #69 №2548562 
>>2548556
key=val это именованый параметр, в отличие от позиционных.
Аноним 21/12/22 Срд 17:46:59 #70 №2548568 
изображение.png
>>2548562
да. вроед разобрался еще раз спасибо вам
Аноним 21/12/22 Срд 17:52:57 #71 №2548573 
image.png
>>2548472
Просто по строчкам же запускай и смотри. В чём проблема.
Аноним 21/12/22 Срд 18:28:57 #72 №2548596 
Как изучать питон?
Что нужно и можно делать? Парсер написать сложно для новичка? Или телеграм бот парсер торрентов норм тема? Или сложно для начала?
Аноним 21/12/22 Срд 18:38:06 #73 №2548605 
>>2548596
>Парсер написать сложно для новичка?
Парсер языка программирования - сложно. Бот - средне, там больше рутины и документации ботов, торрентов и либ, чем программирования. Мне кажется это довольно плохие задачи для обучения.

Лучше сделай простую игру на pyglet/pygame. Например, ртс, 3 типа юнитов, 1 ресурс, 5 типов построек. Охват кучи тем, сравнительно мало задротства с документацией, при этом ты попробуешь и ооп, и алгоритмы нахождения пути и прочего, и какие-то сложные функции генерации карты, и побалуешься с архитектурой кода как сделать внятное ui и логику перехода из меню с кнопками к собственно игре. Ещё и математику потыкаешь, если в 3d.
Аноним 21/12/22 Срд 18:44:18 #74 №2548614 
>>2548596
Это всё производные от чужого кода, поэтому проще.
Надо свое делать.
Аноним 21/12/22 Срд 19:36:36 #75 №2548685 
>>2548117
Это selection sort. Почему-то в русскоязычной среде все неоптимальные и простые сортировки называют пузырьком. Пузырёк всегда меняет местами соседние элементы, а не ищет минимальный в остатке массива. Поэтому большие значения постепенно поднимаются вверх с каждой итерацией, как пузырьки, отсюда и название.
Аноним 21/12/22 Срд 19:45:21 #76 №2548701 
>>2548596
Делай то что интересно. Изучать сам по себе питон довольно скучно, потому что неясно зачем это всё именно так сделали. Самые знания языка получаются если ты умеешь экспериментировать в REPL, вот как тут >>2548573. Запони что там есть функции type, dir, help, которыми можно поизучать любой объект/метод.
Аноним 21/12/22 Срд 22:58:49 #77 №2548916 
>>2548685
>Почему-то в русскоязычной среде все неоптимальные и простые сортировки называют пузырьком
Потому что нахуй их различать-то.
Аноним 21/12/22 Срд 23:18:01 #78 №2548926 
>>2548916
Чтобы не быть ебобо.
Аноним 22/12/22 Чтв 03:22:52 #79 №2549024 
>>2548383
небось написал /n, типичная ошибка
Аноним 22/12/22 Чтв 03:50:05 #80 №2549030 
>>2548377
Если читаешь обычный текстовый файл, пизже использовать .splitlines(), который сработает на всех возможных вариантах переносов строк: \n, \r, и даже \r\n.
Аноним 22/12/22 Чтв 04:12:30 #81 №2549033 
>>2549030
Лучше использовать итератор по файловому объекту.
Ньюлайны автоматически подстраиваются под платформу, на которой выполняется скрипт, так что можно всегда писать \n.
Аноним 22/12/22 Чтв 08:50:58 #82 №2549094 
image.png
>>2548472

нихуя лайфхак
Аноним 22/12/22 Чтв 08:52:11 #83 №2549095 
>>2549033
>Ньюлайны автоматически подстраиваются под платформу, на которой выполняется скрипт, так что можно всегда писать \n.

нихуя ты мне ща фобию закрыл
Аноним 22/12/22 Чтв 09:39:01 #84 №2549111 
>>2548472
Уёбищная асимптотика O(unique * n), Counter за линейное время посчитает.
Аноним 22/12/22 Чтв 09:44:27 #85 №2549112 
>>2549111
Не линейная же, а k*n, от линейной с плохой константой до квадратичной, если повторяющихся элементов мало.
Аноним 22/12/22 Чтв 12:28:38 #86 №2549236 
Как в паймарме привязать дебаггер к celery в docker-compose проекте? Нигде инфы нихуя
Аноним 22/12/22 Чтв 12:51:50 #87 №2549286 
>>2549236
попробуй для сравнения погуглить как это сделать в vscode.
и переходи на vscode.
Аноним 22/12/22 Чтв 14:46:57 #88 №2549461 
>>2549286
> переходи на vscode.
Зачем, если есть божественный pycharm?
Аноним 22/12/22 Чтв 16:20:50 #89 №2549556 
>>2549461
потому что у VScode есть СУПЕРСИЛА MICROSOFT.
Все вопросы решаются вливом бабла.
Рано или поздно останется только один редактор.

Там это работает, уверяю.
Там просто мастер Add docker to project генерит отладочный и обычный docker-compose.yml
Аноним 23/12/22 Птн 07:43:06 #90 №2550412 
Сап двач.
В пайчарме нажал alt+enter и что-то еще, в итоге у меня перестало ошибки подчеркивать. Как фиксить?
Аноним 23/12/22 Птн 07:52:50 #91 №2550413 
>>2550412
Ну нажми там что-то.
Аноним 23/12/22 Птн 08:30:28 #92 №2550421 
Screenshot24.jpg
Screenshot25.jpg
>>2550412

Жмёшь три точки, там настройки и вернуться к дефолтным
Аноним 23/12/22 Птн 08:45:49 #93 №2550430 
LyKa9.jpg
>>2550421
Спасибо, помогло. А то я уже все галочки подряд стал пробовать.
Аноним 23/12/22 Птн 13:39:26 #94 №2550689 
Сап двач
подскажите после изучения языка что лучше учить? бд? или может алгоритмы? а может GIT?
Аноним 23/12/22 Птн 13:42:14 #95 №2550692 
>>2550689
забыл добавить , на бека мечу
Аноним 23/12/22 Птн 15:17:11 #96 №2550814 
>>2550689
всё
Аноним 23/12/22 Птн 18:14:57 #97 №2551101 
>>2550689
>а может GIT?
Чё там учить-то?
Аноним 23/12/22 Птн 18:21:08 #98 №2551120 
Как наебать яндекс при парсинге ?
Суть в чем, мне нужно искать сайт в яндекс выдаче(именно живой выдаче), проблема в том что эта хуйня дропает мне капчу после 1 запроса(похоже что запросы делает робот),если кто нибудь уже сталкивался и как-то решил эту хуйню, буду очень признателен.
(использую селениум так как bsом эта пиздурма не парсится вроде)
Аноним 23/12/22 Птн 18:24:06 #99 №2551127 
>>2551120
Поисковики не любят парсинг и очень хотят его палить.
Тут надо будет некоторое количество резидентал проксей и реальный браузер.
Аноним 23/12/22 Птн 19:32:21 #100 №2551249 
>>2550689
>подскажите после изучения языка
лол, язык он изучил
Аноним 23/12/22 Птн 19:53:50 #101 №2551300 
>>2550689
Вот: >>2548605
Игра - это очень хорошая проверка как ты научился кодить. Из библиотек тебе минимум функционала нужно (если не замахиваться на крутой графоний-звук, а именно геймплей кодить), а вот по части кодинга тебя просто океан приключений ждёт.
Аноним 23/12/22 Птн 22:31:01 #102 №2551459 
C1EDB84F-88AC-43A0-A861-52C93CB03933.jpeg
Братишки, есть вопрос.
Не ставится pygame ни в какую. Попробовал ставить на версии 3.11, потом на 3.10, потом на 3.9.

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

Гугл говорит, что нужно попробовать поставить на младших версиях, и все должно заработать. Но мне не помогло.
Аноним 24/12/22 Суб 09:56:55 #103 №2551735 
>>2551459
У меня знакомый вкатывальщик то же самое говорил неделю назад, я попробовал на 3.10 переставить - у меня переустановилось без проблем.

Попробуй загрузи вручную:
https://github.com/pygame/pygame/releases/tag/2.1.2
У него сразу заработало.
Аноним 24/12/22 Суб 10:20:36 #104 №2551752 
>>2551459

Пугейма под 3.11 нету еще. На 3.10 у меня работает.
набрали воздуха Аноним 24/12/22 Суб 10:21:48 #105 №2551754 
ПИТОН версии 3.14 должны переименовать в ПИТОН. а? а? а?
Аноним 24/12/22 Суб 10:43:43 #106 №2551760 
>>2551754
каво
Аноним 24/12/22 Суб 10:56:11 #107 №2551762 
>>2551754
Лучше бы уж ПИПИТОН сказал
Аноним 24/12/22 Суб 11:10:09 #108 №2551772 
image.png
Сап двач, есть одна проблема.

Прикрутил к коду GUI с двумя кнопками, при нажатии на первую, её функция успешно выполняется и GUI работает дальше, но при нажатии на вторую кнопку GUI зависает, т.к. в функции крутится цикл и пока он не выполнен GUI не работает

Как пофиксить? Вроде нужно распараллеливание, но как его сделать и чем? Гуглить пытался но слишком дохуя лишней информации, от которой моск плавится
Аноним 24/12/22 Суб 11:16:05 #109 №2551775 
>>2551772
Фризится, потому что эвент залуп гуи блокируется, это платина.
Запускай своё говно в отдельном треде.
Аноним 24/12/22 Суб 11:30:31 #110 №2551791 
>>2551735
>>2551752
Спасибо, родные

У меня не получалось просто проставить 3.10 и на него накатить. Все равно выдавало ту же ошибку. Пришлось снести всё. И переустановить 3.10 какбэ с нуля. Тогда все заработало и pygame поставился без проблем.
Скорее всего был какой-то более простой и менее радикальный метод, но мне с моим уровнем знаний помогло только это
Аноним 24/12/22 Суб 12:19:39 #111 №2551819 
>>2551760

говорю, пайтон версии 3.14 должен называться пайтон. секёшь?
абу 24/12/22 Суб 14:39:35 #112 №2552002 
16692835487240.jpg
сап говно
предположим есть задача написать простейший ЯП на питоне да
как организуешь работу с памятью в своем ЯП ?
ну имею ввиду где будешь хранить имена переменных, данные, как свяжешь между собой ?
или обойдешься кучей в которую будешь совать безымянные данные ?
ответ нужен побыстрее и лучше срочно
Аноним 24/12/22 Суб 14:50:28 #113 №2552010 
>>2552002
Я бы в словаре хранил, как собственно в самом питоне и сделано, если globals() вызвать?
Аноним 24/12/22 Суб 14:58:20 #114 №2552016 
>>2552002
что скажешь насчет реализации через стек?

пусть у тебя есть прога типа
def f(x):
return 10*x + 15

ты это парсишь, разбираешь на составные части. Прога у тебя выполняется примерно так:
1. положить на стек x
2. положить на стек 10
3. взять со стека два операнда, умножить между собой и положить результат в стек
4. положить в стек 15
5. взять со стека два операнда, сложить между собой и положить результат в стек
6. вернуть значение со стека
Аноним 24/12/22 Суб 15:05:24 #115 №2552034 
>>2552016
посмотри что выдает python dis и реализуй так же
Аноним 24/12/22 Суб 15:10:52 #116 №2552045 
>>2552002
где хуй?
Аноним 24/12/22 Суб 15:26:48 #117 №2552069 
>>2552016
дома буду покажу свои наработки нарисованные в паинт
но могу и так в двух словах пояснить

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

ну неважно короче щас я к вопросу подошел сурезнее и застрял (как обычно) на самом казалось бы простом - работа с переменными

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

есть значить у нас оператор push который добавляет всякое гавно в кучу (не стек)

есть оператор int который вызывает прерывание

выглядит это типа так

push 666
int out

то есть сперва заталкиваем в кучу 666 потом вызываем оут и в качестве аргумента передаем ей то что лежит в куче, причем передаем спомощью .pop() то есть и очищаем кучу, потому что так нада

но и помимо этого подумал неплохо было бы переменные так-то юзать
ну типа

a = 666
out a
тут уже посложнее, во-первых нужно 2 массива
в первом лежит чето типа {"0x0": 666} а во втором лежит {"a":"0x0"},

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

Хотелось бы узнать как вам идея, Жириновский предложил если че
Аноним 24/12/22 Суб 18:47:12 #118 №2552375 
>>2552069
Хер пойми чем ты занимаешься. Изучи как работает стек-машина питона, смотри модуль dis и вообще доки глянь. Там что-то похожее возможно.
Аноним 24/12/22 Суб 19:46:49 #119 №2552468 
16428978436431.webm
>>2551775
Палучиилась!
Правда заново всё пришлось переписывать
Аноним 24/12/22 Суб 20:44:00 #120 №2552553 
Безымянный.png
>>2552375
иди нахуй
>>2552016
вот я нарисовал, на описание не обращай внимания оно мне надо
Аноним 24/12/22 Суб 21:37:47 #121 №2552654 
>>2552553
нормик, вместо очищения кучи я бы подумал, как это в кэш какой-нибудь заебошить
Аноним 24/12/22 Суб 22:01:44 #122 №2552697 
image.png
Привет. Как найти ближайшие элементы в массиве. Что понимается под ближайшими изобразил на пикриле
Аноним 24/12/22 Суб 22:04:54 #123 №2552708 
image.png
>>2552697
Аноним 24/12/22 Суб 22:18:54 #124 №2552724 
>>2552697
тебе вычислить индексы вокруг нужно? типа, имея (0,0) получить (1,0) (0,1) (1,1)?
Аноним 24/12/22 Суб 22:19:39 #125 №2552727 
>>2552724
Ну типа такого
Аноним 24/12/22 Суб 22:34:35 #126 №2552744 
image.png
>>2552727

держи
https://www.online-python.com/bWLVX3QaRM
Аноним 24/12/22 Суб 22:37:17 #127 №2552748 
>>2552744
>>2552708
Спасибо!
Аноним 24/12/22 Суб 23:04:59 #128 №2552762 
Аноны, вот смотрите какая ситуация.

1) Я читаю файл io open "utf-8" все дела, получаю здоровую строку весом 10 мб.

2) Потом алгоритм с помощью простого поиска по строке find ищет там определенные места (find_result, например)

3) Потом я добавляю к "find_result" несколько символов
re_tmp = "(?<=hui)"+find_result

4) Делаю замену с помощью регулярных выражений в этом же файле. re.sub(re_tmp, pizda, jigurda)

Но вот в чем беда. Если в find_result попадают такие символы как например "(", "?", ")" то он такую строку не найдет, пока ты к этим символам эсекйпы не добавишь \(. По этой причине приходится каждый раз смотреть есть ли эти символы в find_result, целую функцию с условиями и заменами там делать. Может есть какой-нибудь быстрый метод или встроеный финт ушами, или флаг для re, который бы заставлял модуль регулярок на эти смимволы смотреть как на обычные символы, а не как на смецсимволы которые надо экранировать.
Аноним 25/12/22 Вск 00:46:59 #129 №2552848 
>>2546759
сохранил себе. выглядит симпатично
Аноним 25/12/22 Вск 00:47:34 #130 №2552850 
>>2546759
ааа блять. это же ретрай. галя, отмена.
Аноним 25/12/22 Вск 00:49:50 #131 №2552853 
>>2547963
Ну если найдешь работу то да. Хотя когда ты там выучишь питон и начнешь вкатываться, то уже и сво кончится и солнце расцветет.
Аноним 25/12/22 Вск 00:51:02 #132 №2552856 
>>2548110
>>2548085
>>2548105

ща вы ему блять насоветуете он кого то не того мобилизирует епта
Аноним 25/12/22 Вск 00:52:09 #133 №2552858 
>>2548123
504
Аноним 25/12/22 Вск 00:54:39 #134 №2552863 
Планирую на время действия сво сидеть в около госухе с отсрочкой.
Какие подводные.
Аноним 25/12/22 Вск 01:27:26 #135 №2552892 
>>2551101
Не умею пользоваться двумя ветками, при пуш кормите херю одну из веток.
Порядок
git commit -m 'alpha 0.1'
git push
git merge dev/origin
И ветка dev удаляется со всеми коммитами.
Аноним 25/12/22 Вск 02:07:00 #136 №2552914 
>>2552892
Ты главное во время пуша не забывай -f писать. И откажись от merge, используй rebase. Чо как лох?
Аноним 25/12/22 Вск 05:33:50 #137 №2552948 
>>2552762
find_result = re.escape(find_result)
Аноним 25/12/22 Вск 06:03:28 #138 №2552949 
>>2552948
Во я дебил. Вот что бывает когда учишь питон самостоятельно, а не системно - такие вот позорные пробелы, которые просто проебал, читая документацию.
Аноним 25/12/22 Вск 06:07:02 #139 №2552950 
Сможет ли нейросеть прочитать капчу двача?
Аноним 25/12/22 Вск 06:08:14 #140 №2552951 
>>2552950
Могла ещё 10 лет назад. А сейчас каждый школьник по уроку с хабра сможет её обойти.
Аноним 25/12/22 Вск 07:02:09 #141 №2552960 
>>2552951
Заебись, надо сделать
Аноним 25/12/22 Вск 07:08:37 #142 №2552963 
>>2552960
Нет задач проще на рукпачу отправлять за 10 коопеек. Ты ведь всё равно в общей сложности много сообщений отправить не сможешь - быстро это делать не получится из за облачной защиты, а долго это делать не получится потому что все твои айпишники быстро перебанят. Таким образом нейросетку учить ради того чтобы 100 сообщений отправить это трата времени.
Аноним 25/12/22 Вск 07:34:04 #143 №2552966 
>>2552654
так а зочем, куча нужна по сути для временного хранения аргументов функции, после вызова функции аргументы в куче хранить ни к чему, а вот переменные пусь себе хранятся где надо
Аноним 25/12/22 Вск 07:35:14 #144 №2552967 
>>2552963
Я не для вайпа или ботов её хочу создать, а вместо пасскода использовать. Это же вроде не должно палиться, да и вообще это для опыта сойдёт неплохо
Аноним 25/12/22 Вск 07:41:32 #145 №2552971 
>>2552967
А как ты собрался подключать браузер к питухону. Плагин какой-то есть или отныне будешь всю жизнь через селентиум сидеть - так это обновлять заебешься.
Аноним 25/12/22 Вск 07:55:14 #146 №2552974 
>>2552971
Главное что есть теоретически выполнимая идея, а как её реализовать это уже другой вопрос. Возможно на с++ можно будет подключиться к браузеру, или создать приложение/сайт через апи двача и уже через него капчевать.
Аноним 25/12/22 Вск 08:15:01 #147 №2552979 
>>2552948
Всё равно хуйня какая-то, он ставит эскейпы ещё и перед пробелами - шаблон не находится.
Аноним 25/12/22 Вск 08:22:59 #148 №2552981 
>>2552979
Бля абу удали этот пост, всё работает. Надо спать уже ложиться, совсем плавлюсь.
Аноним 25/12/22 Вск 10:01:10 #149 №2553005 
>>2552963
Можно, ты лошок.
И решить можно с автоматизецией в 60-70% попаданий, это охуенно, клаудфлара это защита от детей.
Хорошо знать, что мне платят не просто так.
Аноним 25/12/22 Вск 15:30:52 #150 №2553327 
image.png
>>2552654
я лучше придумал, вернее обобщил
Аноним 25/12/22 Вск 18:52:54 #151 №2553541 
пися попа кака
Аноним 25/12/22 Вск 19:07:00 #152 №2553551 
>>2553541
Это список?
Аноним 25/12/22 Вск 19:43:52 #153 №2553587 
>>2553551
нет это абу
Аноним 25/12/22 Вск 21:29:05 #154 №2553682 
Задача с я.сру: https://new.contest.yandex.ru/41236/problem?id=149944/
Моё решение (не обоссыте, я новенький): https://pastebin.com/NYhCRaMY
Если пользователь ввёл 6 или 14 – всё хорошо, ответ похож на тот, что у Яндекса. Но как, блядь, быть, если с клавиатуры прочитано число 4? Как, блядь, представить это число? На первой строке 1, на второй 2, 3 и 4? Если так, то как изменить код, чтобы 4 (или вообще любое другое число) перемещалась на предыдущую строку? Уже день мозг ломаю.
Аноним 25/12/22 Вск 21:31:55 #155 №2553686 
IMG20221225213023.jpg
IMG20221225213041.jpg
IMG20221225213058.jpg
>>2553682
Линк не работает, вот условие задачи:
Аноним 25/12/22 Вск 21:53:27 #156 №2553700 
>>2553682
Давно пора на такое отдельный тред завести.

>Но как, блядь, быть, если с клавиатуры прочитано число 4?
А оно точно там может быть?
Аноним 25/12/22 Вск 21:58:25 #157 №2553708 
>>2553700
Не знаю, как видишь, в условии задачи нет ни слова о том, что делать с числами, если при разложении последняя строка получается короче предыдущей. Типа хуй знает, при 4 должно печататься:
1
2 3
или
1
2 3 4
Аноним 25/12/22 Вск 22:00:34 #158 №2553711 
>>2553708
Ну значит контест криворукий хуесос составлял. Просто пробуй оба варианта.
Аноним 25/12/22 Вск 22:05:06 #159 №2553715 
>>2553711
А как мне код редачить? Придется вводить новую переменную - пустую строку, и в нее заносить числа? Типа если длина последней строки меньше заданного числа, то ее не печатать?
Аноним 25/12/22 Вск 22:08:53 #160 №2553717 
>>2553715
А ты подумай :)
Аноним 25/12/22 Вск 22:15:00 #161 №2553719 
Screenshot30.jpg
>>2553686
Аноним 25/12/22 Вск 22:21:02 #162 №2553725 
>>2553719
На 6 и у меня прекрасно работает.
Аноним 25/12/22 Вск 22:24:39 #163 №2553727 
>>2553725
да, это неправильный код, набросал быстренько
Аноним 25/12/22 Вск 22:39:04 #164 №2553743 
Screenshot31.jpg
ну вот так, если нужна только ёлочка и при инпуте 4 будет только
1
2 3
Аноним 25/12/22 Вск 22:42:36 #165 №2553746 
Screenshot32.jpg
Хотя в жопу генератор списков, такое лучше избегать
Аноним 25/12/22 Вск 23:03:00 #166 №2553770 
Screenshot33.jpg
Osmanthus wine tastes the same as I remember.mp4
>>2553746
Даже как-то немножко стыдно уже, но тут тоже была небольшая ошибочка
Аноним 26/12/22 Пнд 00:43:50 #167 №2553854 
>>2553770
При n > = 6 криво выводит, еще и с ошибкой.
Аноним 26/12/22 Пнд 02:50:28 #168 №2553897 
>>2553770
https://pastebin.com/Xk4EmZZj

Такой код проходит 2 теста из трёх. Предполагаю, что валится он при n = 24, т.е. последняя строка будет короче предыдущей. Как это сука еще можно записать? Уже день ебусь с задачей, а решил только наполовину.
Аноним 26/12/22 Пнд 03:11:15 #169 №2553898 
>>2553897
Блядь. Создал список max_len со значением 1, в который заносил максимальное значение строки, потом из него выбирал наибольший элемент и сравнивал длину текущей строки (если она больше, чем максимальный элемент списка - 1, то выводим ее), однако опять 2/3 тестов выполнено. ЧЯДНТ? Ебучая задача.
Аноним 26/12/22 Пнд 07:46:11 #170 №2553962 
>>2553682
> Как, блядь, представить это число?
Выдавай ошибку, говори, что число не ёлочное.
Аноним 26/12/22 Пнд 07:59:36 #171 №2553970 
Screenshot34.jpg
Ладно, с утра уже быстро разобрался
и по условию задачи ничего отсекать не надо
Аноним 26/12/22 Пнд 08:01:51 #172 №2553971 
>>2553970
хотя не, отсекать надо, если не равна предыдушей линии. ну тогда тут только списки создавать, а иначе хз как
Аноним 26/12/22 Пнд 08:01:54 #173 №2553972 
ебать.png
>>2553970
>flag == True
ебать чел...
Аноним 26/12/22 Пнд 08:06:02 #174 №2553974 
>>2553972
да, косяк.
Аноним 26/12/22 Пнд 08:48:52 #175 №2553986 
Screenshot35.jpg
Screenshot36.jpg
Screenshot37.jpg
Я хз, вообще. Добился разок 5/6, а в чём проблема в 6 непонятно.
Начал исправлять, даже первое теперь не проходит, хотя в пейчаре всё отлично работает.
Я уже пробнул, что бы и так было, но тут даже первое перестаёт проходить. Совершенно подлая задачка.
Аноним 26/12/22 Пнд 09:37:22 #176 №2554015 
image.png
image.png
>>2553986
Так что, как они в итоге разделиться-то должны? Все хвосты в самую нижнюю ветку?
Аноним 26/12/22 Пнд 10:23:43 #177 №2554038 
>>2546424 (OP)
Есть эксперты в пограмировании? Пишу тамагочи на пайтон, подумал просто выполнять лабораторку не кайф, надо патерн какой-то изучить, ну и с дуру выбрал патерн строитель. В итоге у меня новогоперсонажа создает через директора и строителя, но я хуй знает можно ли дальше привязать ко всем параметрам класс время. Потому что если каждый раз вызывать директора - так это новый объект будет же, или с построенным объектом через директора можно как-то общаться?
Насколько сильно я проебавсь с этим патерном?
Аноним 26/12/22 Пнд 10:41:20 #178 №2554048 
>>2554038
Код показывай.
Аноним 26/12/22 Пнд 11:10:28 #179 №2554056 
Screenshot38.jpg
>>2554015
Я понял почему тест не принимается сходу. Тут на выходе лишний принт, но я хз почему он появляется. После распаковки листа он что-ли автоматом каретку вниз опускает. Ну возможно, там такой алгоритм. Попробую иначе распечать список тогда
Аноним 26/12/22 Пнд 11:11:21 #180 №2554058 
>>2554048
https://github.com/Pekarnya/Tamagochi
Не стукай сильно. Я правда хотел все по технологии сделать, я не знал что так влипну. Мне непонятно как сделать так, чтобы показатели здоровья им все прочее считалось и чтобы вновь созданный объект через строителя дальше использовать.
Аноним 26/12/22 Пнд 11:21:43 #181 №2554068 
>>2554048
Я не прошу тебя выдать мне код, я прошу дать наводку в какую сторону воевать, можно ли спасти такую конструкцию, можно ли еще в такую конструкцию вписать класс времени (чтобы обсчитывать логику игры?
Аноним 26/12/22 Пнд 11:24:22 #182 №2554071 
Screenshot39.jpg
>>2554056
Или нет.
Вроде всегда лишний отступ есть
даже когда программа просто print(1)

В общем так, и дальше хз
Аноним 26/12/22 Пнд 11:34:46 #183 №2554084 
>>2554071
Что точно можно сказать, что не важно, удаляю ли последний список, если он меньше предыдущего или прибавляю к последнему, тест ломается на 6ом, значит связано не с этим.
Аноним 26/12/22 Пнд 11:46:44 #184 №2554093 
>>2553986
Ну, мой код работает: https://pastebin.com/BFBs3C75
Вот только Яндекс ебаный не засчитывает решение, не показывает, какой именно тест не проходит, блядь. Но знаю то, что когда следующая строка была меньше предыдущей, тоже на третьем тесте валилось. По идее я это пофиксил, почему не принимает - хз.
Аноним 26/12/22 Пнд 11:47:32 #185 №2554094 
>>2554084
И думаю, на такие задачи, с неизвестными входными данными + не очень понятным условием лучше время не тратить и идти дальше. Мы уже тут не задачу решаем, а пытаемся под непонятные условия костылями код подвести
Аноним 26/12/22 Пнд 11:47:59 #186 №2554095 
>>2554071
Чет вы нахуевертили олгоритмов каких-то.
https://ideone.com/bJgW9N
Аноним 26/12/22 Пнд 11:48:28 #187 №2554096 
Screenshot2022-12-26-11-47-51-1340deb401b9ffe8e1df2f1cc5ba480b12.jpg
>>2554093
Забы прикрепить пик.
Аноним 26/12/22 Пнд 11:50:57 #188 №2554097 
>>2554095
Тут было обсуждение, что нижняя строка не должна быть короче верхней. Как там в задании, я хз.
Аноним 26/12/22 Пнд 11:53:15 #189 №2554100 
>>2554095
Даже первый тест не прошло.
Само задание тут говно - >>2554094
не стоит тратить время. 5/6 я осилил, но я не представляю что там на 6ом может быть.
Аноним 26/12/22 Пнд 11:55:05 #190 №2554104 
>>2554093
Чёт вспомнил как была отбитая задача, которая точно была решена верно, я предложил данные о последнем тесте выдавать по времени или по объёму памяти, и я, препод и ещё один тип отправляли задачи меняя значение и по затрачиваемой программой памяти определяли входные данные последнего теста.
Аноним 26/12/22 Пнд 11:55:14 #191 №2554105 
image.png
>>2554058
Не очень понимаю, что вот это такое. Декораторы не так используются.
https://docs.python.org/3/library/abc.html#abc.abstractmethod
Аноним 26/12/22 Пнд 11:55:23 #192 №2554106 
>>2554100
Соль в том, что там 18 или какая-то крайная к последней задача такая же, только теперь нормальную елку нужно рисовать, т.е. с отступами слева.
Аноним 26/12/22 Пнд 11:56:40 #193 №2554108 
>>2554106
Там есть примеры входных данных, которые не раскладываются сами на этащи? Или тоже 6 и 14?
Аноним 26/12/22 Пнд 11:57:56 #194 №2554110 
>>2554108
Те же самые примеры, лол. Для 14 и 6, хз что создатели хендбука курили.
Аноним 26/12/22 Пнд 11:58:46 #195 №2554112 
>>2554104
Лол. И как? Сдали всё-таки?
Аноним 26/12/22 Пнд 11:58:53 #196 №2554113 
>>2554106
Делаем просто вложенный список и после принтуем его, заполняя пробелами слева и справа исходя из длины последнего списка, ну это, что первое мне на ум пришло. Чисто косметическое задание.
Аноним 26/12/22 Пнд 12:02:57 #197 №2554117 
>>2554113
Да можно проще. Типа из предыдущей задачи мы знаем длину последней строки, поэтому относительно ее середины располагаем элементы первой строки, второй, и т.д. Мне это первое в голову пришло.
Аноним 26/12/22 Пнд 12:04:07 #198 №2554119 
>>2554112
Неа. Там данные короткие были и их получили, но даже проверив всё и убедившись что всё правильно вывод не подобрали.
Препод что-то писал туда, но я просто забил и не знаю продолжения, вроде пробел или перенос строки непонятный был, который вообще не знаю как нужно было поставить и на каком основании.
Но это тёмные века были на питоне-2, я надеюсь сейчас вывод проверяется не по соответствии строке, а считывая и прогоняя через условия, так как часто в задачах много вариантов правильного вывода.
Аноним 26/12/22 Пнд 12:06:01 #199 №2554122 
>>2554119
любой пробел и в том задании учитывается.
у меня сначала вообще не проходило ибо изначально каждая ступень в конце имела лишний пробел, то есть
1 ' '
1 2 ' '
И так далее. Ошибка сходу. Как пробелы убрал из конца, то 5/6 стали проходить
Аноним 26/12/22 Пнд 12:09:03 #200 №2554124 
>>2554105
Хорошо, но как мне логику игры считать если я накапчевал все через строителя?
Аноним 26/12/22 Пнд 12:09:29 #201 №2554125 
>>2554122
Ну у тебя задача на строки. Хотя по идее корректность ёлочки пробелы в конце не нарушают, и оно их само должно игнорить в программе проверки, например просто нарезая на строки и проверяя что каждая следующая больше предыдущей или что там подразумевается.
Я про то, где нужно вывести список определённых элементов какой-то или ещё что-то такое, где хотя бы просто порядок вывода разный может быть.

А можно ссылку покликать, или там регаться нужно? Вдруг я мысли прочитаю, и напишу именно как создатель такой говнозадачи.
Аноним 26/12/22 Пнд 12:24:23 #202 №2554143 
>>2554125
https://new.contest.yandex.ru/41236/statistics
Не знаю, нужно быть в яндекске зареганным скорее всего. У меня автоматом из под моей учётки открылось
Аноним 26/12/22 Пнд 12:35:32 #203 №2554148 
image.png
maxresdefault.jpg
>>2554143
Лол, моё решение не принимало, потому что плюсы не по пепу. Ебать этот яндекс в сраку.
Аноним 26/12/22 Пнд 12:39:23 #204 №2554151 
>>2554124
Ну вон ты получил плеер муув у игрока, теперь накладывай его на состояние тамагочи, и выдавай результат. Потом запрашивай следующий ход.
Аноним 26/12/22 Пнд 12:40:48 #205 №2554155 
>>2554148
То есть не надо короткие строки вверх прицеплять. Ну хоть это.
Аноним 26/12/22 Пнд 12:43:40 #206 №2554159 
Screenshot40.jpg
>>2554148
Да, хрень полная, мой тоже прошёл, когда все ошибки по пеп исправил.
Вообще там задания для начинающих, поэтому не должно быть никаких серьёзных алгоритмов.
Аноним 26/12/22 Пнд 12:44:42 #207 №2554163 
>>2554155
Именно то, что придирались к pep-8 и спутало всё с самого начала.
Куею, сколько времени потратили.
Аноним 26/12/22 Пнд 12:46:00 #208 №2554165 
>>2554163
Проблема в примерах, а не в пеп8
Аноним 26/12/22 Пнд 12:49:01 #209 №2554169 
>>2554165
Ну тогда почему я взял свой костыльный код >>2554159
, просто удалил все костыли, хотя пару строчек ещё убрать можно, нажал ctrl+alt+l в пейчаре, отправил туда и тут же все тесты прошли, хотя до этого такой код даже 1 тест не проходил
Аноним 26/12/22 Пнд 12:52:32 #210 №2554174 
>>2554169
Твой код был правильный изначально. Если бы примеры были нормальные, то ты бы не сомневался в логике своей программы, а сразу бы подумал, что проблема в форматировании и
>нажал ctrl+alt+l в пейчаре

Ещё лучше было бы, если бы яндекс написал проблему, а не играл в угадайку, но с нормальными примерами былобы понятно, что проблема не в коде.
Аноним 26/12/22 Пнд 12:56:35 #211 №2554180 
>>2554143
Не компилируется, не могу решить.
В пучарме и консольке всё работает.
Аноним 26/12/22 Пнд 12:58:19 #212 №2554182 
>>2554180
Либо pep-8, либо твой код даёт лишние пробелы в конце строки либо лишний принт последней строкой.
Аноним 26/12/22 Пнд 13:02:29 #213 №2554189 
>>2554182
Это не ошибка в коде.
В строке вида c = a+b я могу поставить пробелы вокруг равенства, но буду специально удалять пробелы вокруг +. Это принципиальная позиция.

Стиль и оформления кода должны на уровне иде только быть.
По типу, у меня отступы стоят тройными пробелами. Я редактирую и сохраняю код как мне захочется, а когда его открывает другой программист, то он у себя видит с четверными или двойными пробелами, если у него проблемы с этим. То есть пусть лучше каждый видит код со своими настройками стиля, не надо эту чушь всем принудительно юзать. Иде достаточно давно самостоятельно могут всё это сделать.
Аноним 26/12/22 Пнд 13:04:25 #214 №2554192 
>>2554189
Я имею ввиду пробелы в outpute лишние
Не просто
1
А
1[ ] - лишний пробел, ты его не видишь, а задачник видит, можешь просто проверить в самом пейчаре нет ли лишних строк и пробелов в оутпуте
Аноним 26/12/22 Пнд 13:05:57 #215 №2554194 
>>2554151
Так игроку каждый раз новое имя придется вводить
Как нейм сохранить?
Аноним 26/12/22 Пнд 13:07:45 #216 №2554202 
>>2554194
>Так игроку каждый раз новое имя придется вводить
Почему новое? Пусть вводит то, с каким тамагочим работать собрался.

>Как нейм сохранить?
В тамагочем.
Аноним 26/12/22 Пнд 13:09:47 #217 №2554206 
>>2554192
Я понял, с этим всё хорошо. Он жалуется не на это, и даже не запускает мой код.

>>2554194
Ты игру делаешь? Я тоже хочу за сегодня игру за один день небольшую сделать чуть попозже, и наверное на питоне. Покажешь сегодня в полночь что получится?
Аноним 26/12/22 Пнд 13:12:00 #218 №2554212 
>>2554206
Если успею разобраться. Я нипанимаю как мне из директора сохранить имя введенного персонажа и обсчитывать только показатели
Аноним 26/12/22 Пнд 13:15:50 #219 №2554220 
>>2554202
Так а как сделать чтобы имя сохранялась, как заставить выводить новые показатели? Прастите за тупые вопросы, я нипанимаю куда гуглить
Аноним 26/12/22 Пнд 13:21:39 #220 №2554226 
Прикрутил на проекте celery для отложенных задач. Но как-то на общий созвон пришел высокопоставленный сенька и начал разглагольствовать что "celery говно надо было airflow накатывать, шо за нах ваще а?"
Мне было малость неудобно у него спросить "а че не так?" т.к. в айти меньше года а он лет 5 наверно.

Что такого плохого в селери что так охуенно делает airflow?
Аноним 26/12/22 Пнд 13:26:25 #221 №2554230 
Питон хуевый выбор для вката в айти в надежде найти работу, в чем я не прав? Лучше js + react больше шансов стать макакой, а питоний вкатун никому не нужен с его ебаной джангой, флаской или фастапи.
Аноним 26/12/22 Пнд 13:27:03 #222 №2554231 
>>2554226
Моднее. Понимать надо.
Аноним 26/12/22 Пнд 13:28:00 #223 №2554232 
>>2554230
а табличички на тво этом js можно крутить как на пансдасе?
Аноним 26/12/22 Пнд 13:28:19 #224 №2554233 
>>2554230
>js + react
Удачи соревноваться с тысячами малолетних вкатунов
Удачи быть первым в очереди на оптимизацию нейросетями
Удачи до конца дней ебаться с UI
Аноним 26/12/22 Пнд 13:29:21 #225 №2554235 
>>2554148
Лол. А что в моём >>2554093 коде не так, не подскажешь?
Аноним 26/12/22 Пнд 13:29:36 #226 №2554237 
>>2554232
Ты если в датасаенс вкатываешься, то не днарь нулевый и скорее всего образованный, иначе нахуй ты всрался?

можно, но не так удобно
Аноним 26/12/22 Пнд 13:30:37 #227 №2554240 
>>2554233
все тоже самое можно и про питон сказать, только UI замени на rest
про нейросети орнул
Аноним 26/12/22 Пнд 13:36:39 #228 №2554250 DELETED
>>2554220
Сохраняй куда хочешь, хоть в txt, хоть в csv, хоть в жсон.
Аноним 26/12/22 Пнд 13:37:23 #229 №2554253 
>>2554240
Из питона можно легко потом перекатиться в бекенд на го/шарпах если не довен, либо в датасаенс. Если ты пойдешь в жс, то путь тебе только во фронт на жс и все тут
Аноним 26/12/22 Пнд 13:40:39 #230 №2554257 
Темка такая:

В джанго-админке пользователь может нажать на кнопку "скачать файл" и некий файл сохранится ему на устройство. Проблема в том что файл этот лежит в удаленном S3 хранилище. Как правильно загрузить файл из S3 и потом передать его пользователю? Обычная подгрузка файлов у джанги идет из папки media автоматически, мне практически ничего настраивать не нужно было
Аноним 26/12/22 Пнд 13:41:06 #231 №2554261 DELETED
>>2554250
Можешь еще пиклом хуйнуть, наверное так легче.
Аноним 26/12/22 Пнд 13:41:13 #232 №2554263 
>>2554253
Зачем перекат, если и на твоем питухоне можно бек писать как и на js лол
>и все тут
Я скозал!11
Аноним 26/12/22 Пнд 13:43:59 #233 №2554267 
>>2554230
Питон норм язык для обучения программирования в первую очередь независимо от синтаксиса языка. После освоения питона можешь идти хоть в java, хоть в js, хоть с++ и потраченное время на питон не будет пустым.
Аноним 26/12/22 Пнд 13:44:05 #234 №2554268 
>>2554257
Зачем грузить? Отдавай сразу с3 ссылку. Там можно добавить какой-то параметр, чтобы форсился даунлоад, а не открывалось в браузере, погугли.
Аноним 26/12/22 Пнд 13:44:29 #235 №2554270 
>>2554257
Зачем грузить? Отдавай сразу с3 ссылку. Там можно добавить какой-то параметр, чтобы форсился даунлоад, а не открывалось в браузере, погугли.
Аноним 26/12/22 Пнд 13:46:58 #236 №2554273 
>>2554267
Вы все тут поехавшие школьники, вы нейросети блять, вы буквально разговариваете тезисами говорящих голов, продающих говнокурсы.
Оставим то что вы не в состоянии усвоить прочитанное, хуй с ним.
Но писать такую хуйню как перейти в язык нейм после языканейм полегче, время не потрачено. Ты долбоеб? Зачем учить что-то, чтобы потом перейти на нечно кардинально другое?
Аноним 26/12/22 Пнд 13:48:07 #237 №2554275 
>>2554263
>бек писать как и на js
Вперед искать вакансии в СНГ на нем.
Аноним 26/12/22 Пнд 13:49:14 #238 №2554276 
>>2554275
как и на питухоне вкатуну
Аноним 26/12/22 Пнд 13:59:48 #239 №2554284 
>>2554250
Спасибо за ответ. Думал над этим еще до того как здесь спрошу, мне кажется слишком много перезаписей будет. Я оказывается могу просто к созданому классу напрямую обращаться главное написать функцию которая возвращает только нужные мне показатели, блин мне нраица
Аноним 26/12/22 Пнд 13:59:52 #240 №2554285 
>>2554273
Ты в первую очередь учишься программировать и только после синтаксис языка.

Во первых, питон самый популярный язык сейчас, во вторых освоив его и научившись программировать на нём, но поняв, что ты хочешь заниматься в отрасли, где он не особо годиться, то без проблем освоишь новый синтаксис, потому что программировать ты уже умеешь.
Аноним 26/12/22 Пнд 14:03:31 #241 №2554287 
>>2554285
Ты долбоеб, что ты несешь?
>ишься программировать и только после синтаксис языка.

Я большей хуйни в жизни не читал, как ты, мразь тупоголовая, хочешь научиться писать обход дерева да и в принципе реализацию, не зная синтаксис языка? ебанат блять
Ты чмо ебаное. даже на ассемблере ты сначала учишь, что делают команды и только потом ты на нем пишешь. Ты сука тупая, которая не понимает что несет, пошел нахуй.
Аноним 26/12/22 Пнд 14:04:52 #242 №2554290 
Срыгните, пожалуйста, в мвп тред. Там определяйтесь, как лучше вкатываться, со знанием синтаксиса или без.
Аноним 26/12/22 Пнд 14:10:04 #243 №2554295 
>>2554287
Потому что навыки программирования это как навыки алгебры, они в целом универсальны, независимо от того на каком языке ты пишешь.

Зная алгоритмы, ты сможешь их реализиовать на любом языке после краткого изучения синтаксиса, не зная их, ты не сможешь нихуя, зная при этом синтаксис языка просто идеально.
Аноним 26/12/22 Пнд 14:26:59 #244 №2554314 
>>2554143
как там инпут принимать? через sys.stdin.read()?

могли бы уж функцию запилить как на чекио, вида
> def check(data):
> pass
Аноним 26/12/22 Пнд 14:30:32 #245 №2554320 DELETED
>>2554284
Погугли библиотеку pickle, с помощью нее можешь сохранять объекты целиком, а потом их читать без ебли с парсингом.
Аноним 26/12/22 Пнд 14:31:15 #246 №2554321 DELETED
>>2554314
Как и на всех контестах, одна строчка - один инпут.
Аноним 26/12/22 Пнд 14:33:23 #247 №2554326 
>>2554321

понял. он на пеп 8 ругался, "ответ неверен", пишет
вроде ЯНДЕКС, а такие говноделы, пиздец
Аноним 26/12/22 Пнд 14:36:13 #248 №2554329 
>>2554326
хотя, нет, в задаче 4 у меня всё было по пепу, без ругани. и всё равно "неверно", пишет
хотя всё верно. я заменил input на sys.stdin.read - сработало
Аноним 26/12/22 Пнд 14:41:12 #249 №2554335 
>>2554329

ааааа, ей промт в инпуте не понравился
"input(f'Number {i}: ')" - это неправильный код, а "input()" это правильный код, запомните, дети, учитесь у яндекса программированию
Аноним 26/12/22 Пнд 15:04:26 #250 №2554367 
>>2554335
Так у тебя i не определён, поди. Ты же его и хочешь получить.
Аноним 26/12/22 Пнд 15:08:22 #251 №2554385 
>>2554367
всё определено, напиши чего-нибудь в промт и тестировщик отвалится

короче, яндекс говном накормил. куча задач на работу с охуенно важной жизненно необходимой каждому программисту функцией input(), причем я заметил, что для всех задач нужно писать какой-то говнокод
Аноним 26/12/22 Пнд 15:49:17 #252 №2554472 
>>2554320
В лабе нельзя сторонне использовать, проверяющему лень устанавливать из пипинстала
Аноним 26/12/22 Пнд 16:00:02 #253 №2554496 DELETED
>>2554472
Пикл из стандартной библиотеки.
Аноним 26/12/22 Пнд 16:07:22 #254 №2554501 
WarpRift.jpg
>>2546424 (OP)
Привет, Анончики, подскажите плиз, я сам не могу найти.
Как сделать интерактивный график, что бы выбирать ряд данных в самом графике?
Например, у меня есть табличка с ввп по годам, в ней 193 страны, я хочу иметь возможность выбирать и накладывать на график ввп выбранных стран из выпадающего списка. Что бы на графике было отображено несколько стран. Типа Австрия, Венгрия, Франция, Германия.
Вот примерно так.
https://www.imf.org/external/datamapper/PCPIPCH@WEO/AUT/HUN/FRA/DEU
Спасибо.
Аноним 26/12/22 Пнд 16:16:49 #255 №2554512 
>>2554501
я имел ввиду конечно же просто название библиотеки написать
Аноним 26/12/22 Пнд 16:27:53 #256 №2554529 
>>2554501
Навошта табе Пітон? Гэта ўсё робіцца статычным HTML + JS на боку кліента.
Аноним 26/12/22 Пнд 16:31:16 #257 №2554535 
>>2554529
потому что я во-первых тупенький, а во-вторых не пограмист
в-третьих, худо что ты не знаешь(
Аноним 26/12/22 Пнд 16:33:30 #258 №2554542 
>>2554535
хадзі ў JS стужку, спытай іх пра блевацеку каб прагожы графік маляваць
Аноним 26/12/22 Пнд 17:14:40 #259 №2554589 
>>2554501

bokeh (возможно)
Аноним 26/12/22 Пнд 17:36:41 #260 №2554603 
>>2554230
оооо как же джуна вкатывальщика порвало.
ты не прав вообще во всем в чем только можно было бы быть неправым
Аноним 26/12/22 Пнд 17:37:14 #261 №2554604 
>>2554276
тонна вакух
Аноним 26/12/22 Пнд 17:45:28 #262 №2554615 
>>2554542
кинул репорт
Аноним 26/12/22 Пнд 18:51:14 #263 №2554699 
Аноны. Я ручная макака, но вот какая ситуация: подлетел возможный вариант попытаться вкатиться в относительно свежий проект в компании в автотостеры. Посему вопрос - за сколько минимум времени можно хоть как-то вменяемо выучить питон чтобы тупо появилась база в голове?
Аноним 26/12/22 Пнд 20:20:03 #264 №2554793 
>>2554058
Атбой, оказывается в функцию можно передавать все что угодно, мне нужно было просто кошку передавать дальше куда хочу
Аноним 26/12/22 Пнд 20:53:15 #265 №2554830 
>>2554699
Можно за месяц. Смотря до какого уровня.
Аноним 26/12/22 Пнд 21:20:08 #266 №2554870 
>>2554589
спасибо, помогло, надо было гуглить со словом чекбокс
такое есть и в матплотлибе оказывается
Аноним 27/12/22 Втр 00:49:25 #267 №2555053 
16257140064110.png
В каких из множества книг про Python есть краткое предисловие про вообще основы программирования? Ну чтобы не от 0 до питона, а чтобы от -1 до питона.

Я не из тикток-поколения, но не против посмотреть видео-курс, только чтобы это была не пиратская запись с онлайн-курса, где половина видео это вода, а конкретный видеогайд. Может кто-нибудь такое посоветовать с рутрекера или откуда-нибудь еще?
Аноним 27/12/22 Втр 00:52:17 #268 №2555056 
>>2555053
Английский знаешь? Если нет, то учи его сначала, потом приходи.
Аноним 27/12/22 Втр 01:05:20 #269 №2555064 
>>2555056
Знаю, но самое начало лучше на русском бы, хоть в каком переводе.
Аноним 27/12/22 Втр 01:06:25 #270 №2555065 
>>2555064
Ну я не знаю, какие тайтлы переводили и как они называются, не слежу. Может кто посоветует.
Аноним 27/12/22 Втр 01:31:10 #271 №2555075 
[int(i) for i in input().split()] генерируем числа в списке пока не нажмём энтер. а можно как-нибудь сгенерировать так матрицу? т.е. чтобы строки плодились, когда пользователь нажмет энтер, не указывая явно количество строк.
Аноним 27/12/22 Втр 01:36:27 #272 №2555076 
>>2555075
sys.stdin.readlines
Аноним 27/12/22 Втр 01:40:44 #273 №2555077 
>>2555076
мы такого еще не проходили
Аноним 27/12/22 Втр 01:42:32 #274 №2555078 
>>2555077
Это как file.readlines, просто sys.stdin это файловый хендл ввода.
Аноним 27/12/22 Втр 04:43:57 #275 №2555119 
1672105543324.jpg
>>2555075
Делаешь цикл пока input() не вернет пустую строку
В цикле добавляешь строки в матрицу, по одной за раз
Аноним 27/12/22 Втр 06:44:14 #276 №2555136 
>>2555119
спасибо, это как раз то, что нужно было
Аноним 27/12/22 Втр 07:48:32 #277 №2555141 
>>2555119
мне надо в матрице сделать математические операции над элементами. ок, я создаю копию нашего списка, провожу операции над элементами нового списка. но почему когда я меняю элемент нового списка, он ведет себя как-то странно? в данном случае, если введена одна строка и допустим я увеливаю первый элемент в n раз, остальные тоже увеличиваются в n раз лол. поясни нубу, как это пофиксить?
говнокод: https://goonlinetools.com/snapshot/code/#w4s3brk2l39mmjtxb46f
Аноним 27/12/22 Втр 08:50:52 #278 №2555158 
>>2555141
вроде фиксится, если импортировать нампай и использовать а как массив от х
Аноним 27/12/22 Втр 09:06:00 #279 №2555162 
>>2555053
https://stepik.org/
Аноним 27/12/22 Втр 09:15:54 #280 №2555163 
>>2555119
Нихуя ты морж, а я всё ленюсь поставить нужную версию.
>>2555141
Не вникал, но скорее всего надо deepcopy.
Аноним 27/12/22 Втр 12:26:19 #281 №2555286 
>>2555053

CS50x рекомендую:
https://www.edx.org/course/introduction-computer-science-harvardx-cs50x

А через годик Programming Languages
https://www.coursera.org/learn/programming-languages
https://www.coursera.org/learn/programming-languages-part-b

Разумеется суть в проработке домашки, а не тупо пырить в экран и "учиться".
Аноним 27/12/22 Втр 12:32:56 #282 №2555301 
>>2555141
> копию нашего списка
а надо было делать копию каждой строки
Аноним 27/12/22 Втр 12:42:08 #283 №2555304 
>>2555301
как >>2555163 советовал? да похуй, через создание массива тоже работает
Аноним 27/12/22 Втр 12:54:34 #284 №2555307 
image.png
image.png
>>2555304
да. копу делает шэллоу копи, и создает тебе другой лист с новым указателем, но сами элементы внутри продолжают указывать на старые объекты. деепкопу также рекурсивно копирует объекты внутри
Аноним 27/12/22 Втр 14:50:57 #285 №2555416 
>>2555053
На степике курсы по питону. Хотя не понятно, что ты от основ программирования хочешь. Что бы тебя прям сразу ввели в двоичный код, который комп и понимает только или просто не только дали синтаксис языка, но ещё и заданиями по каждому моменту подрючили, то это степик.

Если первое, то это уже после освоения языка на более менее нормальном уровне стоит лезть.
Аноним 27/12/22 Втр 15:14:26 #286 №2555452 
>>2555416
У меня такое впечатление, что все эти хотители разобраться как начинают лезть в дебри от простейшей хуйни, которую ОТ НИХ СКРЫВАЮТ, так и ловят стек оверфлоу, лул.
Аноним 27/12/22 Втр 18:44:25 #287 №2555712 
>>2546424 (OP)
Какие книги посоветуете по мачин лернингс (чтобы там не просто код на питоне давали) А чтоб еще описывали алгоритмы со всем матаном. Чтоб материал еще давался в соответствие с учебником статистики.
Аноним 27/12/22 Втр 18:49:24 #288 №2555722 
>>2555712
Jeremy Watt — «Machine Learning Refined»
John K. Kruschke — «Doing Bayesian Data Analysis»
Sarah Boslaugh, Paul Watters — «Statistics in a Nutshell»
Charles M. Grinstead, J. Laurie Snell — «Introduction to Probability»
Sheldon M. Ross — «Introduction to Probability and Statistics»
Аноним 27/12/22 Втр 18:50:50 #289 №2555725 
>>2555712
Себастьяна Рашку читай. Не знаю, годная ли книга, но фамилия смищная.
Аноним 27/12/22 Втр 18:54:26 #290 №2555733 
>>2555722
Ты по этим книгам что-то научился делать?
Аноним 27/12/22 Втр 19:02:37 #291 №2555746 
Captured1.png
>>2555733
Предпоследняя помогла сдать статистику в универе (там и теория игр есть). Остальное не пригодилось.
Аноним 28/12/22 Срд 08:19:58 #292 №2556056 
>>2555053
Просто в ютубе в поиске набираешь «основы питон» и смотришь.
Если нужно совсем уж с нуля.
Аноним 28/12/22 Срд 12:05:20 #293 №2556145 
>>2556056
на степике тот же ютуб, только гарантированно в нормальной последовательности и с заданиями
Аноним 28/12/22 Срд 13:32:49 #294 №2556226 
>>2546424 (OP)
Я чет не понял. Вот мы пишем хуйню вроде :

counter = 0
while counter < 10_000_000:
----counter += 1

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

time.sleep(1)
ИЛИ
await asyncio.sleep(1)

И CPU будто вообще не забивается, но камон, как этот sleep вообще крутится? Система не может прост "ничего не делать" секунду, она точно так же бегает в бесконечном цикле и ждет когда из него можно выйти. Шо за магия?
Аноним 28/12/22 Срд 13:35:24 #295 №2556232 
>>2556226
У тебя программа в вакууме работает или поверх ос?
Что такое проце знаешь? А поток исполнения?
А зачем в ос нужны планировщики задач?
А что такое прерывания?
А как происходит переключение процессов?

Не знаешь? Иди изучай.
Аноним 28/12/22 Срд 13:36:13 #296 №2556237 
>>2556232
Ты хоть в курсе, пидор, с кем базаришь?
Аноним 28/12/22 Срд 13:38:20 #297 №2556240 
>>2556237
Да. Ты человек с ограниченными умственными возможностями. Потому я тебе и перечислил все темы, которые тебе нужно изучить.
Аноним 28/12/22 Срд 13:43:51 #298 №2556247 
>>2556226
https://www.youtube.com/watch?v=g_koa00MBLg
Аноним 28/12/22 Срд 13:44:42 #299 №2556248 
>>2556226
30 лет назад так и было
Аноним 28/12/22 Срд 14:09:00 #300 №2556265 
>>2556226
>Система не может прост "ничего не делать" секунду,
Может
https://ru.wikipedia.org/wiki/NOP

Кроме того, он может спать
https://www.felixcloutier.com/x86/mwait
Аноним 28/12/22 Срд 15:04:53 #301 №2556307 
BaseSettings pydantic-а подтягивают значение ALLOWED_HOSTS из переменных среды. Это (очевидно) строка где хосты разделены пробелом. Но как мне получить его в виде списка строк? Пытался оставить как есть, он при подгрузке мне пишет: error parsing env var "allowed_hosts"
Аноним 28/12/22 Срд 15:27:30 #302 №2556352 
image.png
>>2556307
Вот решение
Как всегда через жопу
Аноним 28/12/22 Срд 15:41:19 #303 №2556363 
>>2556307
>>2556352
Скорее ты сам изначально сделал через жопу, а потом сам же и решил. Если оно хочет жсон, то может и должен быть жсон, а не пробелы?
Аноним 28/12/22 Срд 15:50:16 #304 №2556372 
>>2556363
Ты не задумывался что возможно иногда не в твоих силах изменить формирование окружения?
Аноним 28/12/22 Срд 16:02:30 #305 №2556382 
>>2556372
Ну прояви волю, что ты как баба.
Аноним 28/12/22 Срд 16:29:31 #306 №2556405 
>>2556382
Мамина корзина пытается быть Грозным Сильным Мужигом. Вот это зрелище
Аноним 28/12/22 Срд 21:48:42 #307 №2556764 
>>2556405
нах так прикладывать
Аноним 28/12/22 Срд 22:55:06 #308 №2556827 
>>2556145
Ну если этот ваш степик бесплатный, можно и его.

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

Большинство курсов и прочего платного видео какраз для вот таких зелёных. Там тупо озвучивают туториал, что можно и ютубе забесплатно послушать-посмотреть.
Аноним 29/12/22 Чтв 03:46:17 #309 №2556940 
image.png
image.png
А почему не выдает ошибку? Разве возможно чтоб несколько процессов одновременно обращались к одной и той же переменной? Или threading - это фейковый мультипроцессинг?
Аноним 29/12/22 Чтв 03:48:52 #310 №2556943 
>>2556940
Бля, я только сейчас заметил расхождение по цифрам. Какого хуя первый вызывается в 2 раза чаще, чем третий?
Аноним 29/12/22 Чтв 03:50:14 #311 №2556944 
image.png
>>2556940
Охуенная многопоточность...
Аноним 29/12/22 Чтв 04:30:19 #312 №2556953 
>>2556944
>>2556940
Не блытай multiprocessing і multithreading. Thread - нітка, працуе на адным ядры.
Аноним 29/12/22 Чтв 05:35:44 #313 №2556964 
>>2556940
Гугли python GIL.
Аноним 29/12/22 Чтв 06:00:35 #314 №2556968 
>>2556827
курсы для начинающих обычно бесплатные. потом от тех же людей и компаний продолжение в ООП и прочие платное
Аноним 29/12/22 Чтв 06:15:08 #315 №2556970 
https://stepik.org/course/58852/syllabus
https://stepik.org/course/63085/syllabus
С чего-нить из этого стоит начинать.
Аноним 29/12/22 Чтв 20:48:31 #316 №2557634 
>>2556970
Какой-то странный сайт. Что значит «поступить». Это к чему-то обязывает? Какие-то личные данные нужно вводить? Или можно фейко-аноном поучиться?

Но в целом, если бесплатно, то именно то что нужно. Основы основ. Основы во всех учебниках и видео одинаковые, подозреваю.
Аноним 29/12/22 Чтв 21:54:06 #317 №2557697 
Сап, аноны.
Кто-нибудь сидит на py.checkio.org?
Нужно посмотреть решение одной задачи.
С меня как всегда.
Аноним 29/12/22 Чтв 22:12:30 #318 №2557706 
Прошёл курс на степике по питону, меня теперь возьмут куда-нибудь? Алсо до этого в вузе только плюса проходил и ебланил, но чет питон вообще легким показался.
Аноним 29/12/22 Чтв 22:50:20 #319 №2557729 
>>2556226
sleep сам по себе не крутится. Питон дает ОС сигнал, что процесс надо перестать планировать (запускать на ЦП) в течение 1 секунды, планировщик ОС перестает планировать этот процесс. Если есть какие-то другие пользовательские процессы, то планировщик планирует их. Если все пользовательские процессы спят (ждут time.sleep или IO), то ОС планирует процесс №0. Процесс №0 внутри себя выполняет программу, содержащую бесконечный цикл (опционально с NOP внутри). Вот только выполнять NOP это не совсем "ничего не делать", если его запустить в бесконечном цикле в пользовательском процессоре, то вполне себе начнет выжираться 100% времени и электроэнергии, то есть процессор "забивается", кулеры шумят итп. Но фишка процесса №0 в том, что при его планировании ОС еще и автоматически командует ЦПУ снизить энергопотребление до минимума. Снижаются рабочая частоты, отключаются некоторые блоки итд. ЦПУ умеет входить и выходить из этого режима очень быстро. Именно благодаря этому и создается ощущение, что процессор "без нагрузки" находится в покое.

Это самая база, в реальности все сложнее, конечно. Отсюда можешь начать копать. Но остальные ЧСВшные аноны тебе вообще какую-то хуйню ответили.
Аноним 29/12/22 Чтв 22:52:15 #320 №2557733 
>>2557729
>если его запустить в бесконечном цикле в пользовательском процессе
>Снижаются рабочие частоты
фикс
Аноним 30/12/22 Птн 01:55:14 #321 №2557807 
Хауди Хо друзья!
Вот освоил основной синтаксис, потыкался в джанго, попробовал в фаст апи и вот попал в тупик:
в джанго все как конструктор лего, вот модельки вот вьюшки, вот темплейт папочка все разложил и нате сайтик
а в фастапи я чет нипонял нихуя, вот запустил админку по документации и че с ней делать? куда хтмлки привязывать?
есть может литература какая или видосики где можно грокнуть эту тему
Аноним 30/12/22 Птн 07:10:17 #322 №2557843 
>>2557807
че такое джанго, фастапи?

мимо тоже освоил синтаксис, но из странных слов знаю только нампай и пандас
Аноним 30/12/22 Птн 07:34:59 #323 №2557845 
>>2557807
fastapi какбы намекае, для чего оно - делать ручки для морд на фронте. Джанга же полновесная хуйня.
Аноним 30/12/22 Птн 07:41:36 #324 №2557847 
У меня сложилось впечатление, что в джанге шаг влево-вправо от задуманных разрабами юзкейсов карается многочасовой еблёй. Оно справедливо или я ошибаюсь?
Аноним 30/12/22 Птн 07:43:40 #325 №2557848 
>>2557847
Это для любого подобного хрумворка так, хочешь изъебств - бери что-то легковесное типа фласка и велосипедь поверху него.
Аноним 30/12/22 Птн 10:27:15 #326 №2557905 
>>2557634
Потому что эти типа курс после прохождения которого тебе дадут сертификат. Его, конечно, можно распечатать и подтереться.
Аноним 30/12/22 Птн 12:43:59 #327 №2558009 
изображение.png
choice относится к словарю или к принт?
Аноним 30/12/22 Птн 12:51:04 #328 №2558014 
>>2558009
да
Аноним 30/12/22 Птн 12:56:52 #329 №2558018 
>>2558014
Пизда, уебок. Ответь нормально, не говнись, чмошник
Аноним 30/12/22 Птн 13:07:13 #330 №2558027 
изображение.png
>>2558009
кажись сам понял
Аноним 30/12/22 Птн 13:26:11 #331 №2558044 
>>2558009
Уже матч-кейс добавили, зачем все это?
Аноним 30/12/22 Птн 13:49:38 #332 №2558065 
>>2558044
Не трави нуба, принт со скобками уже хорошо
Аноним 30/12/22 Птн 14:13:15 #333 №2558080 
>>2557807
а попробовать заглянуть в доку по фаст api была не судьба?
там все описано и как рендерить хтмл из темплейтов и как mcv заебенить
Аноним 30/12/22 Птн 14:16:39 #334 №2558082 
>>2558009
чиво блять?
ты сам то понимаешь что этот код делает?
скобочками все обозначено что к чему относится.
ЗЫ нахуя ты эту древную залупу читаешь
Аноним 30/12/22 Птн 16:11:52 #335 №2558170 
>>2558082
А что надо читать?
Аноним 30/12/22 Птн 19:29:28 #336 №2558340 
>>2558027
че такое __name__? уже не первый раз встречаю
Аноним 30/12/22 Птн 20:13:22 #337 №2558398 
>>2554273
>вы буквально разговариваете тезисами говорящих голов, продающих говнокурсы.

С языка снял. Так и не понял нахуя выбирать первым языком питон.

Дата саенс, нейросети - кому нахуй сдался вкатун
Джанго - одна единственная хуйня, которую все равно надо изучить+html+css

Так легче сразу js учить же.

Объясните нахуй нужен этот питон?
Аноним 30/12/22 Птн 21:29:47 #338 №2558521 
>>2554295
>они в целом универсальны, независимо от того на каком языке ты пишешь
Я спрашивал в голенг треде про аналог yeild и в целом генераторах для итерации линкед листа, в итоге выяснилось, что там нихуя подобного нет и в целом питон предлагает другой уровень выразительности и там нужно ебошить классические структуры как в сишке, да и в целом есть очень много вещей, которые отличаются от того что есть в питоне и его изучение гораздо больнее, чем если бы я голенг с нуля учил и привыкал к его концепциям.
Аноним 30/12/22 Птн 22:48:05 #339 №2558623 
>>2558340
Это магическая переменная в которой имя текущего модуля.
Если модуль загружен через import из другого модуля -- это будет имя файла.
Если модуль загружен интерпретатором (то есть например в командной строке написали python my_program.py) то __name__ будет 'main'.
Аноним 30/12/22 Птн 23:14:02 #340 №2558648 
>>2558521
Там самое близкое к yield-генераторам это каналы.
Одна корутина идет по списку и пишет в канал -- это генератор. Другая читает из канала.
Если канал без буфера то получится точно тот же порядок операций как в питоне
Аноним 31/12/22 Суб 01:53:24 #341 №2558796 
>>2558648
я тебя там покрывал хуями, и тут еще покрою:
нет никакого аналога yield в голанге!
Этот язык устроен иначе чем питон.
Аноним 31/12/22 Суб 03:16:13 #342 №2558822 
>>2558796
пиздец ты необучаемый
Аноним 31/12/22 Суб 08:57:33 #343 №2558884 
>>2558521
Разумеется различия в языках есть и некоторые вещи не реализуемы на других или с костылями и не так эффективно.
Но ты уже понимаешь, что тебе нужно, какой результат, а уж не долго разобраться какими другими инструментами можно его достичь.
Аноним 31/12/22 Суб 09:24:11 #344 №2558889 
>>2558884
Ну а если способ достижения нужных результатов крайне неэффективный для твоих проектов, то тут уже вопрос а зачем ты пользуешься данным языком для них, меняй его.
Аноним 31/12/22 Суб 10:33:23 #345 №2558912 
>>2558884
Так речь шла о питоне как о языке для обучения, быстрый вкат происходит только за счёт того, что многие концепции, которые юзаются в программировании опускаются, типа указателей и размера типов данных, из-чего при перекате в другие языки или попытке эффективно писать программы начинается бугурт.
Единственное что в языке выгодно отличается это то, что ты можешь постигать языковые концепции максимально последовательно и новичкам не нужно писать магические private static void и include something.h которые в самом начале непонятно для чего нужны во время написания циклов и хеллоу ворлда.
Аноним 31/12/22 Суб 11:26:43 #346 №2558932 
>>2558912
Когда ты пишешь на питоне, ты можешь мыслить высокими категориями, на других языках же размениваешься на ерунду.

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

У тебя в коробке конструкции вроде словарей. Ты можешь делать операции вида
if element in some_list
(список, словарь, множество), на других языках обычно совсем-совсем не так лаконично

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

Дохера всего на самом деле.

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

Ты можешь просто реально программировать почти всё, что угодно. Не всегда эффективно, конечно.
Аноним 31/12/22 Суб 11:28:01 #347 №2558933 
>>2558912
Ну на питоне куда проще писать полный говнокод, когда вывод одной строки может потратить несколько гигабайт оперативки это да, но в конечном счёте, если ты хочешь успешно программировать на питоне тебе это всё равно нужно знать и нормальные курсы обычно на всё это указывают.

Ты должен знать, что происходит внутри питона. Поэтому при переходе на другой язык более менее нормально кодера бугурта быть не должно.
Аноним 31/12/22 Суб 11:32:26 #348 №2558936 
>>2558933
>Ну на питоне куда проще писать полный говнокод, когда вывод одной строки может потратить несколько гигабайт оперативки это да
Не очень представляю, как ты несколько гигабайт можешь спустить. На других языках писать говнокод не сложнее, скорее проще. Понимать нужно любой язык. Иначе ты будет по байту нарачивать строку, каждый раз реаллоцируя массив по неё, например.
Аноним 31/12/22 Суб 11:48:08 #349 №2558946 
>>2558936
Да это я, конечно, утрировал. Но пайфон из-за своей гибкости именно позволяет навертеть много чего, если ты не в курсах, что там под капотом, а просто кратко выучил синтаксис.
Аноним 31/12/22 Суб 12:04:10 #350 №2558950 
>>2558932
>на других языках же размениваешься на ерунду
Если у тебя небольшая нагрузка, то да, это можно назвать ерундой, но что бы писать на питоне эффективно нужно знать кишочки и концепции, которые в других языках постигаются во время базового обучения. Например, недавно возникала проблема с жором памяти у одинаквых питонячьих строк, которые по дефолту не интернировались и которые оказывается, жрут по 49 байт минимум даже если там ничего нет. В языке с указателями я бы даже не задумывался об этом и сразу запилил необходимую структуру, но в питоне об узнаешь только когда припрет и мало в каких учебниках или курсах такая тема обсуждается.
Аноним 31/12/22 Суб 12:43:16 #351 №2558970 
>>2558950
>нужно знать кишочки и концепции, которые в других языках постигаются во время базового обучения
Практика показывает, что нет. Страдает и базовое обучение, концепции, и понимание кишочков.

>>2558950
>Например, недавно возникала проблема с жором памяти у одинаквых питонячьих строк, которые по дефолту не интернировались и которые оказывается, жрут по 49 байт минимум даже если там ничего нет. В языке с указателями я бы даже не задумывался об этом
Вот именно что не задумываешься. А попробуй задуматься, сколько реально потребляется памяти при
malloc(1)
например. Подсказка: тоже далеко не 1 байт. И даже не 4-8.
Аноним 31/12/22 Суб 13:30:38 #352 №2558992 
>>2558170
современные книги
Аноним 31/12/22 Суб 13:51:47 #353 №2559014 
>>2558992
зачем вообще книги когда учишь язык когда есть божественные БЕСПЛАТНЫЕ курсы на степике, там тебе все рассказывают и сразу закрепляют материал заставляя вбить код ручками
Аноним 31/12/22 Суб 14:08:45 #354 №2559029 
>>2556372
ахаха, это галерные проблемы гребцов на забугорные помойки.
Скидывают всякую хуевую работу и технический долг на аутсорс. Но платят больше, да.

В продуктовой конторе ты все можешь изменить.
Аноним 31/12/22 Суб 14:12:33 #355 №2559033 
>>2558932
>Например, в питоне ты легко работаешь с юникод-строками не задумываясь, а на куче других языков ты страдаешь.
ага. ты просто не был тут во время python2.
Аноним 31/12/22 Суб 14:30:32 #356 №2559054 
>>2559033
u"я был тут, " + u"честное слово"
Аноним 31/12/22 Суб 18:06:25 #357 №2559315 
>>2558992
Книга 2019 года уже несовременная? Что там сильно изменились основы за 3-4 года?
Аноним 31/12/22 Суб 22:39:28 #358 №2559643 
>>2559315
курсы на степике смотри. они лучше, потому что там есть задания нормальные.

В самой книге 2019 большой проблемы нет, обновления есть, но их быстро наверстать, но просто это не так эффективно уже
Аноним 01/01/23 Вск 18:24:50 #359 №2560244 
>>2559014
курсы на степике советуют недавние джуны. глупые и зеленые.
Аноним 01/01/23 Вск 20:41:38 #360 №2560357 
Господа, подскажите пожалуйста, возможно ли теоретически сделать игру подобную darkest dungeon на pygame?
Аноним 01/01/23 Вск 21:18:31 #361 №2560395 
>>2560357
Можно, но учти:
1) это будет на порядок сложнее, чем на движке
2) это будет очень медленно работать. в 4к будет 30 фпс на йоба процессоре
3) вся твоя игра считается и рендерится на одном потоке цпу
4) всякие полноэкранные эффекты, блум, транспаренси, постпроцесс - забудь. твоя игра будет выглядеть так, будто её сделали в 25 лет назад!
Аноним 02/01/23 Пнд 04:38:07 #362 №2560635 
>>2560244
лутца заучил уже, синьрита?
Аноним 02/01/23 Пнд 06:37:09 #363 №2560649 
>>2560357
В играх решает контент, движок на котором он будет крутится важен чуть меньше. В питоне есть подводные вроде однопоточки и общей тормознутости, но если не делать ААА-йобу, то для нетребовательного 2д вполне хватит.
Аноним 02/01/23 Пнд 17:27:08 #364 №2561019 
>>2558521
Закинул 200к рублей. Теперь каждый день бесплатно пью колу
Аноним 02/01/23 Пнд 17:27:43 #365 №2561020 
>>2561019
промазал
Аноним 02/01/23 Пнд 18:40:14 #366 №2561092 
image.png
image.png
как можно оптимизировать код? (валю несколько тестов по времени), желательно чтобы помогли улучшить этот алгоритм, а не придумали новый
Аноним 02/01/23 Пнд 18:42:54 #367 №2561093 
>>2561092
Спроси у gpt бота, хех
Аноним 02/01/23 Пнд 19:59:31 #368 №2561147 
>>2560395
> это будет на порядок сложнее, чем на движке
Но я вот читал что крутые программисты делают костяк на pygame, смотрят как все это примерно будет выглядеть, а потом переписывают на другом движке
Аноним 02/01/23 Пнд 20:30:02 #369 №2561177 
>>2561092
Выкинуть нахер и придумать новое. Тупой перебор тут просто не пройдёт.
Аноним 02/01/23 Пнд 22:45:59 #370 №2561259 
>>2561092
У тебя три цикла вставлены один в другой, вот они и тормозят. Тебе что нужно? Найти самый большой квадрат. Значит как только находишь 4 - сразу делаешь break. Иначе по другому алгоритму ищешь суммы других квадратов и выводишь max. Попробуй сделать хотя бы 2 цикла
Аноним 03/01/23 Втр 01:06:54 #371 №2561357 
>>2561259
благодарю за совет, я сначала поменял поиск start на бинарный и сократил время работы примерно с 11 секунд до 5, потом еще потужился и применил префиксные суммы(в данном случае постфиксные, но не уверен что такой термин есть) по итогу 300*300 матрицу за 700 мс обрабатывает
Аноним 03/01/23 Втр 05:57:04 #372 №2561448 
>>2561092
Наверно в каждой строке надо найти подстроку максимальной длины(но не единичной), потом найти минимум из пересечений получившихся отрезков.

В твоем примере отрезки длин 0, 3, 5, 0. Пересекаем последовательно ненулевые. Пересечение 3 и 5 дает 3, но до правильного квадрата надо еще один этаж, но следующий идет 0, значит ограничиваемся максимумом стороной 2 и площадь 4.

Яб как-то так рассуждал. Сама задача на подстроки и дерево пересечений из них.
Аноним 03/01/23 Втр 11:01:57 #373 №2561533 
Screenshot2023-01-03-15-00-43-088com.opera.browser.jpg
Питон в России все?
Аноним 03/01/23 Втр 11:39:31 #374 №2561552 
>>2561533
чот с фильтрами покрути, а вообще видимо все:
джуновских вакух тупа нет, на около джуновских под 1к откликов
Аноним 03/01/23 Втр 11:56:51 #375 №2561569 
>>2561533
Да, выкатывайся
Аноним 03/01/23 Втр 12:45:49 #376 №2561632 
>>2546785
У тебя после выполнения запроса в response (ну или в driver в исходном твоем примере тут >>2546775 ) и так будет доступен User-Agent, для этого не надо парсить json.
Аноним 03/01/23 Втр 13:16:28 #377 №2561649 
photo2023-01-0313-14-22.jpg
>>2561533
сам расстроился, только начал изучать питончик. ну может через год ситуация изменится, как раз к тому времени подтяну знания. джуновских вакансий в дс2 чуть меньше 40, но откликов там много. вот одна из них
Аноним 03/01/23 Втр 13:19:58 #378 №2561654 
Аноны, кто-нибудь проходил курс от скайпро? нашел его слив, и все вроде ок, но там для выполнения дз 7 урока нужен json файл с данными игры (а-ля "Своя игра"), а он походу доступен только в личном кабинете
Аноним 03/01/23 Втр 13:45:32 #379 №2561668 
>>2561649
1400 джунов на 1 место, я ебал.
Аноним 03/01/23 Втр 14:08:23 #380 №2561682 
>>2561668
создай сто учёток с резюме
Аноним 03/01/23 Втр 14:22:38 #381 №2561694 
>>2561682
И как это поможет?
Аноним 03/01/23 Втр 14:31:11 #382 №2561705 
>>2561694
Увеличиваешь шанс на отклик в 100 раз
Аноним 03/01/23 Втр 15:36:03 #383 №2561777 
Screenshot50.jpg
Screenshot51.jpg
Начал я проходить алгоритмы и в первом же примере автор как-то дико всё перемудрил, использовал ещё импортируемые библиотеки.

Это типа такая версия индуского кода, что бы круче и сложнее выглядело?

Аноним 03/01/23 Втр 15:37:39 #384 №2561779 
>>2561448
Я через префиксные суммы решал, чтобы быстро проверять, заполнен ли квадрат только единицами.
Аноним 03/01/23 Втр 15:43:29 #385 №2561787 
>>2561777
Бля, чё за пиздец слева
Это говно ещё и работает медленно из-за постоянных вычислений минимума и максимума в списке

Справа непонятно, зачем else, если в теле цикла break нет
Аноним 03/01/23 Втр 15:48:42 #386 №2561790 
>>2561787
Да, видно, что подгружается ответ ещё не сразу же.

А мой вариант, ну можно и без else, но это я так предпочитаю писать, что бы понятнее было, что это именно конец цикла, а не отдельная операция от цикла.
Аноним 03/01/23 Втр 15:54:34 #387 №2561796 
>>2561777
Там реализовано строго по описанию, с колонками и хуенками, ты просто вычислил по сути алгоритма.
Аноним 03/01/23 Втр 15:56:12 #388 №2561797 
>>2561796
Алсо, этот подход называется naive, потом улучшают.
Аноним 03/01/23 Втр 16:00:14 #389 №2561801 
Screenshot52.jpg
>>2561797
Понятно. Тут и я свой дальше улучшил, поняв, что список вообще не нужен. Ну полистал дальше, примеры нормальные там, позанимаюсь по этой книге, думаю хватит для начала.
Аноним 03/01/23 Втр 16:08:16 #390 №2561816 
Продублирую: Есть ли бесплатное решение для распознавания русскоязычного текста лучше, чем tesseract? Так уж вышло, что нужна распознавалка текста, и пока кроме тессаракта ничего лучше найти не могу найти. Есть nanonets, который прям 10/10, но там платно. А тессаракт плывёт на обычных фото. Есть вообще варианты, на что поменять его? Сам пробовал его и Easyocr, но последний прям вообще никакой.
Аноним 03/01/23 Втр 16:13:15 #391 №2561824 
>>2561816
Он и не для фото, он для сканов, грубо говоря. Т.е. должен быть препроцессеный контрастный различимый текст, посторонний шум сольет его распознавание почти до нуля.
Аноним 03/01/23 Втр 16:17:29 #392 №2561826 
>>2561816
Ну так возьми tesseract и дообучи.

Это не проблема программиста
Аноним 03/01/23 Втр 16:19:10 #393 №2561827 
>>2561824
Понял, а есть что для фото? Просто вообще ничего не могу найти. За ответ спасибо.
Аноним 03/01/23 Втр 19:11:55 #394 №2561987 
>>2561777
От pandas там единственная польза что print(half_double) напечатает все промежуточные значения красивенько.
Иногда бывает полезно.
Аноним 03/01/23 Втр 20:08:28 #395 №2562062 DELETED
>>2561777
Какой же говнокодище на левой, это пиздец.
Аноним 03/01/23 Втр 20:34:51 #396 №2562113 
Блин, я точно недавно где-то встречал решение, как декорарировать рекурсивную функцию так, что бы декоратор вызывался только один раз, но забыл и что то гугл не особо помогает. Может кто может кратко подсказать?
Аноним 03/01/23 Втр 20:51:26 #397 №2562138 
>>2562113
Очевидный способ это спрятать рекурсию во внутреннюю функцию.
Аноним 03/01/23 Втр 20:54:01 #398 №2562141 
1672768663732.jpg
>>2562138
как-то так
Аноним 03/01/23 Втр 22:12:47 #399 №2562242 
>>2562138
Да, это работает, хотя там вроде какие то дополнительные настройки у самого декоратора были. Но хз, может так и было
Ну буду просто этим вариантом пользоваться
Аноним 04/01/23 Срд 02:15:04 #400 №2562393 
>>2561649
неплохо джунов привалило
Аноним 04/01/23 Срд 02:16:41 #401 №2562394 
>>2560635
да.
Аноним 04/01/23 Срд 03:27:48 #402 №2562411 
>>2562113
декоратор всегда 1 раз вызывается

> @декор
> деф фу()...

это то же самое что:

> деф фу()...
> фу = декор(фу)


как видишь, декор() вызывается 1 раз только при импорте модуля
Аноним 04/01/23 Срд 09:31:09 #403 №2562454 
>>2562411
у рекурсивной функции, если её декорировать как обычную функцию она вызывается при каждом вызове рекурсии
Аноним 04/01/23 Срд 09:56:16 #404 №2562456 
>>2560244
С одной стороны ты прав, на степике много мусора даже слишком
Но курс по питону там, в целом — хорош. Хотя некоторые вещи не объясняются, а потом проскакивают в задачах. Типа и так понятно, а скорее всего просто автор забыл пояснить. Но базовые вещи там разжеваны даже для самых уж тупых.
Другие курсы по программированию я не смотрел, а вот по другим предметам там трешемусор.
Аноним 04/01/23 Срд 13:37:04 #405 №2562565 
image
Питон сила.
Аноним 04/01/23 Срд 18:43:39 #406 №2562954 
Блядь, я её понимаю.
Есть .тхт, в нем лежит репрезентация питонового дикта на ~3к строк. Нужно прочитать тхт, превратить дикт в жсон и отослать по гет-запросу, когда надо.
Дикт отдельно провалидирован через jsonlint на предмет скобок/кавычек/дублей ключей, но на моменте json.loads() выбивает ошибку. Если этот же дикт захардкодить внутрь функции, то все работает. Если в тхт положить коротенькую залупу а-ля
{
"test": "success"
}
То тоже все работает. Что не так?
Аноним 04/01/23 Срд 19:19:39 #407 №2563008 
>>2562954
С энкодингом в опене может проебался.
Аноним 04/01/23 Срд 19:37:50 #408 №2563028 
>>2562954
Да нет, utf-8 стоит.
with open(f"{full_path}/test.txt", "r", encoding='utf-8') as file:
____data = file.read()
Аноним 04/01/23 Срд 19:38:05 #409 №2563029 
>>2563028
это сюда >>2563008
Аноним 04/01/23 Срд 19:41:03 #410 №2563035 
>>2562954
А что мешает его через json.load загрузить вместо явного чтения?
И какая вообще ошибка?
Аноним 04/01/23 Срд 19:42:01 #411 №2563037 
>>2562954
> json.loads() выбивает ошибку
Какую именно ошибку?

Вообще говоря питоновский синтаксис это не совсем json.
Попробуй вместо json.loads сделать что-то типа
d = eval(open("input.txt").read())
Аноним 04/01/23 Срд 20:48:04 #412 №2563124 
image.png
Аноним 04/01/23 Срд 21:33:15 #413 №2563174 
>>2562242

Как вариант - написать свой декоратор, который не возвращает результат выполнения рекурсивной функции.
Аноним 05/01/23 Чтв 00:27:04 #414 №2563342 
>>2563124
Проблемы виндузятников
Аноним 05/01/23 Чтв 04:07:30 #415 №2563421 
Сколько видеопамяти желательно чтобы комфортно вкатиться в эти ваши нейронки?
Аноним 05/01/23 Чтв 04:46:02 #416 №2563424 
>>2551459
pio install pygame --pre
Аноним 05/01/23 Чтв 10:09:38 #417 №2563488 
Аноны, может кто что-то сказать по курсу от Яндекса?
Аноним 05/01/23 Чтв 10:16:23 #418 №2563491 
>>2548685
только в хуевом виде
тут в каждом проходе зачем-то каждый раз происходит обмен первого попавшегося наименьшего элемента, а не один раз в конце прохода.
Аноним 05/01/23 Чтв 12:15:05 #419 №2563536 
Анон, привет. Я только начал изучать питон, опыта ноль, да и в целом это мой первый язык. Есть какие-нибудь сайты-тренажеры, где дохуя задач для новичков, с постепенным возрастанием уровня сложности? Хочу руку набивать. Желательно на русском, но и англ подойдёт, переводчиком пользоваться умею.
Аноним 05/01/23 Чтв 12:20:24 #420 №2563541 
>>2563536
checkio
Аноним 05/01/23 Чтв 12:38:13 #421 №2563555 
>>2563536
codewars
Аноним 05/01/23 Чтв 14:26:25 #422 №2563689 
>>2563541
>>2563555
Благодарю.
Аноним 05/01/23 Чтв 19:59:44 #423 №2564081 
>>2563536
На степике есть бесплатный курс Добрый, добрый Python. Для новичков самое то. Задачки там по сложности могут доходить до 5 кю в кодварсе. Вот только стоит ли сейчас начинать вкатываться… Скоро chat gpt будет уметь всякое, да и джунов огромное количество. Я сам пытаюсь вкатиться и охреневаю. Уже начинаю думать что учу питон только для своих будущих проектов и инди игр в Стиме
Аноним 05/01/23 Чтв 20:36:58 #424 №2564111 
>>2563035
>>2563037
Вы не поверите, ошибка была из-за того, что в питоновой структуре были переходы на новую строку во вложенных словарях. По всей видимо json.loads() не мог интерпретировать эту хуйню и ломался.
Аноним 05/01/23 Чтв 20:47:56 #425 №2564130 
>>2563424
И тебе спасибо. Я уже решил это простой установкой прошлой версии самого питона.

Интересный факт. В профильных группах в телеге мой вопрос просто проигнорировали. А на двощах откликнулись три анончика. Питонотред лучше чем всякие группы в телеге.
Аноним 05/01/23 Чтв 20:49:28 #426 №2564133 
>>2564111
Ну так-то в жсоне оно должно эскейпиться как \n.
Аноним 05/01/23 Чтв 21:41:04 #427 №2564194 
image.png
Сап вечерний. Призываются джангисты итт. В моделях имеется: f = models.FileField(upload_to='files/'). На сколько я понял, в БД сохраняются только координаты файла при его загрузке в папку files. Как правильно применять этот и ему подобные методы FieldFile (name, size, open): https://docs.djangoproject.com/en/4.1/ref/models/fields/#django.db.models.fields.files.FieldFile.name ?
Хотя бы в shell, дальше я сам разберусь. На пикриле я видимо иду не по правильному пути.
Аноним 06/01/23 Птн 01:36:58 #428 №2564388 
>>2564194
Так поле отношения у тебя называется f, но ты явно запрашиваешь name. Скинь код модели.
И приучивайся добывать записи через get_object_or_404
Аноним 06/01/23 Птн 01:48:19 #429 №2564393 
Screenshot20230106014558.jpeg
>>2564194
ты не то че-то делаешь скорее всего
показывай свои модели
Аноним 06/01/23 Птн 01:54:59 #430 №2564394 
сап, я ультра начинающий
как для телегабота замутить автоматическую проверку курса валюты с какого нибудь сайта? пока я вписал значения вручную?
За одно, порекомендуйте гайды, предпочтительно на ютубе на русском, я тупой, по этой ветке питона
Аноним 06/01/23 Птн 01:55:39 #431 №2564396 
Screenshot80.jpg
>>2564394
отвалилось
Аноним 06/01/23 Птн 02:04:41 #432 №2564402 
>>2564396
Очевидно API. Это к курсу валют.

Сделай функцию с реквестом гет-запросов на какую-нибудь биржу, назови переменные запросов в соответствии с наименованием валют и вызывай при необходимости. Парсинг валют нагугли, там ничего сложного.
Аноним 06/01/23 Птн 02:07:52 #433 №2564404 
>>2564396
Две строки между функциями.
Две строки между последней функцией и аргументом модуля.
Аноним 06/01/23 Птн 02:08:14 #434 №2564405 
>>2564396
Две строки между функциями.
Две строки между последней функцией и аргументом модуля.
Аноним 06/01/23 Птн 03:07:55 #435 №2564415 
питон говно
Аноним 06/01/23 Птн 10:14:02 #436 №2564483 
>>2563124
Всё ставится на винду, там какая-то магия есть с тем, чтобы нормальные версии поставить, но любому дружащему с компами понятная после небольшого разбирательства. Уже не помню, что там было, но решалось за 10 минут.
Аноним 06/01/23 Птн 10:43:20 #437 №2564506 
image.png
image.png
>>2564388
>>2564393
Спасибо за разъяснения. Ошибку в запросе понял и исправил (пик 1). Подскажите ещё тактически. Как правильнее создавать ссылки на загруженные файлы? Сейчас сделал в views: files_all_request = Files.objects.all() Он передаёт в цикл for ссылки на объекты (пик 2). При переходе по ним в консоль возвращает 404, а браузер пытается неудачно загрузить htm с названием файла. Насколько я понял, надо как-то прикручивать FileResponse objects (в процессе его изучения): https://docs.djangoproject.com/en/4.1/ref/request-response/#fileresponse-objects , но в гугле неоднократно рекомендовали этот способ с mimetypes https://djangoadventures.com/how-to-create-file-download-links-in-django/ , а на стаковерфлоу лютый оверхед с модификациями HttpResponse от программистов индийского происхождения. Немного запутался в выборе направления.
Аноним 06/01/23 Птн 11:45:25 #438 №2564539 
>>2564506
у тебя файл-то лежит по этому адресу? есть что отдавать?
посмотри в консоли браузера, по какому пути браузер получает 404

если файл есть, но всё равно 404, то возможно неправильно настроен static_url
там в доке статья целая есть про static files, почитай
Аноним 06/01/23 Птн 11:51:00 #439 №2564548 
>>2564506
Если у тебя по-второму вопросу прикручена форма, то проверь, чтобы был аргумент enctype="multipart/form-data" в теге <form>
Аноним 06/01/23 Птн 12:04:56 #440 №2564559 
>>2564506
Т.е. у тебя переменная files_all_request, которая берёт queryset всех записей. Как у тебя выглядит context? {'all_files_info': files_all_request}?
Почему в форич у тебя другое имя?

Олсо, я бы порекомендовал тебе использовать миксины, почитай про ListView, там сильно упрощена привязка форм, моделей и передача контекста с возможностью переопределения метода сохранения/считывания записей из БД.
class DownloadFiles(ListView):
__model = Files
__template_name = 'template/download.html'
__context_object_name = 'all_files_info'

__def get_context_data(self, *, object_list=None, kwargs):
____context = super(DownloadFiles, self).get_context_data(
kwargs)
____context['files_count'] = Files.objects.all().count
____return context

__def get_queryset(self):
____return Files.objects.order_by('-pk')
Аноним 06/01/23 Птн 12:41:46 #441 №2564606 
image.png
image.png
>>2564539
Файл в наличии. Путь 404 на пик 1. STATIC_URL = 'static/' , но ведь он же не относится к загружаемым файлам? По умолчанию используется MEDIA_ROOT, к которому я добавил examples/upload_files/ в моделях. Про static files почитаю. Загрузка файла вроде правильно выполняется. На пик 2 результат шаблонов i.upload_files.url и i.upload_files.path.

>>2564548
enctype="multipart/form-data" прикручено к форме загрузки файла на сервер.

>>2564559
> {'all_files_info': files_all_request}
Да, выглядит так. Другое имя, чтобы пока не путаться в том, что и откуда берётся. Про ListView почитаю. Застрял пока в работе с файлами.
Аноним 06/01/23 Птн 13:25:59 #442 №2564633 
>>2564606
>04 на пик
Debug = False?
Аноним 06/01/23 Птн 13:44:04 #443 №2564656 
>>2564633
Нет.

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
Аноним 06/01/23 Птн 15:48:40 #444 №2564768 
https://rutracker.org/forum/viewtopic.php?t=6171770
Как этот курс? Или что-нить получше по джанго есть позаниматься?
Аноним 06/01/23 Птн 17:30:34 #445 №2564895 
>>2564768
Что вы с этим джанго носитесь все?
Уж если бухтят, что у питоновкатунов шансы низки, то у джанго-вкатунов ещё на порядок ниже.
Аноним 06/01/23 Птн 18:27:32 #446 №2564919 
>>2564895
Да плевать мне на шансы. И это не какая-то квантовая физика, что бы переживать, что не пригодиться и зря время потрачу на обучение
Аноним 06/01/23 Птн 18:48:43 #447 №2564936 
Как в джанге прикрутить кэширование редисом?
Аноним 06/01/23 Птн 18:52:19 #448 №2564940 
>>2564895
А куда вкат лучше? Если есть знания по математике и минималка по питону, в cs есть шансы?
Аноним 06/01/23 Птн 19:04:51 #449 №2564957 
>>2564940
CS это мем
Аноним 06/01/23 Птн 19:50:24 #450 №2564992 
>>2564919
База. Я с таким же настроем уже второй год занимаюсь понемногу. Даже не знаю, что из этого получится и ни на что не рассчитываю.
Тоже с Питона и Джанго кстати начинал. Сначала туговато шло, но потом как-то это вошло в мой образ жизни и сферу интересов.
Аноним 06/01/23 Птн 20:39:03 #451 №2565059 
>>2564992
Если мотиватор чисто деньги, а сам кодинг не нравится, то уж лучше просто во вкусно и точка идти работать. В конечном счёте, хоть профессия вряд ли умрёт, но бум исчезнет, если уже не идёт на спад. А на данный момент вкатывание это что-то новой золотой лихорадки. Основное бабло тут рубят, конечно те кто курсы продаёт
Аноним 06/01/23 Птн 21:20:39 #452 №2565106 
>>2564992
Таки откуда берёшь деньги на жизнь?
Аноним 06/01/23 Птн 21:59:40 #453 №2565148 
>>2565106
Второй год понемногу заниматься это значит иметь работу.
Сыч, угоревший по программированию ко второму году уже С бы стал трогать
Аноним 06/01/23 Птн 22:16:29 #454 №2565158 
image.png
>>2564539
>>2564548
>>2564559
Чувствую, что вам очень интересно нет, но я обнаружил, где проебался. В urls вместо path('<path:filepath>/', views.download, name='download_file'), было path('<str:filepath>/', views.download, name='download_file'), Соответственно в downloads передавался не путь, а строка без слешей. Само представление для отправки файла с сервера на пикриле.
Аноним 06/01/23 Птн 22:46:13 #455 №2565179 
>>2565106
Первый год работал. Щас несколько месяцев уже сычую.
Придётся опять возможно разнорабочим идти работать...
Аноним 07/01/23 Суб 08:31:09 #456 №2565387 
>>2564895
Кто бухтит-то? И куда ты вкатываться предлагаешь?
Аноним 07/01/23 Суб 12:21:19 #457 №2565514 
Адепты джавы пугают, что если первым языком учить питон, то потом никогда не поймешь ООП и нормальную типизацию. Реально так или это у них синдром утенка?
Аноним 07/01/23 Суб 12:48:45 #458 №2565549 
>>2565514
Реально. Я нихуя не понял.
Аноним 07/01/23 Суб 13:11:45 #459 №2565577 
больные ублюдки.jpg
>>2565514
>Адепты джавы
Аноним 07/01/23 Суб 13:11:47 #460 №2565578 
>>2565387
> Кто бухтит-то?
Вкатологи.
Я лично никуда не предлагаю, у меня уже всё ок. Но вкатунам надо оценивать конъюнктуру.
Аноним 07/01/23 Суб 13:22:26 #461 №2565587 
>>2565578
Каждую неделю вижу как появляются новые вакухи на джуна на пайтон. В чем проблема?
Аноним 07/01/23 Суб 13:23:01 #462 №2565589 
>>2565514
В пистоне ООП больше, чем в джаве. А сам язык спроектирован лучше.
Аноним 07/01/23 Суб 14:08:22 #463 №2565628 
>>2546424 (OP)
Критика?

guideline к обучению Питона https://habr.com/ru/post/709102/
Аноним 07/01/23 Суб 14:15:00 #464 №2565633 
>>2565628
Книги хорошие. По курсам хз, если Олег Молчанов это то, что я думаю, то тоже заебись, попалось рандомно и понравилось.
Аноним 07/01/23 Суб 14:24:35 #465 №2565638 
>>2565633
Ну а в целом "план" и сроки это как-то бессмысленно, оно будет разное в каждом индивидуальном случае.
Аноним 07/01/23 Суб 15:10:34 #466 №2565699 
Один знакомый попросил сделать скрипт, который берёт текст и удаляет все дубли из него, выписывая общее колличество уникальных слов. Всё просто, но нужно учитывать и различные окончания типа -s, -ed, -ing и их тоже фильтровать в одно слово все.

Пришлось погуглить и с библиотекой nltk это оказалось довольно просто реализовать.
Интересно, для русского есть такие библиотеки?
Аноним 07/01/23 Суб 16:04:16 #467 №2565749 
Как на питоне читать все что ввел юзер, без нажатия enter, и чтобы можно было стирать символы? Типа fzf.
Аноним 07/01/23 Суб 16:05:57 #468 №2565750 
>>2565699
>Интересно, для русского есть такие библиотеки?
Только вчера нашел и охуел сколько там фич. https://pypi.org/project/pymorphy2/
Аноним 07/01/23 Суб 16:15:29 #469 №2565760 
>>2565749
думаю никак, для этого js нужен скорее всего
Аноним 07/01/23 Суб 16:25:17 #470 №2565771 
>>2565699
стемминг называется. я использовал консольную прогу от яндекса. дальше просто работал с выводом
https://yandex.ru/dev/mystem/
Аноним 07/01/23 Суб 16:28:11 #471 №2565774 
>>2565749
pyinput например
Аноним 07/01/23 Суб 16:28:50 #472 №2565777 
>>2565749
В ipython есть автокомплит по истории, надо глянуть, что там используют.
Аноним 07/01/23 Суб 18:28:35 #473 №2565902 
Может кто-то помочь с этим? я на учителя математики учусь, а нас этой штукой насилуют, не знаю, проблем с вводом выводом, условными конструкциями не было, а тут не знаю, что делать, буду очень признателен, могу 50 рублей скинуть, за правильное решение, под правильным подразумеваю, отсутствие всяких непонятных библиотек, которые "мы еще не проходили" Дана матрица B(N,M) натуральных чисел. Найти количество строк, в
которых меньше половины элементов начинается с заданной цифры Х.
Аноним 07/01/23 Суб 18:45:30 #474 №2565916 
>>2565902
https://ideone.com/2A11pG
Аноним 07/01/23 Суб 18:51:24 #475 №2565923 
>>2565902
>>2565916
не открывается, даже через випиэны эти
Аноним 07/01/23 Суб 18:56:52 #476 №2565928 
>>2565916
@pizdanik вот сюда файл скинь и заодно номер телефона, в сбер скину
Аноним 07/01/23 Суб 19:00:46 #477 №2565934 
>>2565923
>>2565928
Пиздец у вас лютуют.
Ну пусть закинет кто-то, но это несколько шуточное решение, хотя развернуть в циклы пять сек и будет нормальное.
Аноним 07/01/23 Суб 19:07:32 #478 №2565945 
>>2565934
>>2565916
Спасибо, открыл, а то уже послезавтра зачет, а у меня только эта оставалась, стало стремно, что не сделаю...
Аноним 07/01/23 Суб 19:41:33 #479 №2565985 
>>2565934
Кто у нас то, это они сами русских заблочили.
А через впн всё открывается.
Аноним 08/01/23 Вск 09:59:03 #480 №2566297 
3WBEa8LECD4.jpg
У меня такая проблема. Я скачал и поставил себе Spyder, однако он не запускается. То есть, сначала появляется загрузочный экран IDE, а затем появляется какое-то маленькое окошко и тут же закрывается. И все.
Аноним 08/01/23 Вск 11:26:32 #481 №2566319 
Суп. Посоветуйте IDE. Пару лет питон не был в зоне моих интересов, сейчас вернулся, нужно накидать обширное REST-API и клиент к нему я админ и в это время, когда у меня всплывал питон, то мне с головой хватало Vim/gedit, я получал в них готовые скрипты раньше, чем запускался Pycharm. Думал взять и купить пайчарм, но авторы, судя по заявлениям, больные политотой головного мозга ублюдки, шли бы они нахуй с таким подходом. Есть что ещё, удобное, со всякими фичами типа нативной интеграции с Vitrual Environment и прочим?
Под GNU/Linux, естественно. Можно (и даже в некотором смысле предпочтительно) платную, но чтобы была прям АГОНЬ-АГНИЩЕ, а не как Sublime Саблайм... не то чтобы он плох, но на 99USD/3y не тянет прям вообще.
VS-code пробовал, но то ли его надо яростно допиливать, то ли до пайчарма ему как до луны раком. Я бы и рад допилить, но как? Кучи плагинов donjayamanne.python-extension-pack не хватает, например: хотелось бы, чтобы IDE следила за requirments.txt, дописывала код по сниппету(хотя в питоне это не слишком критично, но всё же), тут этого нет или я не нашёл.
Ну и много чего ещё на самом деле, это просто примеры того, что я жду от IDE в 2023-м (это я ещё плагин для линта нашёл, пока писал).


И ещё, я когда-то такое делал на Фласке, есть ли смысл сейчас осваивать что-то другое? Типа FastAPI?.. Асинхронность мне прироста не даст, может, только замедлит чутка, но я люблю осваивать современные инструменты.
Если это вдруг важно... Планируется приложение на PyQt для себя и коллег (кто хочет, пусть делают себе Web-GUI или ещё что), с классической твёхзвенной архитектурой DB-API-Client. Возможно, дадим контрагентам для работы с нашими ресурсами и ХЗ, какая будет популярность потом, но об этом рано рассуждать ещё.
Аноним 08/01/23 Вск 12:04:06 #482 №2566338 
>>2566319
пичарм коммьюнити юзаю, доволен как слон
Аноним 08/01/23 Вск 12:11:26 #483 №2566343 
>>2566319
Допиливай vscode. В плане настройки он топорный, некоторые логически дополняемые плагины по факту конфликтуют друг с другом, перекрывая и урезая функционал (python и djangolib к примеру), но путем пердолинга ты замутить себе наипездатейшую Иде.
Если нет времени, желания, то чел выше ответил. Пайчарм.
Аноним 08/01/23 Вск 12:19:27 #484 №2566346 
>>2566319
>но авторы, судя по заявлениям, больные политотой головного мозга ублюдки
Че за заявления?
Я лично пайчарм использую крякнутый. На рутрекере всё есть.
Аноним 08/01/23 Вск 13:16:20 #485 №2566378 DELETED
>>2566319
Что вообще даёт платный саблайм?
Аноним 08/01/23 Вск 13:37:27 #486 №2566397 
>>2566378
nagware
Аноним 08/01/23 Вск 13:51:43 #487 №2566405 
>>2566378
Деньги дает. Автору.
Аноним 08/01/23 Вск 16:17:04 #488 №2566592 
>>2566338
Комьюнити не умеет в дзиндзю, так что фласк/джанго под вопросом. Писать можно, но с удобством (так-то написать и в notepad.exe можно)... Вроде, для REST-API это не критично, но почему бы не поискать альтернативы?
>>2566343
Путём пердолинга наипиздатейшую IDE проще всего сделать из EMACS, там даже пердолинга будет немного... Вообще потыкал и, кажется, на VS-Code и остановлюсь. Не так там всё плохо, как показалось вначале. Вообще первый продукт майков, от которого не передёргивает ежеминутно (по крайней мере пока они не сломали Electron слишком сильно). Рефакторинга не хватает немного, пока это не выглядит большой проблемой, но даже возможность переименовать переменную во всём проекте с учётом областей видимости в пайчарме пригождалась.
>>2566346
>Че за заявления?
https://blog.jetbrains.com/blog/2022/12/06/update-on-jetbrains-statement-on-ukraine/
Оффтоп, политота, и т.п., тему дальше развивать не буду: в целом это всё я считаю крайне формой лицемерия: ни писка про Ирак, Афганистан, Йемен или ещё о десятках войн, но такой вой насчёт хохлов... аж тошнит. Вынепониметеэтосовсемпресовсемдругое, блджад!
>использую крякнутый
Идеологически и, почти физиологически, неприемлю. Я предпочитаю, чтобы мне платили за работу и считаю нормой платить за товары, которыми пользуюсь. При этом, если есть вариант воспользоваться бесплатной альтернативой, я не премину им воспользоваться с чувством благодарности по отношению к тем, кто дал мне такую возможность. Вопрос качества альтернативы и цены рассматривается индивидуально и зависит от потребностей и требований.
>>2566378
>Что вообще даёт платный саблайм?
Как WinRAR: пропадает сообщение о том, что надо купить + понимание, что ты помог авторам делать хорошее дело, я им реально пользуюсь потому что он реально хорош. Тащемта, если бы он стоил $20-40/lifetime, я бы даже взял, и за ту же цену добрал бы Sublime Merge (сейчас за них просят $99 по отдельности или $168 за комплект), лучший клиент гита, который мне попадался. Кстати, в smerge после покупки дают доступ к dev-ветке с более частыми релизами и тёмную тему (это из того, что заметил, возможно, и в subl и в smerge есть и другое, просто я не натыкался).
Аноним 08/01/23 Вск 17:18:18 #489 №2566714 
>>2566319
> И ещё, я когда-то такое делал на Фласке, есть ли смысл сейчас осваивать что-то другое? Типа FastAPI?..
Да, решил потыкать в фаст-апи. Правда, в примерах, которые попались пока что аффтар слишком яростно для меня надрачивает на асинхронность, ну да орган с ним, заодно вспомню универ, я с 4-го курса ни разу в многопоточности и асинхронность не тыкал (если не считать одновременных пинков процессов из bash, если кому интересно, расскажу).

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

Внезапно, озадачился, стоит ли абстрагироваться от БД через явно модную сейчас SQL-Alchemy, или лучше сделать, как привык... А привык я к тому, что в БД создаются хранимки и вьюшки и сервер приложения имеет доступ только к ним и не имеет доступа к собственно таблицам вообще. Это позволяет слегка спрятать потроха на случай проблем и всяких инъекций.

Да, я очень давно не кодил тыр-тыр-прайз-подобных вещей.
Аноним 08/01/23 Вск 19:39:03 #490 №2566875 
>>2566319
Честно говоря, не представляю себе как можно с вима слезть на что-то другое но у меня в виме стаж 10+ лет лол
Я бы сперва смотрел какие к виму есть плагины для virtualenv и что там еще надо для такого проекта
Аноним 08/01/23 Вск 20:18:38 #491 №2566907 
Эй питонисты почему вы не пишете код на русском, юникод же?
Аноним 08/01/23 Вск 20:38:43 #492 №2566918 
>>2566714
>стоыт ле абстрагыроваца от БД цеґез явно модную сейчас SQL-Alchemy
Гэта не зробіць працу трывалага праграміста прасцей, але Алхімія не замінае напрасткі пісаць свае запыты па ранейшаму. Разам з ёй прапануецца карысны інструмэнт - Alembic DB migration tool. Гэта як git, толькі для базы дадзеных. Спрошчвае праце некалькіх праграмістаў або стварэньне патчаў для жывой сістэмы.
Аноним 08/01/23 Вск 20:56:08 #493 №2566934 
>>2566907
Лень переключать раскладку.
Аноним 08/01/23 Вск 21:02:29 #494 №2566940 
>>2566907
В латинице 26 букв, этого мне достаточно для переменных в любой программе. Ну иногда ещё по ситуации использую греческий. Кириллица не нужна.
Аноним 08/01/23 Вск 21:37:33 #495 №2566958 
Питушки как пишется на динамикодрисне?)

шарпобог
Аноним 08/01/23 Вск 22:06:40 #496 №2566983 
Что лучше: CS50P или >>2565628 ?
Аноним 08/01/23 Вск 23:23:25 #497 №2567090 
os.makedirs(datetime.now().strftime('%d_%m_%Y_%H_%M'))
Как "провалиться" в созданную директорию?
Пробовал присвойть переменную, но отладчик пишет None.
Аноним 08/01/23 Вск 23:26:43 #498 №2567094 
>>2567090
Название файла в переменную вынеси и проваливайся
Аноним 08/01/23 Вск 23:37:35 #499 №2567115 
сколько можно.mp4
>>2546424 (OP)
>>2567090
Вынесите уже в шапку как пользоваться интерактивным реплом в консоли и в IDLE. Куча подобных вопросов сама собой отпадет.
Аноним 08/01/23 Вск 23:50:20 #500 №2567139 
>>2567094
>>Название файла в переменную вынеси и проваливайся
Почесав нижнии полушария, я интерпретировал это так:
os.makedirs(datetime.now().strftime('%d_%m_%Y_%H_%M'))
a = datetime.now().strftime('%d_%m_%Y_%H_%M')
Работает, я остался доволен результатом.
А это нормально, или я "быдлокодер"?
Аноним 08/01/23 Вск 23:57:40 #501 №2567146 
>>2567139
Что значит "провалиться"? Ты хочешь os.chdir() что ли?
Аноним 09/01/23 Пнд 00:02:55 #502 №2567154 
>>2567146
>>os.chdir()
Именно это я хочу сделать, как бы положительный результат уже есть, но правильно ли я это делаю...
Аноним 09/01/23 Пнд 00:05:33 #503 №2567157 
>>2567139
a = datetime.now().strftime('%d_%m_%Y_%H_%M'
os.makedirs(a)
Аноним 09/01/23 Пнд 00:15:29 #504 №2567169 
>>2567154
Все правильно делаешь. makedirs создает директорию (или валится с ошибкой если нет прав), chrdir меняет текущую директорию, передавай и туда и туда один и тот же путь и все дела.
makedirs возвращает None потому что предполагается что путь ты уже знаешь так что нет смысла ничего возвращать.
Есть еще похожая функция tempfile.mkdtem() -- она возвращает путь потому что он рандомный и зависит от системы
Аноним 09/01/23 Пнд 00:17:07 #505 №2567171 
>>2567157
Хм... И так сойдет.
Понял.
Аноним 09/01/23 Пнд 00:19:47 #506 №2567173 
>>2567169
>>Есть еще похожая функция tempfile.mkdtem() -- она возвращает >>путь потому что он рандомный и зависит от системы
Спасибо, мил человек.
Аноним 09/01/23 Пнд 10:56:43 #507 №2567452 
>>2566918
В vim я часто хожу на ХЗ-где, например, по ssh на серваке, который вижу в первый (и, возможно, последний) раз в жизни. Конечно, я не таскаю туда кучи плагинов... Вообще, я в виме делаю очень многое и тоже больше 10 лет, но как-то не приспособился его прокачивать.
>>2566918
> Алхімія не замінае напрасткі пісаць свае запыты па ранейшаму.
Гэта зразумела. Іншая справа, што калі я аддзялю базу ад кода і забараню выконваць звычайныя запыты, то я атрымаю некаторы аператыўны прастор і бяспеку.
> Спрошчвае праце некалькіх праграмістаў або стварэньне патчаў для жывой сістэмы.
Пакуль што гэта для мяне не актуальна.
Аноним 09/01/23 Пнд 10:59:27 #508 №2567458 
>>2566907
На то есть две причины. Хотя я виделпитоновский код на русском, но:
Во-первых это касется того, что объявил ты сам. Никто не переводил все эти def, for, if, print и прочее.
Во-вторых я неплохо знаком с 1С и даже когда весь язык на русском, это коробит из-за более сложных форм слов в настоящем русском. От конструкций типа "Новый Таблица" меня коробило всё время.
Аноним 09/01/23 Пнд 11:30:17 #509 №2567492 
>>2566958
А ещё, я никогда не забуду тот момент, когда на одной из конференций я впервые в жизни поймал на себе завистливый взгляд. Это был взгляд какого-то сливающегося с толпой неудачника, взгляд преисполненный ненависти, презрения и желчного вожделения, направленного на мой Олимп. Наверное, он всю свою никчёмную жизнь писал на каком-нибудь си-шарпе или там на джаве, проводя долгие дни в одиночестве. И теперь начинал подсознательно догадываться, что долгие годы безуспешно пытался построить замок из навоза.
Аноним 09/01/23 Пнд 11:42:59 #510 №2567500 
Учу CS50P

Вопрос
Когда мне Mu editor менять на VSCODE?
Аноним 09/01/23 Пнд 12:04:37 #511 №2567524 
>>2567500
когда захочешь добавить новую переменную в уравнение "в чем именно ты обосрался"
Аноним 09/01/23 Пнд 12:06:07 #512 №2567527 
>>2567139
Быдлоколдер.
Ты дважды получаешь текущее время (с точностью до минуты).
Есть ненуленвая вероятность, что между этими снятиями сменится минута и в переменной `a` не будет лежать именно имя директории.
Аноним 09/01/23 Пнд 12:55:16 #513 №2567592 
>>2559029
>В продуктовой конторе ты все можешь изменить
Мальчик, вот когда ты поработаешь в реальной продуктовой конторе и познакомишься с тамошним уровнем бюрократии, такой хуйни нести больше не будешь. Так что марш жсончики грузить, тасочки сами себя не закроют
Аноним 09/01/23 Пнд 14:15:41 #514 №2567696 
>>2567524
????????????????????????????????????????????????????????????
Аноним 09/01/23 Пнд 14:45:54 #515 №2567732 
>>2567592
>в реальной продуктовой конторе и познакомишься с тамошним уровнем бюрократии
ты деанонишься, только в нашей так
Аноним 09/01/23 Пнд 14:46:24 #516 №2567733 
Интересную ошибку схватил.
Запустил прогу с огромным списком через рекурсию, которая не могла закончится, не специально, но забыл поменять условие для проверки. Ну о таком не парешься, обычно быстро выдаётся ошибка и ничего не происходит, а тут в итоге всё загрузилось на 100%, и кое-как через пару минут смог закрыть пейчар.
И это всё пофиг, но во время этого процесса в ошибку вылетел qBittorrent и после чего диск стал грузить на 100% и работать всё медленно. Никакие перезагрузки не помогали, винда включалась очень медленно. Пока я заново не запустил qBittorrent и всё резко не восстановилось.

Видимо какой-то процесс от него остался, когда начал ломать работу диска и при этом даже перезагрузка компа его не останавливала, не думал, что такое возможно
Аноним 09/01/23 Пнд 14:52:44 #517 №2567741 
>>2567733
Ну что я точно понял хоть, что работать со списками через рекурсию очень плохая идея для памяти.
Аноним 09/01/23 Пнд 15:39:34 #518 №2567820 
>>2567733
хуясе. а ты уверен, что есть связь между этими событиями?
Аноним 09/01/23 Пнд 15:40:30 #519 №2567822 
>>2567733
может у тебя свободного места на диске 20 мегабайт осталось, лол
Аноним 09/01/23 Пнд 15:49:19 #520 №2567831 
>>2567820
Да, я сейчас разобрался получше и так понял эта проблема была связана с антивиром и видимо он сохранял состояние несмотря на перезагрузку винды и даже при запуске винды процесс продолжал.
Ну а антивирь чекал торрент, тот резко сломалс, антивирь не успел понять почему, опять же из-за загрузки всей памяти, и начал психовать, постоянно обращаясь к диску и нечего особо не читал с него, но активность 100% ему давал.

А как я заново запустил торрент, то антивирь его нашёл, успокоился и закрыл эту проверку.
По крайней мере такая у меня теория.
>>2567822
Ну я на диск ничего не записывал при выполнение скрипта. И никакой записи и чтения не происходило особого, просто нагрузка 100% и всё
Аноним 09/01/23 Пнд 16:35:17 #521 №2567884 
Перекатываться не пора?
Аноним 09/01/23 Пнд 17:25:58 #522 №2567942 
>>2567884
пора. перекатывай
Аноним 09/01/23 Пнд 17:29:05 #523 №2567948 
>>2567942
Нет, ты перекатывай.
Аноним 09/01/23 Пнд 17:35:22 #524 №2567957 
Наблюдаю странную историю c SQLite3:
https://goonlinetools.com/snapshot/code/#k5jdxa36c87uudqrxdavv

Далее - из консоли:
https://goonlinetools.com/snapshot/code/#51u36vlhbvgy5dxeeo52e

То есть инсёрт в скулайт из скрипта не проходит, или я делаю что-то не так. Ошибок при этом - никаких.
Аноним 09/01/23 Пнд 17:59:02 #525 №2567989 
>>2567957
Коммит без скобок, дурень.
Аноним 09/01/23 Пнд 18:01:44 #526 №2567993 
>>2567957
conn.close() забыл.
Аноним 09/01/23 Пнд 18:07:28 #527 №2567996 
>>2567989
Действительно, дурень. Помогло, спасибо. ЧСХ, в другом месте скобки есть и всё отрабатывало прекрасно. Странно, что он не падал при этом.
>>2567993
Там много кода вокруг, включая получение значений и т.п. И close тоже есть, но в конце метода и в копируемый кусок он тупо не попал.
Аноним 09/01/23 Пнд 18:12:22 #528 №2568001 
>>2567996
А хули ему падать? Это просто выражание, которое ничего не делает.
Аноним 09/01/23 Пнд 18:24:24 #529 №2568020 
>>2568001
Без скобок это по-идее должно трактоваться, как переменная? Ну вот и упал бы с "NameError: name 'conn.commit' is not defined", что, жалко, что ли?
Аноним 09/01/23 Пнд 18:26:59 #530 №2568025 
image.png
>>2568020
Так оно defined. Это ссылка на метод.
Точно так же можешь написать что-то вроде
ПЕРЕКАТ Аноним 09/01/23 Пнд 18:43:39 #531 №2568050 
1625159656730.png
>>2568047 (OP)
>>2568047 (OP)
>>2568047 (OP)
Аноним 14/01/23 Суб 04:32:54 #532 №2573277 
>>2564081
Спасибо, анон.
Аноним 20/01/23 Птн 14:21:45 #533 №2580717 
Здравсвутйе, я рмтшник-доширачник очень хочу написать бота для игры. изучение питона мне с этим поможет? можно начинать с книжек в оп посте или лучше начать с учебников информатики с 5 по 11класс?
comments powered by Disqus

Отзывы и предложения