Это копия, сохраненная 7 февраля 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Предыдущий: >>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
Не понимать, нахуя велосипед рама карбон, семь скоростей, если первое уже есть?
Фиксировать версии зависимостей, минимально обновлять только то что тебе необходимо, менеджить venv за тебя, и ещё пара свистоперделок. Это примерно как npm/cargo, полноценная среда управления проектом. Pip тупой как пробка, умеет только устанавливать, не видит конфликтов в зависимостях, версии непрямых зависимостей будут гулять.
>Где-то можно найти что-то более приближенное к реальности? Например ооп на примере работы с апи.
В любом проекте на гитхабе, который сложнее одного скрипта.
> на примере работы с апи
Каким апи? Когда ты джангу используешь, создаёшь там всякие модели-формы, это апи? Для http апи создаёшь сессию, создаёшь объект-запрос, получаешь объект-ответ, это достаточно ООП?
Если что, в питоне вообще всё объект, любые числа, функции, классы, у всего есть type(), dir(). У любого класса есть --mro--, где хранится вся цепочка наследования.
Обработать именно этот пример "browser.get('sosach')" не варик, это в примере одна строка а на деле много запросов. Только закидывать этот весь код в цикл на 3 захода и если получилось после первого раза то брейк, так правильно?
try:
browser.get('sosach')
except Exception as ex:
print(ex)
Выносить в функцию, в которой реализовать такую хуйню.
Есть готовые решения. https://github.com/jd/tenacity
>Есть готовые решения. https://github.com/jd/tenacity
А в чём разница этого и трай-эксепт с той же функцией, я глянул быстро будто какой-то велосипед изобретен вместо трай-эксепт.
Это декоратор. Ты берешь свою функцию и навешиваешь его на неё, получая этот функционал без велосипедных трай-экспетов.
Там куча разных опций и вариантов.
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 выдрать параметры юзерагент?
>не могу получить простой вывод например юзерагента
А что ты пытаешься получить-то? Либо сериализуй, либо обращайся как с обычными словарями. Первое более тру, второе - более скриптово.
>А что ты пытаешься получить-то? Либо сериализуй, либо обращайся как с обычными словарями. Первое более тру, второе - более скриптово.
Хочу получить значение 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'. Не знаю как еще нубски описать не в корне короче. Перерыл кучу примеров и везде то в файл всю простыню сохраняют, то все значение получают. Как получить одно конкретное и какой синтаксис этой строки не понятно.
>закидывать этот весь код в цикл на 3 захода и если получилось после первого раза то брейк, так правильно?
да. зачем выебываться?
>Не знаю как еще нубски описать не в корне короче.
Если знаешь точное расположение ключа - доставай как есть:
response[0]['blah']['blah']['User-Agent']
Если нет - пиши рекурсивный обход.
Так положение этого значения всегда фиксировано, по идее будет
[0]['params']['headers']['User-Agent']
если не туплю
надо только обязательно в try-except обернуть, потому что ключам может и не быть, заголовки headers заполняет клиент по своему желанию
Скажи мне, начал обмазываться poetry и столкнулся с тем, что в vscode после инициализации и переключения на env через ctrl+f5 скрипт запускается хорошо, но через эту ебучую кнопку пишет "module %name% not found". Проблема явно в том, что кнопка не одупляет, что я нахожусь в окружении проекта poetry.
Я недавно с пайчарма слез.
Пайчарм тяжёлый и медленный.
poetry использует обычные virtualenvs. по-дефолту он их где-то в жопе создает но можно указать чтобы делал в каталоге с проектом.
Просто найди где созданный им virtualenv для твоего проекта(poetry shell и там which python, например) и укажи python из каталога venv_path/bin в качестве интерпретатора для проекта.
с vs code не работал(для питона по крайней мере)
Просто перезапускай парсер целиком раз в час, пока он не высрет нужную дельту, которую ты уже впишешь в БД.
Детище твоё, ничего необычного. Я от нехер делать в скрипте по перекидыванию данных из БД в БД сделал навигацию по коммитам и историю зачем-то, хотя по времени мог написать свой проект. Только какой неясно.
Ты просто устанешь это делать. Рано или поздно. Это не является проблемой.
В условиях чатгпт не нужен, ты опоздал.
Вместо таких вопросов лучше почитай про при и порешай задачки про подпоследовательности.
Нет, не актуален. Западное финансирование аутсорса всё, западные платформы нас забанили, на вакансии в России пизданутый конкурс, нужны только синьоры с многолетним коммерческим опытом.
Объясните, что учить Джанго или Джанго Рест? И там, и там можна написать апи, но лучше ж для этого подойдет Джанго Рест, не? Та и редко случаются проекты, где на бекенде нужно писать темплейты, вот эти формочки создавать, обычно просто апи делаешь, а остальное фронтенд
Выглядит как очень просто, строк на 20, если питон умеет экселевский файлы открывать.
Найди как их открывать, покажи какое внутреннее представление твоих данных и какой вывод тебе нужен, я могу накидать примерный код.
Да я говорю найди код который экселевский файлы открывает, и покажи какой у него вывод - а я это переформатирую в нужное.
И вообще логичнее прямо в экселевском файле сделать, там же есть простейшие команды, а для более сложных можно на VB написать скрипт внутри файла.
Сидит такой хуй где-то в каморке и канпилирует списки чмобилизации на пердящем пентиуме 166 ммх в шиндовс 98.
Может и вы в нем.
Какой то чат для совсем нубов. Pandas.read_excel. Я думал тут сеньоры помидоры сидят
Челу на службе голову отбили, он загуглить не может как из петона эксель обработать, двач остался единственный оплотом знаний, че ты хочешь.
Ваканский стало сильно меньше. Причем ещё весной было норм. Летом тоже был выбор. А последнюю работу искал больше месяц и по факту был только один оффер реальный, я даже не выбирал.
В местных вакансиях как правило или платят мало или проект мутные и всё это вместе плюс безумные требования типа ездить в офис к 9-и утра. Во второй половина ваканский требуют релокейта во всякии армении/грузиии/сербии/кирпы.
С другой стороны украина сидит без света, и выехать не могут, а там была куча аутсорсеров и им ищут замену. Но тут нужен счет в каком-то банке не под санкциями(вроде счет в белорусском банке вариант) и не все вообще готовы готовы работать с РФ по политическим или юридическим причнам.
Сам с дуру бросил стабильную работут тут работу в сентябре и истал работу целенаправленно тоже в РФ. Но приходится работать на барена.
Короче всё сложно, а джунам вообще совсем бида, наверное.
неть, просто больные
Да они похожи оч, и чего там "учить" вообще можно по ходу разобраться благо доков и инфы в инете полно и исходники вполне читаемые, прыгаешь по коду фреймворка в IDE, быстрее чем инфу искать даже.
Последние несколько лет, в основном работал с DRF. Но смотря что за проект, иногда вся эта возня с фронтом это оверкилл, особенно, если один проект делаешь и это не какое-то мега веб приложение. Прошлой зимой делал что-то вроде новостного сайта, так забабахал всё на шаблонах прост и норм.
403-е
Просто реализация в лоб без оптимизаций.
пузырь с первого занятия по компьютер сайнсу
на втором добавят оптимизацию - флаг и в конце скажут забыть про это говно и пользоваться тем что есть в языке
как эта функция высчитывает частоту символов?
Зачем нужно переводить список во множество?
После того как список переведен во множество, оно ведь считает все равно по списку? Зачем нужно множество? Чтобы потом сравнить с посчитанным в списке? Но как ничего не могу сообразить.
ИЛИ ЭТО ВОЛШЕБНОЕ СВОЙСТВО ФУНКЦИИ МАКС, в которой реализовано что-то типа цикла, которое последовательно сравнивает эти 2 параметра?
Кстати напомните пожалуйста, внутри скобок вот такие вот параметры или если записать вместо них функции как параметры функции(если это возможно) будут выполняться слева направо?
Сет нужен, чтобы сравнивать только уникальные элементы, количество же ищем в оригинальном списке.
Ну такое, хитрость учителя информатики.
Переменную list называть ужасная практика, это встроенное имя.
И ещё в стандартной библиотеке есть collections.Counter
Ну а по шагам можно?
Зачем нужен кей?
почему пишут
> затем применяет к каждому из них фукнцию каунт?
кому это из них?
элементам множества?
но ведь каунт применяется для списка, не множества
и куда потом идет этот кей?
key тут применяется для вычисления значения для сверки. То же самое в сорт - сортируем по длинне строки.
Теперь возвращаемся к максу. С сетом мы делаем три сверки на каждый элемент (1,2,3), с оригиналом пять (1,1,1,2,3), но они избыточны для получения результата, для того и сет.
TypeError: '>' not supported between instances of 'builtin_function_or_method' and 'set'
key принимает ссылку на функцию, которую выполняет для каждого элемента. a.count соответственно использует метод count объекта a.
да. вроед разобрался еще раз спасибо вам
Что нужно и можно делать? Парсер написать сложно для новичка? Или телеграм бот парсер торрентов норм тема? Или сложно для начала?
>Парсер написать сложно для новичка?
Парсер языка программирования - сложно. Бот - средне, там больше рутины и документации ботов, торрентов и либ, чем программирования. Мне кажется это довольно плохие задачи для обучения.
Лучше сделай простую игру на pyglet/pygame. Например, ртс, 3 типа юнитов, 1 ресурс, 5 типов построек. Охват кучи тем, сравнительно мало задротства с документацией, при этом ты попробуешь и ооп, и алгоритмы нахождения пути и прочего, и какие-то сложные функции генерации карты, и побалуешься с архитектурой кода как сделать внятное ui и логику перехода из меню с кнопками к собственно игре. Ещё и математику потыкаешь, если в 3d.
Это selection sort. Почему-то в русскоязычной среде все неоптимальные и простые сортировки называют пузырьком. Пузырёк всегда меняет местами соседние элементы, а не ищет минимальный в остатке массива. Поэтому большие значения постепенно поднимаются вверх с каждой итерацией, как пузырьки, отсюда и название.
Делай то что интересно. Изучать сам по себе питон довольно скучно, потому что неясно зачем это всё именно так сделали. Самые знания языка получаются если ты умеешь экспериментировать в REPL, вот как тут >>48573. Запони что там есть функции type, dir, help, которыми можно поизучать любой объект/метод.
>Почему-то в русскоязычной среде все неоптимальные и простые сортировки называют пузырьком
Потому что нахуй их различать-то.
Чтобы не быть ебобо.
небось написал /n, типичная ошибка
Если читаешь обычный текстовый файл, пизже использовать .splitlines(), который сработает на всех возможных вариантах переносов строк: \n, \r, и даже \r\n.
Лучше использовать итератор по файловому объекту.
Ньюлайны автоматически подстраиваются под платформу, на которой выполняется скрипт, так что можно всегда писать \n.
>Ньюлайны автоматически подстраиваются под платформу, на которой выполняется скрипт, так что можно всегда писать \n.
нихуя ты мне ща фобию закрыл
Не линейная же, а k*n, от линейной с плохой константой до квадратичной, если повторяющихся элементов мало.
потому что у VScode есть СУПЕРСИЛА MICROSOFT.
Все вопросы решаются вливом бабла.
Рано или поздно останется только один редактор.
Там это работает, уверяю.
Там просто мастер Add docker to project генерит отладочный и обычный docker-compose.yml
В пайчарме нажал alt+enter и что-то еще, в итоге у меня перестало ошибки подчеркивать. Как фиксить?
Ну нажми там что-то.
Спасибо, помогло. А то я уже все галочки подряд стал пробовать.
подскажите после изучения языка что лучше учить? бд? или может алгоритмы? а может GIT?
забыл добавить , на бека мечу
всё
Суть в чем, мне нужно искать сайт в яндекс выдаче(именно живой выдаче), проблема в том что эта хуйня дропает мне капчу после 1 запроса(похоже что запросы делает робот),если кто нибудь уже сталкивался и как-то решил эту хуйню, буду очень признателен.
(использую селениум так как bsом эта пиздурма не парсится вроде)
Поисковики не любят парсинг и очень хотят его палить.
Тут надо будет некоторое количество резидентал проксей и реальный браузер.
Не ставится pygame ни в какую. Попробовал ставить на версии 3.11, потом на 3.10, потом на 3.9.
Выдаёт ошибку на пикрелейт. Попробовал поставить Джанго, например, на все эти версии. Джанго ставится, а пугейм нихуя.
Гугл говорит, что нужно попробовать поставить на младших версиях, и все должно заработать. Но мне не помогло.
У меня знакомый вкатывальщик то же самое говорил неделю назад, я попробовал на 3.10 переставить - у меня переустановилось без проблем.
Попробуй загрузи вручную:
https://github.com/pygame/pygame/releases/tag/2.1.2
У него сразу заработало.
Лучше бы уж ПИПИТОН сказал
Прикрутил к коду GUI с двумя кнопками, при нажатии на первую, её функция успешно выполняется и GUI работает дальше, но при нажатии на вторую кнопку GUI зависает, т.к. в функции крутится цикл и пока он не выполнен GUI не работает
Как пофиксить? Вроде нужно распараллеливание, но как его сделать и чем? Гуглить пытался но слишком дохуя лишней информации, от которой моск плавится
Фризится, потому что эвент залуп гуи блокируется, это платина.
Запускай своё говно в отдельном треде.
>>51752
Спасибо, родные
У меня не получалось просто проставить 3.10 и на него накатить. Все равно выдавало ту же ошибку. Пришлось снести всё. И переустановить 3.10 какбэ с нуля. Тогда все заработало и pygame поставился без проблем.
Скорее всего был какой-то более простой и менее радикальный метод, но мне с моим уровнем знаний помогло только это
предположим есть задача написать простейший ЯП на питоне да
как организуешь работу с памятью в своем ЯП ?
ну имею ввиду где будешь хранить имена переменных, данные, как свяжешь между собой ?
или обойдешься кучей в которую будешь совать безымянные данные ?
ответ нужен побыстрее и лучше срочно
Я бы в словаре хранил, как собственно в самом питоне и сделано, если globals() вызвать?
что скажешь насчет реализации через стек?
пусть у тебя есть прога типа
def f(x):
return 10*x + 15
ты это парсишь, разбираешь на составные части. Прога у тебя выполняется примерно так:
1. положить на стек x
2. положить на стек 10
3. взять со стека два операнда, умножить между собой и положить результат в стек
4. положить в стек 15
5. взять со стека два операнда, сложить между собой и положить результат в стек
6. вернуть значение со стека
посмотри что выдает python dis и реализуй так же
где хуй?
дома буду покажу свои наработки нарисованные в паинт
но могу и так в двух словах пояснить
вощем решил я детство вспомнить, а в детстве когда питон освоил решил написать свой скриптовый язык
ну неважно короче щас я к вопросу подошел сурезнее и застрял (как обычно) на самом казалось бы простом - работа с переменными
ну и для начала подумал написать псевдо-низкоуровневый интерфейс для работы с переменными
но штобы можно была и высокоуровневый вместе использовать с низкоуровневым
есть значить у нас оператор push который добавляет всякое гавно в кучу (не стек)
есть оператор int который вызывает прерывание
выглядит это типа так
push 666
int out
то есть сперва заталкиваем в кучу 666 потом вызываем оут и в качестве аргумента передаем ей то что лежит в куче, причем передаем спомощью .pop() то есть и очищаем кучу, потому что так нада
но и помимо этого подумал неплохо было бы переменные так-то юзать
ну типа
a = 666
out a
тут уже посложнее, во-первых нужно 2 массива
в первом лежит чето типа {"0x0": 666} а во втором лежит {"a":"0x0"},
ну и на оут уже подается не первый элемент из кучи, а данные по имени хранящемуся в первом массиве, который хранит ссылку на данные во втором, потому что так нада
Хотелось бы узнать как вам идея, Жириновский предложил если че
дома буду покажу свои наработки нарисованные в паинт
но могу и так в двух словах пояснить
вощем решил я детство вспомнить, а в детстве когда питон освоил решил написать свой скриптовый язык
ну неважно короче щас я к вопросу подошел сурезнее и застрял (как обычно) на самом казалось бы простом - работа с переменными
ну и для начала подумал написать псевдо-низкоуровневый интерфейс для работы с переменными
но штобы можно была и высокоуровневый вместе использовать с низкоуровневым
есть значить у нас оператор push который добавляет всякое гавно в кучу (не стек)
есть оператор int который вызывает прерывание
выглядит это типа так
push 666
int out
то есть сперва заталкиваем в кучу 666 потом вызываем оут и в качестве аргумента передаем ей то что лежит в куче, причем передаем спомощью .pop() то есть и очищаем кучу, потому что так нада
но и помимо этого подумал неплохо было бы переменные так-то юзать
ну типа
a = 666
out a
тут уже посложнее, во-первых нужно 2 массива
в первом лежит чето типа {"0x0": 666} а во втором лежит {"a":"0x0"},
ну и на оут уже подается не первый элемент из кучи, а данные по имени хранящемуся в первом массиве, который хранит ссылку на данные во втором, потому что так нада
Хотелось бы узнать как вам идея, Жириновский предложил если че
Хер пойми чем ты занимаешься. Изучи как работает стек-машина питона, смотри модуль dis и вообще доки глянь. Там что-то похожее возможно.
нормик, вместо очищения кучи я бы подумал, как это в кэш какой-нибудь заебошить
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, который бы заставлял модуль регулярок на эти смимволы смотреть как на обычные символы, а не как на смецсимволы которые надо экранировать.
сохранил себе. выглядит симпатично
ааа блять. это же ретрай. галя, отмена.
Ну если найдешь работу то да. Хотя когда ты там выучишь питон и начнешь вкатываться, то уже и сво кончится и солнце расцветет.
504
Какие подводные.
Не умею пользоваться двумя ветками, при пуш кормите херю одну из веток.
Порядок
git commit -m 'alpha 0.1'
git push
git merge dev/origin
И ветка dev удаляется со всеми коммитами.
Ты главное во время пуша не забывай -f писать. И откажись от merge, используй rebase. Чо как лох?
Во я дебил. Вот что бывает когда учишь питон самостоятельно, а не системно - такие вот позорные пробелы, которые просто проебал, читая документацию.
Могла ещё 10 лет назад. А сейчас каждый школьник по уроку с хабра сможет её обойти.
Нет задач проще на рукпачу отправлять за 10 коопеек. Ты ведь всё равно в общей сложности много сообщений отправить не сможешь - быстро это делать не получится из за облачной защиты, а долго это делать не получится потому что все твои айпишники быстро перебанят. Таким образом нейросетку учить ради того чтобы 100 сообщений отправить это трата времени.
так а зочем, куча нужна по сути для временного хранения аргументов функции, после вызова функции аргументы в куче хранить ни к чему, а вот переменные пусь себе хранятся где надо
Я не для вайпа или ботов её хочу создать, а вместо пасскода использовать. Это же вроде не должно палиться, да и вообще это для опыта сойдёт неплохо
А как ты собрался подключать браузер к питухону. Плагин какой-то есть или отныне будешь всю жизнь через селентиум сидеть - так это обновлять заебешься.
Главное что есть теоретически выполнимая идея, а как её реализовать это уже другой вопрос. Возможно на с++ можно будет подключиться к браузеру, или создать приложение/сайт через апи двача и уже через него капчевать.
Всё равно хуйня какая-то, он ставит эскейпы ещё и перед пробелами - шаблон не находится.
Бля абу удали этот пост, всё работает. Надо спать уже ложиться, совсем плавлюсь.
Можно, ты лошок.
И решить можно с автоматизецией в 60-70% попаданий, это охуенно, клаудфлара это защита от детей.
Хорошо знать, что мне платят не просто так.
я лучше придумал, вернее обобщил
нет это абу
Моё решение (не обоссыте, я новенький): https://pastebin.com/NYhCRaMY
Если пользователь ввёл 6 или 14 – всё хорошо, ответ похож на тот, что у Яндекса. Но как, блядь, быть, если с клавиатуры прочитано число 4? Как, блядь, представить это число? На первой строке 1, на второй 2, 3 и 4? Если так, то как изменить код, чтобы 4 (или вообще любое другое число) перемещалась на предыдущую строку? Уже день мозг ломаю.
Линк не работает, вот условие задачи:
Давно пора на такое отдельный тред завести.
>Но как, блядь, быть, если с клавиатуры прочитано число 4?
А оно точно там может быть?
Не знаю, как видишь, в условии задачи нет ни слова о том, что делать с числами, если при разложении последняя строка получается короче предыдущей. Типа хуй знает, при 4 должно печататься:
1
2 3
или
1
2 3 4
А как мне код редачить? Придется вводить новую переменную - пустую строку, и в нее заносить числа? Типа если длина последней строки меньше заданного числа, то ее не печатать?
да, это неправильный код, набросал быстренько
1
2 3
Даже как-то немножко стыдно уже, но тут тоже была небольшая ошибочка
При n > = 6 криво выводит, еще и с ошибкой.
https://pastebin.com/Xk4EmZZj
Такой код проходит 2 теста из трёх. Предполагаю, что валится он при n = 24, т.е. последняя строка будет короче предыдущей. Как это сука еще можно записать? Уже день ебусь с задачей, а решил только наполовину.
Блядь. Создал список max_len со значением 1, в который заносил максимальное значение строки, потом из него выбирал наибольший элемент и сравнивал длину текущей строки (если она больше, чем максимальный элемент списка - 1, то выводим ее), однако опять 2/3 тестов выполнено. ЧЯДНТ? Ебучая задача.
и по условию задачи ничего отсекать не надо
хотя не, отсекать надо, если не равна предыдушей линии. ну тогда тут только списки создавать, а иначе хз как
да, косяк.
Начал исправлять, даже первое теперь не проходит, хотя в пейчаре всё отлично работает.
Я уже пробнул, что бы и так было, но тут даже первое перестаёт проходить. Совершенно подлая задачка.
Так что, как они в итоге разделиться-то должны? Все хвосты в самую нижнюю ветку?
Есть эксперты в пограмировании? Пишу тамагочи на пайтон, подумал просто выполнять лабораторку не кайф, надо патерн какой-то изучить, ну и с дуру выбрал патерн строитель. В итоге у меня новогоперсонажа создает через директора и строителя, но я хуй знает можно ли дальше привязать ко всем параметрам класс время. Потому что если каждый раз вызывать директора - так это новый объект будет же, или с построенным объектом через директора можно как-то общаться?
Насколько сильно я проебавсь с этим патерном?
Я понял почему тест не принимается сходу. Тут на выходе лишний принт, но я хз почему он появляется. После распаковки листа он что-ли автоматом каретку вниз опускает. Ну возможно, там такой алгоритм. Попробую иначе распечать список тогда
https://github.com/Pekarnya/Tamagochi
Не стукай сильно. Я правда хотел все по технологии сделать, я не знал что так влипну. Мне непонятно как сделать так, чтобы показатели здоровья им все прочее считалось и чтобы вновь созданный объект через строителя дальше использовать.
Я не прошу тебя выдать мне код, я прошу дать наводку в какую сторону воевать, можно ли спасти такую конструкцию, можно ли еще в такую конструкцию вписать класс времени (чтобы обсчитывать логику игры?
Или нет.
Вроде всегда лишний отступ есть
даже когда программа просто print(1)
В общем так, и дальше хз
Что точно можно сказать, что не важно, удаляю ли последний список, если он меньше предыдущего или прибавляю к последнему, тест ломается на 6ом, значит связано не с этим.
Ну, мой код работает: https://pastebin.com/BFBs3C75
Вот только Яндекс ебаный не засчитывает решение, не показывает, какой именно тест не проходит, блядь. Но знаю то, что когда следующая строка была меньше предыдущей, тоже на третьем тесте валилось. По идее я это пофиксил, почему не принимает - хз.
И думаю, на такие задачи, с неизвестными входными данными + не очень понятным условием лучше время не тратить и идти дальше. Мы уже тут не задачу решаем, а пытаемся под непонятные условия костылями код подвести
Забы прикрепить пик.
Тут было обсуждение, что нижняя строка не должна быть короче верхней. Как там в задании, я хз.
Чёт вспомнил как была отбитая задача, которая точно была решена верно, я предложил данные о последнем тесте выдавать по времени или по объёму памяти, и я, препод и ещё один тип отправляли задачи меняя значение и по затрачиваемой программой памяти определяли входные данные последнего теста.
Не очень понимаю, что вот это такое. Декораторы не так используются.
https://docs.python.org/3/library/abc.html#abc.abstractmethod
Соль в том, что там 18 или какая-то крайная к последней задача такая же, только теперь нормальную елку нужно рисовать, т.е. с отступами слева.
Там есть примеры входных данных, которые не раскладываются сами на этащи? Или тоже 6 и 14?
Те же самые примеры, лол. Для 14 и 6, хз что создатели хендбука курили.
Делаем просто вложенный список и после принтуем его, заполняя пробелами слева и справа исходя из длины последнего списка, ну это, что первое мне на ум пришло. Чисто косметическое задание.
Да можно проще. Типа из предыдущей задачи мы знаем длину последней строки, поэтому относительно ее середины располагаем элементы первой строки, второй, и т.д. Мне это первое в голову пришло.
Неа. Там данные короткие были и их получили, но даже проверив всё и убедившись что всё правильно вывод не подобрали.
Препод что-то писал туда, но я просто забил и не знаю продолжения, вроде пробел или перенос строки непонятный был, который вообще не знаю как нужно было поставить и на каком основании.
Но это тёмные века были на питоне-2, я надеюсь сейчас вывод проверяется не по соответствии строке, а считывая и прогоняя через условия, так как часто в задачах много вариантов правильного вывода.
любой пробел и в том задании учитывается.
у меня сначала вообще не проходило ибо изначально каждая ступень в конце имела лишний пробел, то есть
1 ' '
1 2 ' '
И так далее. Ошибка сходу. Как пробелы убрал из конца, то 5/6 стали проходить
Ну у тебя задача на строки. Хотя по идее корректность ёлочки пробелы в конце не нарушают, и оно их само должно игнорить в программе проверки, например просто нарезая на строки и проверяя что каждая следующая больше предыдущей или что там подразумевается.
Я про то, где нужно вывести список определённых элементов какой-то или ещё что-то такое, где хотя бы просто порядок вывода разный может быть.
А можно ссылку покликать, или там регаться нужно? Вдруг я мысли прочитаю, и напишу именно как создатель такой говнозадачи.
https://new.contest.yandex.ru/41236/statistics
Не знаю, нужно быть в яндекске зареганным скорее всего. У меня автоматом из под моей учётки открылось
Лол, моё решение не принимало, потому что плюсы не по пепу. Ебать этот яндекс в сраку.
Ну вон ты получил плеер муув у игрока, теперь накладывай его на состояние тамагочи, и выдавай результат. Потом запрашивай следующий ход.
Да, хрень полная, мой тоже прошёл, когда все ошибки по пеп исправил.
Вообще там задания для начинающих, поэтому не должно быть никаких серьёзных алгоритмов.
Именно то, что придирались к pep-8 и спутало всё с самого начала.
Куею, сколько времени потратили.
Твой код был правильный изначально. Если бы примеры были нормальные, то ты бы не сомневался в логике своей программы, а сразу бы подумал, что проблема в форматировании и
>нажал ctrl+alt+l в пейчаре
Ещё лучше было бы, если бы яндекс написал проблему, а не играл в угадайку, но с нормальными примерами былобы понятно, что проблема не в коде.
Либо pep-8, либо твой код даёт лишние пробелы в конце строки либо лишний принт последней строкой.
Это не ошибка в коде.
В строке вида c = a+b я могу поставить пробелы вокруг равенства, но буду специально удалять пробелы вокруг +. Это принципиальная позиция.
Стиль и оформления кода должны на уровне иде только быть.
По типу, у меня отступы стоят тройными пробелами. Я редактирую и сохраняю код как мне захочется, а когда его открывает другой программист, то он у себя видит с четверными или двойными пробелами, если у него проблемы с этим. То есть пусть лучше каждый видит код со своими настройками стиля, не надо эту чушь всем принудительно юзать. Иде достаточно давно самостоятельно могут всё это сделать.
Я имею ввиду пробелы в outpute лишние
Не просто
1
А
1[ ] - лишний пробел, ты его не видишь, а задачник видит, можешь просто проверить в самом пейчаре нет ли лишних строк и пробелов в оутпуте
>Так игроку каждый раз новое имя придется вводить
Почему новое? Пусть вводит то, с каким тамагочим работать собрался.
>Как нейм сохранить?
В тамагочем.
Если успею разобраться. Я нипанимаю как мне из директора сохранить имя введенного персонажа и обсчитывать только показатели
Так а как сделать чтобы имя сохранялась, как заставить выводить новые показатели? Прастите за тупые вопросы, я нипанимаю куда гуглить
Мне было малость неудобно у него спросить "а че не так?" т.к. в айти меньше года а он лет 5 наверно.
Что такого плохого в селери что так охуенно делает airflow?
Моднее. Понимать надо.
>js + react
Удачи соревноваться с тысячами малолетних вкатунов
Удачи быть первым в очереди на оптимизацию нейросетями
Удачи до конца дней ебаться с UI
Ты если в датасаенс вкатываешься, то не днарь нулевый и скорее всего образованный, иначе нахуй ты всрался?
можно, но не так удобно
Из питона можно легко потом перекатиться в бекенд на го/шарпах если не довен, либо в датасаенс. Если ты пойдешь в жс, то путь тебе только во фронт на жс и все тут
В джанго-админке пользователь может нажать на кнопку "скачать файл" и некий файл сохранится ему на устройство. Проблема в том что файл этот лежит в удаленном S3 хранилище. Как правильно загрузить файл из S3 и потом передать его пользователю? Обычная подгрузка файлов у джанги идет из папки media автоматически, мне практически ничего настраивать не нужно было
Зачем перекат, если и на твоем питухоне можно бек писать как и на js лол
>и все тут
Я скозал!11
Питон норм язык для обучения программирования в первую очередь независимо от синтаксиса языка. После освоения питона можешь идти хоть в java, хоть в js, хоть с++ и потраченное время на питон не будет пустым.
Зачем грузить? Отдавай сразу с3 ссылку. Там можно добавить какой-то параметр, чтобы форсился даунлоад, а не открывалось в браузере, погугли.
Зачем грузить? Отдавай сразу с3 ссылку. Там можно добавить какой-то параметр, чтобы форсился даунлоад, а не открывалось в браузере, погугли.
Вы все тут поехавшие школьники, вы нейросети блять, вы буквально разговариваете тезисами говорящих голов, продающих говнокурсы.
Оставим то что вы не в состоянии усвоить прочитанное, хуй с ним.
Но писать такую хуйню как перейти в язык нейм после языканейм полегче, время не потрачено. Ты долбоеб? Зачем учить что-то, чтобы потом перейти на нечно кардинально другое?
Спасибо за ответ. Думал над этим еще до того как здесь спрошу, мне кажется слишком много перезаписей будет. Я оказывается могу просто к созданому классу напрямую обращаться главное написать функцию которая возвращает только нужные мне показатели, блин мне нраица
Ты в первую очередь учишься программировать и только после синтаксис языка.
Во первых, питон самый популярный язык сейчас, во вторых освоив его и научившись программировать на нём, но поняв, что ты хочешь заниматься в отрасли, где он не особо годиться, то без проблем освоишь новый синтаксис, потому что программировать ты уже умеешь.
Ты долбоеб, что ты несешь?
>ишься программировать и только после синтаксис языка.
Я большей хуйни в жизни не читал, как ты, мразь тупоголовая, хочешь научиться писать обход дерева да и в принципе реализацию, не зная синтаксис языка? ебанат блять
Ты чмо ебаное. даже на ассемблере ты сначала учишь, что делают команды и только потом ты на нем пишешь. Ты сука тупая, которая не понимает что несет, пошел нахуй.
Потому что навыки программирования это как навыки алгебры, они в целом универсальны, независимо от того на каком языке ты пишешь.
Зная алгоритмы, ты сможешь их реализиовать на любом языке после краткого изучения синтаксиса, не зная их, ты не сможешь нихуя, зная при этом синтаксис языка просто идеально.
как там инпут принимать? через sys.stdin.read()?
могли бы уж функцию запилить как на чекио, вида
> def check(data):
> pass
понял. он на пеп 8 ругался, "ответ неверен", пишет
вроде ЯНДЕКС, а такие говноделы, пиздец
хотя, нет, в задаче 4 у меня всё было по пепу, без ругани. и всё равно "неверно", пишет
хотя всё верно. я заменил input на sys.stdin.read - сработало
ааааа, ей промт в инпуте не понравился
"input(f'Number {i}: ')" - это неправильный код, а "input()" это правильный код, запомните, дети, учитесь у яндекса программированию
всё определено, напиши чего-нибудь в промт и тестировщик отвалится
короче, яндекс говном накормил. куча задач на работу с охуенно важной жизненно необходимой каждому программисту функцией input(), причем я заметил, что для всех задач нужно писать какой-то говнокод
В лабе нельзя сторонне использовать, проверяющему лень устанавливать из пипинстала
Привет, Анончики, подскажите плиз, я сам не могу найти.
Как сделать интерактивный график, что бы выбирать ряд данных в самом графике?
Например, у меня есть табличка с ввп по годам, в ней 193 страны, я хочу иметь возможность выбирать и накладывать на график ввп выбранных стран из выпадающего списка. Что бы на графике было отображено несколько стран. Типа Австрия, Венгрия, Франция, Германия.
Вот примерно так.
https://www.imf.org/external/datamapper/PCPIPCH@WEO/AUT/HUN/FRA/DEU
Спасибо.
я имел ввиду конечно же просто название библиотеки написать
оооо как же джуна вкатывальщика порвало.
ты не прав вообще во всем в чем только можно было бы быть неправым
тонна вакух
кинул репорт
Атбой, оказывается в функцию можно передавать все что угодно, мне нужно было просто кошку передавать дальше куда хочу
Можно за месяц. Смотря до какого уровня.
Я не из тикток-поколения, но не против посмотреть видео-курс, только чтобы это была не пиратская запись с онлайн-курса, где половина видео это вода, а конкретный видеогайд. Может кто-нибудь такое посоветовать с рутрекера или откуда-нибудь еще?
Ну я не знаю, какие тайтлы переводили и как они называются, не слежу. Может кто посоветует.
Это как file.readlines, просто sys.stdin это файловый хендл ввода.
Делаешь цикл пока input() не вернет пустую строку
В цикле добавляешь строки в матрицу, по одной за раз
спасибо, это как раз то, что нужно было
мне надо в матрице сделать математические операции над элементами. ок, я создаю копию нашего списка, провожу операции над элементами нового списка. но почему когда я меняю элемент нового списка, он ведет себя как-то странно? в данном случае, если введена одна строка и допустим я увеливаю первый элемент в n раз, остальные тоже увеличиваются в n раз лол. поясни нубу, как это пофиксить?
говнокод: https://goonlinetools.com/snapshot/code/#w4s3brk2l39mmjtxb46f
вроде фиксится, если импортировать нампай и использовать а как массив от х
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
Разумеется суть в проработке домашки, а не тупо пырить в экран и "учиться".
да. копу делает шэллоу копи, и создает тебе другой лист с новым указателем, но сами элементы внутри продолжают указывать на старые объекты. деепкопу также рекурсивно копирует объекты внутри
На степике курсы по питону. Хотя не понятно, что ты от основ программирования хочешь. Что бы тебя прям сразу ввели в двоичный код, который комп и понимает только или просто не только дали синтаксис языка, но ещё и заданиями по каждому моменту подрючили, то это степик.
Если первое, то это уже после освоения языка на более менее нормальном уровне стоит лезть.
У меня такое впечатление, что все эти хотители разобраться как начинают лезть в дебри от простейшей хуйни, которую ОТ НИХ СКРЫВАЮТ, так и ловят стек оверфлоу, лул.
Какие книги посоветуете по мачин лернингс (чтобы там не просто код на питоне давали) А чтоб еще описывали алгоритмы со всем матаном. Чтоб материал еще давался в соответствие с учебником статистики.
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»
Себастьяна Рашку читай. Не знаю, годная ли книга, но фамилия смищная.
Предпоследняя помогла сдать статистику в универе (там и теория игр есть). Остальное не пригодилось.
на степике тот же ютуб, только гарантированно в нормальной последовательности и с заданиями
Я чет не понял. Вот мы пишем хуйню вроде :
counter = 0
while counter < 10_000_000:
----counter += 1
То есть тупо гоняем цикл на 10 миллионов тактов чтобы выждать время, и это забивает CPU. Но есть еще возможность сделать так:
time.sleep(1)
ИЛИ
await asyncio.sleep(1)
И CPU будто вообще не забивается, но камон, как этот sleep вообще крутится? Система не может прост "ничего не делать" секунду, она точно так же бегает в бесконечном цикле и ждет когда из него можно выйти. Шо за магия?
У тебя программа в вакууме работает или поверх ос?
Что такое проце знаешь? А поток исполнения?
А зачем в ос нужны планировщики задач?
А что такое прерывания?
А как происходит переключение процессов?
Не знаешь? Иди изучай.
Да. Ты человек с ограниченными умственными возможностями. Потому я тебе и перечислил все темы, которые тебе нужно изучить.
30 лет назад так и было
>Система не может прост "ничего не делать" секунду,
Может
https://ru.wikipedia.org/wiki/NOP
Кроме того, он может спать
https://www.felixcloutier.com/x86/mwait
Ты не задумывался что возможно иногда не в твоих силах изменить формирование окружения?
нах так прикладывать
Ну если этот ваш степик бесплатный, можно и его.
Просто если у анона уровень минус один, как он пишет, ему нахуй не нужно ничего покупать на этом этапе.
Большинство курсов и прочего платного видео какраз для вот таких зелёных. Там тупо озвучивают туториал, что можно и ютубе забесплатно послушать-посмотреть.
Бля, я только сейчас заметил расхождение по цифрам. Какого хуя первый вызывается в 2 раза чаще, чем третий?
Гугли python GIL.
курсы для начинающих обычно бесплатные. потом от тех же людей и компаний продолжение в ООП и прочие платное
https://stepik.org/course/63085/syllabus
С чего-нить из этого стоит начинать.
Какой-то странный сайт. Что значит «поступить». Это к чему-то обязывает? Какие-то личные данные нужно вводить? Или можно фейко-аноном поучиться?
Но в целом, если бесплатно, то именно то что нужно. Основы основ. Основы во всех учебниках и видео одинаковые, подозреваю.
Кто-нибудь сидит на py.checkio.org?
Нужно посмотреть решение одной задачи.
С меня как всегда.
sleep сам по себе не крутится. Питон дает ОС сигнал, что процесс надо перестать планировать (запускать на ЦП) в течение 1 секунды, планировщик ОС перестает планировать этот процесс. Если есть какие-то другие пользовательские процессы, то планировщик планирует их. Если все пользовательские процессы спят (ждут time.sleep или IO), то ОС планирует процесс №0. Процесс №0 внутри себя выполняет программу, содержащую бесконечный цикл (опционально с NOP внутри). Вот только выполнять NOP это не совсем "ничего не делать", если его запустить в бесконечном цикле в пользовательском процессоре, то вполне себе начнет выжираться 100% времени и электроэнергии, то есть процессор "забивается", кулеры шумят итп. Но фишка процесса №0 в том, что при его планировании ОС еще и автоматически командует ЦПУ снизить энергопотребление до минимума. Снижаются рабочая частоты, отключаются некоторые блоки итд. ЦПУ умеет входить и выходить из этого режима очень быстро. Именно благодаря этому и создается ощущение, что процессор "без нагрузки" находится в покое.
Это самая база, в реальности все сложнее, конечно. Отсюда можешь начать копать. Но остальные ЧСВшные аноны тебе вообще какую-то хуйню ответили.
>если его запустить в бесконечном цикле в пользовательском процессе
>Снижаются рабочие частоты
фикс
Вот освоил основной синтаксис, потыкался в джанго, попробовал в фаст апи и вот попал в тупик:
в джанго все как конструктор лего, вот модельки вот вьюшки, вот темплейт папочка все разложил и нате сайтик
а в фастапи я чет нипонял нихуя, вот запустил админку по документации и че с ней делать? куда хтмлки привязывать?
есть может литература какая или видосики где можно грокнуть эту тему
че такое джанго, фастапи?
мимо тоже освоил синтаксис, но из странных слов знаю только нампай и пандас
fastapi какбы намекае, для чего оно - делать ручки для морд на фронте. Джанга же полновесная хуйня.
Это для любого подобного хрумворка так, хочешь изъебств - бери что-то легковесное типа фласка и велосипедь поверху него.
Потому что эти типа курс после прохождения которого тебе дадут сертификат. Его, конечно, можно распечатать и подтереться.
Пизда, уебок. Ответь нормально, не говнись, чмошник
Не трави нуба, принт со скобками уже хорошо
а попробовать заглянуть в доку по фаст api была не судьба?
там все описано и как рендерить хтмл из темплейтов и как mcv заебенить
чиво блять?
ты сам то понимаешь что этот код делает?
скобочками все обозначено что к чему относится.
ЗЫ нахуя ты эту древную залупу читаешь
>вы буквально разговариваете тезисами говорящих голов, продающих говнокурсы.
С языка снял. Так и не понял нахуя выбирать первым языком питон.
Дата саенс, нейросети - кому нахуй сдался вкатун
Джанго - одна единственная хуйня, которую все равно надо изучить+html+css
Так легче сразу js учить же.
Объясните нахуй нужен этот питон?
>они в целом универсальны, независимо от того на каком языке ты пишешь
Я спрашивал в голенг треде про аналог yeild и в целом генераторах для итерации линкед листа, в итоге выяснилось, что там нихуя подобного нет и в целом питон предлагает другой уровень выразительности и там нужно ебошить классические структуры как в сишке, да и в целом есть очень много вещей, которые отличаются от того что есть в питоне и его изучение гораздо больнее, чем если бы я голенг с нуля учил и привыкал к его концепциям.
Это магическая переменная в которой имя текущего модуля.
Если модуль загружен через import из другого модуля -- это будет имя файла.
Если модуль загружен интерпретатором (то есть например в командной строке написали python my_program.py) то __name__ будет 'main'.
Там самое близкое к yield-генераторам это каналы.
Одна корутина идет по списку и пишет в канал -- это генератор. Другая читает из канала.
Если канал без буфера то получится точно тот же порядок операций как в питоне
я тебя там покрывал хуями, и тут еще покрою:
нет никакого аналога yield в голанге!
Этот язык устроен иначе чем питон.
пиздец ты необучаемый
Разумеется различия в языках есть и некоторые вещи не реализуемы на других или с костылями и не так эффективно.
Но ты уже понимаешь, что тебе нужно, какой результат, а уж не долго разобраться какими другими инструментами можно его достичь.
Ну а если способ достижения нужных результатов крайне неэффективный для твоих проектов, то тут уже вопрос а зачем ты пользуешься данным языком для них, меняй его.
Так речь шла о питоне как о языке для обучения, быстрый вкат происходит только за счёт того, что многие концепции, которые юзаются в программировании опускаются, типа указателей и размера типов данных, из-чего при перекате в другие языки или попытке эффективно писать программы начинается бугурт.
Единственное что в языке выгодно отличается это то, что ты можешь постигать языковые концепции максимально последовательно и новичкам не нужно писать магические private static void и include something.h которые в самом начале непонятно для чего нужны во время написания циклов и хеллоу ворлда.
Когда ты пишешь на питоне, ты можешь мыслить высокими категориями, на других языках же размениваешься на ерунду.
Например, в питоне ты легко работаешь с юникод-строками не задумываясь, а на куче других языков ты страдаешь.
У тебя в коробке конструкции вроде словарей. Ты можешь делать операции вида
if element in some_list
(список, словарь, множество), на других языках обычно совсем-совсем не так лаконично
На более продвинутом уровне у тебя есть всякие контекстные менеджеры with, которые сильно вычистить-обезопасить код могут
Дохера всего на самом деле.
А ещё у тебя очень хорошая стандартная библиотека, не надо для всего подключать внешние зависимости.
Ты можешь просто реально программировать почти всё, что угодно. Не всегда эффективно, конечно.
Ну на питоне куда проще писать полный говнокод, когда вывод одной строки может потратить несколько гигабайт оперативки это да, но в конечном счёте, если ты хочешь успешно программировать на питоне тебе это всё равно нужно знать и нормальные курсы обычно на всё это указывают.
Ты должен знать, что происходит внутри питона. Поэтому при переходе на другой язык более менее нормально кодера бугурта быть не должно.
>Ну на питоне куда проще писать полный говнокод, когда вывод одной строки может потратить несколько гигабайт оперативки это да
Не очень представляю, как ты несколько гигабайт можешь спустить. На других языках писать говнокод не сложнее, скорее проще. Понимать нужно любой язык. Иначе ты будет по байту нарачивать строку, каждый раз реаллоцируя массив по неё, например.
Да это я, конечно, утрировал. Но пайфон из-за своей гибкости именно позволяет навертеть много чего, если ты не в курсах, что там под капотом, а просто кратко выучил синтаксис.
>на других языках же размениваешься на ерунду
Если у тебя небольшая нагрузка, то да, это можно назвать ерундой, но что бы писать на питоне эффективно нужно знать кишочки и концепции, которые в других языках постигаются во время базового обучения. Например, недавно возникала проблема с жором памяти у одинаквых питонячьих строк, которые по дефолту не интернировались и которые оказывается, жрут по 49 байт минимум даже если там ничего нет. В языке с указателями я бы даже не задумывался об этом и сразу запилил необходимую структуру, но в питоне об узнаешь только когда припрет и мало в каких учебниках или курсах такая тема обсуждается.
>нужно знать кишочки и концепции, которые в других языках постигаются во время базового обучения
Практика показывает, что нет. Страдает и базовое обучение, концепции, и понимание кишочков.
>>58950
>Например, недавно возникала проблема с жором памяти у одинаквых питонячьих строк, которые по дефолту не интернировались и которые оказывается, жрут по 49 байт минимум даже если там ничего нет. В языке с указателями я бы даже не задумывался об этом
Вот именно что не задумываешься. А попробуй задуматься, сколько реально потребляется памяти при
malloc(1)
например. Подсказка: тоже далеко не 1 байт. И даже не 4-8.
зачем вообще книги когда учишь язык когда есть божественные БЕСПЛАТНЫЕ курсы на степике, там тебе все рассказывают и сразу закрепляют материал заставляя вбить код ручками
ахаха, это галерные проблемы гребцов на забугорные помойки.
Скидывают всякую хуевую работу и технический долг на аутсорс. Но платят больше, да.
В продуктовой конторе ты все можешь изменить.
>Например, в питоне ты легко работаешь с юникод-строками не задумываясь, а на куче других языков ты страдаешь.
ага. ты просто не был тут во время python2.
u"я был тут, " + u"честное слово"
курсы на степике смотри. они лучше, потому что там есть задания нормальные.
В самой книге 2019 большой проблемы нет, обновления есть, но их быстро наверстать, но просто это не так эффективно уже
Можно, но учти:
1) это будет на порядок сложнее, чем на движке
2) это будет очень медленно работать. в 4к будет 30 фпс на йоба процессоре
3) вся твоя игра считается и рендерится на одном потоке цпу
4) всякие полноэкранные эффекты, блум, транспаренси, постпроцесс - забудь. твоя игра будет выглядеть так, будто её сделали в 25 лет назад!
В играх решает контент, движок на котором он будет крутится важен чуть меньше. В питоне есть подводные вроде однопоточки и общей тормознутости, но если не делать ААА-йобу, то для нетребовательного 2д вполне хватит.
промазал
Спроси у gpt бота, хех
> это будет на порядок сложнее, чем на движке
Но я вот читал что крутые программисты делают костяк на pygame, смотрят как все это примерно будет выглядеть, а потом переписывают на другом движке
Выкинуть нахер и придумать новое. Тупой перебор тут просто не пройдёт.
У тебя три цикла вставлены один в другой, вот они и тормозят. Тебе что нужно? Найти самый большой квадрат. Значит как только находишь 4 - сразу делаешь break. Иначе по другому алгоритму ищешь суммы других квадратов и выводишь max. Попробуй сделать хотя бы 2 цикла
благодарю за совет, я сначала поменял поиск start на бинарный и сократил время работы примерно с 11 секунд до 5, потом еще потужился и применил префиксные суммы(в данном случае постфиксные, но не уверен что такой термин есть) по итогу 300*300 матрицу за 700 мс обрабатывает
Наверно в каждой строке надо найти подстроку максимальной длины(но не единичной), потом найти минимум из пересечений получившихся отрезков.
В твоем примере отрезки длин 0, 3, 5, 0. Пересекаем последовательно ненулевые. Пересечение 3 и 5 дает 3, но до правильного квадрата надо еще один этаж, но следующий идет 0, значит ограничиваемся максимумом стороной 2 и площадь 4.
Яб как-то так рассуждал. Сама задача на подстроки и дерево пересечений из них.
чот с фильтрами покрути, а вообще видимо все:
джуновских вакух тупа нет, на около джуновских под 1к откликов
Да, выкатывайся
сам расстроился, только начал изучать питончик. ну может через год ситуация изменится, как раз к тому времени подтяну знания. джуновских вакансий в дс2 чуть меньше 40, но откликов там много. вот одна из них
Увеличиваешь шанс на отклик в 100 раз
Это типа такая версия индуского кода, что бы круче и сложнее выглядело?
Я через префиксные суммы решал, чтобы быстро проверять, заполнен ли квадрат только единицами.
Бля, чё за пиздец слева
Это говно ещё и работает медленно из-за постоянных вычислений минимума и максимума в списке
Справа непонятно, зачем else, если в теле цикла break нет
Да, видно, что подгружается ответ ещё не сразу же.
А мой вариант, ну можно и без else, но это я так предпочитаю писать, что бы понятнее было, что это именно конец цикла, а не отдельная операция от цикла.
Там реализовано строго по описанию, с колонками и хуенками, ты просто вычислил по сути алгоритма.
Понятно. Тут и я свой дальше улучшил, поняв, что список вообще не нужен. Ну полистал дальше, примеры нормальные там, позанимаюсь по этой книге, думаю хватит для начала.
Он и не для фото, он для сканов, грубо говоря. Т.е. должен быть препроцессеный контрастный различимый текст, посторонний шум сольет его распознавание почти до нуля.
Понял, а есть что для фото? Просто вообще ничего не могу найти. За ответ спасибо.
От pandas там единственная польза что print(half_double) напечатает все промежуточные значения красивенько.
Иногда бывает полезно.
как-то так
Да, это работает, хотя там вроде какие то дополнительные настройки у самого декоратора были. Но хз, может так и было
Ну буду просто этим вариантом пользоваться
неплохо джунов привалило
да.
декоратор всегда 1 раз вызывается
> @декор
> деф фу()...
это то же самое что:
> деф фу()...
> фу = декор(фу)
как видишь, декор() вызывается 1 раз только при импорте модуля
у рекурсивной функции, если её декорировать как обычную функцию она вызывается при каждом вызове рекурсии
С одной стороны ты прав, на степике много мусора даже слишком
Но курс по питону там, в целом — хорош. Хотя некоторые вещи не объясняются, а потом проскакивают в задачах. Типа и так понятно, а скорее всего просто автор забыл пояснить. Но базовые вещи там разжеваны даже для самых уж тупых.
Другие курсы по программированию я не смотрел, а вот по другим предметам там трешемусор.
Есть .тхт, в нем лежит репрезентация питонового дикта на ~3к строк. Нужно прочитать тхт, превратить дикт в жсон и отослать по гет-запросу, когда надо.
Дикт отдельно провалидирован через jsonlint на предмет скобок/кавычек/дублей ключей, но на моменте json.loads() выбивает ошибку. Если этот же дикт захардкодить внутрь функции, то все работает. Если в тхт положить коротенькую залупу а-ля
{
"test": "success"
}
То тоже все работает. Что не так?
Да нет, utf-8 стоит.
with open(f"{full_path}/test.txt", "r", encoding='utf-8') as file:
____data = file.read()
> json.loads() выбивает ошибку
Какую именно ошибку?
Вообще говоря питоновский синтаксис это не совсем json.
Попробуй вместо json.loads сделать что-то типа
d = eval(open("input.txt").read())
Как вариант - написать свой декоратор, который не возвращает результат выполнения рекурсивной функции.
Проблемы виндузятников
только в хуевом виде
тут в каждом проходе зачем-то каждый раз происходит обмен первого попавшегося наименьшего элемента, а не один раз в конце прохода.
На степике есть бесплатный курс Добрый, добрый Python. Для новичков самое то. Задачки там по сложности могут доходить до 5 кю в кодварсе. Вот только стоит ли сейчас начинать вкатываться… Скоро chat gpt будет уметь всякое, да и джунов огромное количество. Я сам пытаюсь вкатиться и охреневаю. Уже начинаю думать что учу питон только для своих будущих проектов и инди игр в Стиме
И тебе спасибо. Я уже решил это простой установкой прошлой версии самого питона.
Интересный факт. В профильных группах в телеге мой вопрос просто проигнорировали. А на двощах откликнулись три анончика. Питонотред лучше чем всякие группы в телеге.
Ну так-то в жсоне оно должно эскейпиться как \n.
Хотя бы в shell, дальше я сам разберусь. На пикриле я видимо иду не по правильному пути.
Так поле отношения у тебя называется f, но ты явно запрашиваешь name. Скинь код модели.
И приучивайся добывать записи через get_object_or_404
как для телегабота замутить автоматическую проверку курса валюты с какого нибудь сайта? пока я вписал значения вручную?
За одно, порекомендуйте гайды, предпочтительно на ютубе на русском, я тупой, по этой ветке питона
Очевидно API. Это к курсу валют.
Сделай функцию с реквестом гет-запросов на какую-нибудь биржу, назови переменные запросов в соответствии с наименованием валют и вызывай при необходимости. Парсинг валют нагугли, там ничего сложного.
Всё ставится на винду, там какая-то магия есть с тем, чтобы нормальные версии поставить, но любому дружащему с компами понятная после небольшого разбирательства. Уже не помню, что там было, но решалось за 10 минут.
>>64393
Спасибо за разъяснения. Ошибку в запросе понял и исправил (пик 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 от программистов индийского происхождения. Немного запутался в выборе направления.
у тебя файл-то лежит по этому адресу? есть что отдавать?
посмотри в консоли браузера, по какому пути браузер получает 404
если файл есть, но всё равно 404, то возможно неправильно настроен static_url
там в доке статья целая есть про static files, почитай
Если у тебя по-второму вопросу прикручена форма, то проверь, чтобы был аргумент enctype="multipart/form-data" в теге <form>
Т.е. у тебя переменная 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')
Файл в наличии. Путь 404 на пик 1. STATIC_URL = 'static/' , но ведь он же не относится к загружаемым файлам? По умолчанию используется MEDIA_ROOT, к которому я добавил examples/upload_files/ в моделях. Про static files почитаю. Загрузка файла вроде правильно выполняется. На пик 2 результат шаблонов i.upload_files.url и i.upload_files.path.
>>64548
enctype="multipart/form-data" прикручено к форме загрузки файла на сервер.
>>64559
> {'all_files_info': files_all_request}
Да, выглядит так. Другое имя, чтобы пока не путаться в том, что и откуда берётся. Про ListView почитаю. Застрял пока в работе с файлами.
Как этот курс? Или что-нить получше по джанго есть позаниматься?
Что вы с этим джанго носитесь все?
Уж если бухтят, что у питоновкатунов шансы низки, то у джанго-вкатунов ещё на порядок ниже.
Да плевать мне на шансы. И это не какая-то квантовая физика, что бы переживать, что не пригодиться и зря время потрачу на обучение
А куда вкат лучше? Если есть знания по математике и минималка по питону, в cs есть шансы?
CS это мем
База. Я с таким же настроем уже второй год занимаюсь понемногу. Даже не знаю, что из этого получится и ни на что не рассчитываю.
Тоже с Питона и Джанго кстати начинал. Сначала туговато шло, но потом как-то это вошло в мой образ жизни и сферу интересов.
Если мотиватор чисто деньги, а сам кодинг не нравится, то уж лучше просто во вкусно и точка идти работать. В конечном счёте, хоть профессия вряд ли умрёт, но бум исчезнет, если уже не идёт на спад. А на данный момент вкатывание это что-то новой золотой лихорадки. Основное бабло тут рубят, конечно те кто курсы продаёт
Второй год понемногу заниматься это значит иметь работу.
Сыч, угоревший по программированию ко второму году уже С бы стал трогать
>>64548
>>64559
Чувствую, что вам очень интересно нет, но я обнаружил, где проебался. В urls вместо path('<path:filepath>/', views.download, name='download_file'), было path('<str:filepath>/', views.download, name='download_file'), Соответственно в downloads передавался не путь, а строка без слешей. Само представление для отправки файла с сервера на пикриле.
Первый год работал. Щас несколько месяцев уже сычую.
Придётся опять возможно разнорабочим идти работать...
Реально. Я нихуя не понял.
> Кто бухтит-то?
Вкатологи.
Я лично никуда не предлагаю, у меня уже всё ок. Но вкатунам надо оценивать конъюнктуру.
Каждую неделю вижу как появляются новые вакухи на джуна на пайтон. В чем проблема?
В пистоне ООП больше, чем в джаве. А сам язык спроектирован лучше.
Книги хорошие. По курсам хз, если Олег Молчанов это то, что я думаю, то тоже заебись, попалось рандомно и понравилось.
Ну а в целом "план" и сроки это как-то бессмысленно, оно будет разное в каждом индивидуальном случае.
Пришлось погуглить и с библиотекой nltk это оказалось довольно просто реализовать.
Интересно, для русского есть такие библиотеки?
>Интересно, для русского есть такие библиотеки?
Только вчера нашел и охуел сколько там фич. https://pypi.org/project/pymorphy2/
думаю никак, для этого js нужен скорее всего
стемминг называется. я использовал консольную прогу от яндекса. дальше просто работал с выводом
https://yandex.ru/dev/mystem/
pyinput например
В ipython есть автокомплит по истории, надо глянуть, что там используют.
которых меньше половины элементов начинается с заданной цифры Х.
Под GNU/Linux, естественно. Можно (и даже в некотором смысле предпочтительно) платную, но чтобы была прям АГОНЬ-АГНИЩЕ, а не как Sublime Саблайм... не то чтобы он плох, но на 99USD/3y не тянет прям вообще.
VS-code пробовал, но то ли его надо яростно допиливать, то ли до пайчарма ему как до луны раком. Я бы и рад допилить, но как? Кучи плагинов donjayamanne.python-extension-pack не хватает, например: хотелось бы, чтобы IDE следила за requirments.txt, дописывала код по сниппету(хотя в питоне это не слишком критично, но всё же), тут этого нет или я не нашёл.
Ну и много чего ещё на самом деле, это просто примеры того, что я жду от IDE в 2023-м (это я ещё плагин для линта нашёл, пока писал).
И ещё, я когда-то такое делал на Фласке, есть ли смысл сейчас осваивать что-то другое? Типа FastAPI?.. Асинхронность мне прироста не даст, может, только замедлит чутка, но я люблю осваивать современные инструменты.
Если это вдруг важно... Планируется приложение на PyQt для себя и коллег (кто хочет, пусть делают себе Web-GUI или ещё что), с классической твёхзвенной архитектурой DB-API-Client. Возможно, дадим контрагентам для работы с нашими ресурсами и ХЗ, какая будет популярность потом, но об этом рано рассуждать ещё.
Допиливай vscode. В плане настройки он топорный, некоторые логически дополняемые плагины по факту конфликтуют друг с другом, перекрывая и урезая функционал (python и djangolib к примеру), но путем пердолинга ты замутить себе наипездатейшую Иде.
Если нет времени, желания, то чел выше ответил. Пайчарм.
>но авторы, судя по заявлениям, больные политотой головного мозга ублюдки
Че за заявления?
Я лично пайчарм использую крякнутый. На рутрекере всё есть.
nagware
Деньги дает. Автору.
Комьюнити не умеет в дзиндзю, так что фласк/джанго под вопросом. Писать можно, но с удобством (так-то написать и в notepad.exe можно)... Вроде, для REST-API это не критично, но почему бы не поискать альтернативы?
>>66343
Путём пердолинга наипиздатейшую IDE проще всего сделать из EMACS, там даже пердолинга будет немного... Вообще потыкал и, кажется, на VS-Code и остановлюсь. Не так там всё плохо, как показалось вначале. Вообще первый продукт майков, от которого не передёргивает ежеминутно (по крайней мере пока они не сломали Electron слишком сильно). Рефакторинга не хватает немного, пока это не выглядит большой проблемой, но даже возможность переименовать переменную во всём проекте с учётом областей видимости в пайчарме пригождалась.
>>66346
>Че за заявления?
https://blog.jetbrains.com/blog/2022/12/06/update-on-jetbrains-statement-on-ukraine/
Оффтоп, политота, и т.п., тему дальше развивать не буду: в целом это всё я считаю крайне формой лицемерия: ни писка про Ирак, Афганистан, Йемен или ещё о десятках войн, но такой вой насчёт хохлов... аж тошнит. Вынепониметеэтосовсемпресовсемдругое, блджад!
>использую крякнутый
Идеологически и, почти физиологически, неприемлю. Я предпочитаю, чтобы мне платили за работу и считаю нормой платить за товары, которыми пользуюсь. При этом, если есть вариант воспользоваться бесплатной альтернативой, я не премину им воспользоваться с чувством благодарности по отношению к тем, кто дал мне такую возможность. Вопрос качества альтернативы и цены рассматривается индивидуально и зависит от потребностей и требований.
>>66378 (Del)
>Что вообще даёт платный саблайм?
Как WinRAR: пропадает сообщение о том, что надо купить + понимание, что ты помог авторам делать хорошее дело, я им реально пользуюсь потому что он реально хорош. Тащемта, если бы он стоил $20-40/lifetime, я бы даже взял, и за ту же цену добрал бы Sublime Merge (сейчас за них просят $99 по отдельности или $168 за комплект), лучший клиент гита, который мне попадался. Кстати, в smerge после покупки дают доступ к dev-ветке с более частыми релизами и тёмную тему (это из того, что заметил, возможно, и в subl и в smerge есть и другое, просто я не натыкался).
Комьюнити не умеет в дзиндзю, так что фласк/джанго под вопросом. Писать можно, но с удобством (так-то написать и в notepad.exe можно)... Вроде, для REST-API это не критично, но почему бы не поискать альтернативы?
>>66343
Путём пердолинга наипиздатейшую IDE проще всего сделать из EMACS, там даже пердолинга будет немного... Вообще потыкал и, кажется, на VS-Code и остановлюсь. Не так там всё плохо, как показалось вначале. Вообще первый продукт майков, от которого не передёргивает ежеминутно (по крайней мере пока они не сломали Electron слишком сильно). Рефакторинга не хватает немного, пока это не выглядит большой проблемой, но даже возможность переименовать переменную во всём проекте с учётом областей видимости в пайчарме пригождалась.
>>66346
>Че за заявления?
https://blog.jetbrains.com/blog/2022/12/06/update-on-jetbrains-statement-on-ukraine/
Оффтоп, политота, и т.п., тему дальше развивать не буду: в целом это всё я считаю крайне формой лицемерия: ни писка про Ирак, Афганистан, Йемен или ещё о десятках войн, но такой вой насчёт хохлов... аж тошнит. Вынепониметеэтосовсемпресовсемдругое, блджад!
>использую крякнутый
Идеологически и, почти физиологически, неприемлю. Я предпочитаю, чтобы мне платили за работу и считаю нормой платить за товары, которыми пользуюсь. При этом, если есть вариант воспользоваться бесплатной альтернативой, я не премину им воспользоваться с чувством благодарности по отношению к тем, кто дал мне такую возможность. Вопрос качества альтернативы и цены рассматривается индивидуально и зависит от потребностей и требований.
>>66378 (Del)
>Что вообще даёт платный саблайм?
Как WinRAR: пропадает сообщение о том, что надо купить + понимание, что ты помог авторам делать хорошее дело, я им реально пользуюсь потому что он реально хорош. Тащемта, если бы он стоил $20-40/lifetime, я бы даже взял, и за ту же цену добрал бы Sublime Merge (сейчас за них просят $99 по отдельности или $168 за комплект), лучший клиент гита, который мне попадался. Кстати, в smerge после покупки дают доступ к dev-ветке с более частыми релизами и тёмную тему (это из того, что заметил, возможно, и в subl и в smerge есть и другое, просто я не натыкался).
> И ещё, я когда-то такое делал на Фласке, есть ли смысл сейчас осваивать что-то другое? Типа FastAPI?..
Да, решил потыкать в фаст-апи. Правда, в примерах, которые попались пока что аффтар слишком яростно для меня надрачивает на асинхронность, ну да орган с ним, заодно вспомню универ, я с 4-го курса ни разу в многопоточности и асинхронность не тыкал (если не считать одновременных пинков процессов из bash, если кому интересно, расскажу).
Не думаю, что автор шапки прям прав насчёт того, что фласк это прямо легаси, но чего бы не взять более подходящий инструмент.
Внезапно, озадачился, стоит ли абстрагироваться от БД через явно модную сейчас SQL-Alchemy, или лучше сделать, как привык... А привык я к тому, что в БД создаются хранимки и вьюшки и сервер приложения имеет доступ только к ним и не имеет доступа к собственно таблицам вообще. Это позволяет слегка спрятать потроха на случай проблем и всяких инъекций.
Да, я очень давно не кодил тыр-тыр-прайз-подобных вещей.
Честно говоря, не представляю себе как можно с вима слезть на что-то другое но у меня в виме стаж 10+ лет лол
Я бы сперва смотрел какие к виму есть плагины для virtualenv и что там еще надо для такого проекта
>стоыт ле абстрагыроваца от БД цеґез явно модную сейчас SQL-Alchemy
Гэта не зробіць працу трывалага праграміста прасцей, але Алхімія не замінае напрасткі пісаць свае запыты па ранейшаму. Разам з ёй прапануецца карысны інструмэнт - Alembic DB migration tool. Гэта як git, толькі для базы дадзеных. Спрошчвае праце некалькіх праграмістаў або стварэньне патчаў для жывой сістэмы.
Лень переключать раскладку.
В латинице 26 букв, этого мне достаточно для переменных в любой программе. Ну иногда ещё по ситуации использую греческий. Кириллица не нужна.
Как "провалиться" в созданную директорию?
Пробовал присвойть переменную, но отладчик пишет None.
944x720, 0:05
>>67090
Вынесите уже в шапку как пользоваться интерактивным реплом в консоли и в IDLE. Куча подобных вопросов сама собой отпадет.
>>Название файла в переменную вынеси и проваливайся
Почесав нижнии полушария, я интерпретировал это так:
os.makedirs(datetime.now().strftime('%d_%m_%Y_%H_%M'))
a = datetime.now().strftime('%d_%m_%Y_%H_%M')
Работает, я остался доволен результатом.
А это нормально, или я "быдлокодер"?
>>os.chdir()
Именно это я хочу сделать, как бы положительный результат уже есть, но правильно ли я это делаю...
Все правильно делаешь. makedirs создает директорию (или валится с ошибкой если нет прав), chrdir меняет текущую директорию, передавай и туда и туда один и тот же путь и все дела.
makedirs возвращает None потому что предполагается что путь ты уже знаешь так что нет смысла ничего возвращать.
Есть еще похожая функция tempfile.mkdtem() -- она возвращает путь потому что он рандомный и зависит от системы
>>Есть еще похожая функция tempfile.mkdtem() -- она возвращает >>путь потому что он рандомный и зависит от системы
Спасибо, мил человек.
В vim я часто хожу на ХЗ-где, например, по ssh на серваке, который вижу в первый (и, возможно, последний) раз в жизни. Конечно, я не таскаю туда кучи плагинов... Вообще, я в виме делаю очень многое и тоже больше 10 лет, но как-то не приспособился его прокачивать.
>>66918
> Алхімія не замінае напрасткі пісаць свае запыты па ранейшаму.
Гэта зразумела. Іншая справа, што калі я аддзялю базу ад кода і забараню выконваць звычайныя запыты, то я атрымаю некаторы аператыўны прастор і бяспеку.
> Спрошчвае праце некалькіх праграмістаў або стварэньне патчаў для жывой сістэмы.
Пакуль што гэта для мяне не актуальна.
На то есть две причины. Хотя я виделпитоновский код на русском, но:
Во-первых это касется того, что объявил ты сам. Никто не переводил все эти def, for, if, print и прочее.
Во-вторых я неплохо знаком с 1С и даже когда весь язык на русском, это коробит из-за более сложных форм слов в настоящем русском. От конструкций типа "Новый Таблица" меня коробило всё время.
А ещё, я никогда не забуду тот момент, когда на одной из конференций я впервые в жизни поймал на себе завистливый взгляд. Это был взгляд какого-то сливающегося с толпой неудачника, взгляд преисполненный ненависти, презрения и желчного вожделения, направленного на мой Олимп. Наверное, он всю свою никчёмную жизнь писал на каком-нибудь си-шарпе или там на джаве, проводя долгие дни в одиночестве. И теперь начинал подсознательно догадываться, что долгие годы безуспешно пытался построить замок из навоза.
Быдлоколдер.
Ты дважды получаешь текущее время (с точностью до минуты).
Есть ненуленвая вероятность, что между этими снятиями сменится минута и в переменной `a` не будет лежать именно имя директории.
>В продуктовой конторе ты все можешь изменить
Мальчик, вот когда ты поработаешь в реальной продуктовой конторе и познакомишься с тамошним уровнем бюрократии, такой хуйни нести больше не будешь. Так что марш жсончики грузить, тасочки сами себя не закроют
????????????????????????????????????????????????????????????
>в реальной продуктовой конторе и познакомишься с тамошним уровнем бюрократии
ты деанонишься, только в нашей так
Запустил прогу с огромным списком через рекурсию, которая не могла закончится, не специально, но забыл поменять условие для проверки. Ну о таком не парешься, обычно быстро выдаётся ошибка и ничего не происходит, а тут в итоге всё загрузилось на 100%, и кое-как через пару минут смог закрыть пейчар.
И это всё пофиг, но во время этого процесса в ошибку вылетел qBittorrent и после чего диск стал грузить на 100% и работать всё медленно. Никакие перезагрузки не помогали, винда включалась очень медленно. Пока я заново не запустил qBittorrent и всё резко не восстановилось.
Видимо какой-то процесс от него остался, когда начал ломать работу диска и при этом даже перезагрузка компа его не останавливала, не думал, что такое возможно
Ну что я точно понял хоть, что работать со списками через рекурсию очень плохая идея для памяти.
Да, я сейчас разобрался получше и так понял эта проблема была связана с антивиром и видимо он сохранял состояние несмотря на перезагрузку винды и даже при запуске винды процесс продолжал.
Ну а антивирь чекал торрент, тот резко сломалс, антивирь не успел понять почему, опять же из-за загрузки всей памяти, и начал психовать, постоянно обращаясь к диску и нечего особо не читал с него, но активность 100% ему давал.
А как я заново запустил торрент, то антивирь его нашёл, успокоился и закрыл эту проверку.
По крайней мере такая у меня теория.
>>67822
Ну я на диск ничего не записывал при выполнение скрипта. И никакой записи и чтения не происходило особого, просто нагрузка 100% и всё
Нет, ты перекатывай.
https://goonlinetools.com/snapshot/code/#k5jdxa36c87uudqrxdavv
Далее - из консоли:
https://goonlinetools.com/snapshot/code/#51u36vlhbvgy5dxeeo52e
То есть инсёрт в скулайт из скрипта не проходит, или я делаю что-то не так. Ошибок при этом - никаких.
Без скобок это по-идее должно трактоваться, как переменная? Ну вот и упал бы с "NameError: name 'conn.commit' is not defined", что, жалко, что ли?
Спасибо, анон.
Это копия, сохраненная 7 февраля 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.