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

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

 Аноним 17/06/22 Птн 10:18:30 #1 №2381665 
pylog.png
Orphic-egg.png
Тред, посвящённый языку программирования Питон, #143

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

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

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

— А что ещё можно читать?
Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html

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

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

— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.

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

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

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

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

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
Аноним 17/06/22 Птн 10:32:54 #2 №2381684 
Блин, я чота совсем уже туплю от жары или чо ли. Не могу сообразить как через argparse получить последнюю запись в файле лога. Листинг прикладываю. https://pastebin.com/xaZae4Ag
Помогите, пожалуйста, понять где туплю.
Аноним 17/06/22 Птн 10:33:53 #3 №2381686 
>>2380942 →
>Возможно ли создать общий модуль? То есть если 2 программы его импортируют, одна что-то меняет внутри, то вторая это видит.
Если ты делаешь внутри одной программы, то есть когда два модуля импортируют другой, то именно так и происходит. Импорт идёт один раз, и у тебя полный доступ к этому модулю на запись. Это некая проблема для энтерпрайз-приложений, безопасность и всё такое.

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

Ну и не понятно зачем это вообще надо.
Аноним 17/06/22 Птн 10:42:28 #4 №2381689 
image.png
>>2381684
> parser.add_argument('read_log', type=get_last_line)
type это не имя функции, а тип значения переменной, которую ты из командной строки получаешь. Вообще в доке есть пример того, что тебе надо, прикреплено
https://docs.python.org/3/howto/argparse.html#introducing-optional-arguments

Ты получаешь так значение, а потом в виде параметра передаёшь его в свою функцию.

Аноним 17/06/22 Птн 10:48:47 #5 №2381693 
>>2381689
спасибо, анон. попробую вечером, а то от жары уже не могу соображать.
Аноним 17/06/22 Птн 11:05:20 #6 №2381704 
>>2381693
Не пизди, на улице 12 градусов
Аноним 17/06/22 Птн 11:37:27 #7 №2381724 
У меня такая уебищная маленькая однушка, это пиздец. Сколько на улице градусов столько и внутри. Окна в одну сторону выходят. Кондера нет.
Зато зимой вроде тепло, можно в труханах ходить, но лето пиздец. Либо другую хату искать, либо мини кондер брать, я хз.
Аноним 17/06/22 Птн 12:07:48 #8 №2381740 
Если делать свой язык в рамках импортозамещения, то как его можно назвать? Гадюка? Аншлаг?
Аноним 17/06/22 Птн 12:15:31 #9 №2381744 
>>2381740
Сталин-3000.
Аноним 17/06/22 Птн 12:39:25 #10 №2381777 
Прочитал как "Путин-тред"
Аноним 17/06/22 Птн 12:45:39 #11 №2381786 
>>2381742
Язык Программирования И Доставки Операцонно Рационализированных Алгоритмических Символов - 2022
Аноним 17/06/22 Птн 13:21:34 #12 №2381807 
>>2381744
Но так уже называется черенок для наказания либералов.
Аноним 17/06/22 Птн 13:24:35 #13 №2381808 
>>2381780
Вот, точно, Питун хорошее название, патриотическое.
И вместо украинской желто-голубой символики нужны цвета триколора.
Аноним 17/06/22 Птн 13:30:37 #14 №2381813 
Вообще если посмотреть, то по идее должно быть больше людей которые изучали программирование, и по теории больших чисел, программач должен бы стать мегапопулярным, а этот тред бы улетал в бамплимит каждый день - из-за новичков и залётных. Но такого не происходит. Поэтому вкатуны, не слушайте что вам тут говорят про перегретый рынок, идите вперёд - к своей мечте
Аноним 17/06/22 Птн 13:36:24 #15 №2381818 
>>2381813
Так нормисы не сидят на дваче. У них свои пикабу, хабры и т.д.
Аноним 17/06/22 Птн 13:47:31 #16 №2381824 
>>2381807
Да... Да... Ты начинаешь понимать.
Аноним 17/06/22 Птн 13:58:26 #17 №2381830 
Уже есть 1с, зачем ещё?
Аноним 17/06/22 Птн 14:09:55 #18 №2381837 
>>2381830
Уже есть 1Скрипт, которым можно импортозаместить Python

https://oscript.io/
Аноним 17/06/22 Птн 14:15:12 #19 №2381848 
16535116455720.mp4
>>2381813
Аноним 17/06/22 Птн 14:42:10 #20 №2381882 
>>2381740
РосКод
Аноним 17/06/22 Птн 15:48:27 #21 №2381960 
Пистонобояре подскажите. Решил вспомнить школу и поиграть с пидарами в кс1.6. Хочу написать програмульку чтобы при зажиме была пауза между выстрелами при зажиме. Суть была в том чтобы перехватывать клик мышки и потом прожимать с клавы огонь с паузой, самый простой костыль. Но блет либа keyboard тормозит, а с win32api по какой-то причине кска не хочет принимать зажим кнопки на клаве, в других приложухах работает. Попробовал пайинсталлер, стало быстрее но все ровно подлагивает. Слушаю ваши предложения. inb4: учить другой язык не хочу, я даже для питона туповат.
Аноним 17/06/22 Птн 15:59:12 #22 №2381970 
>>2381960
Сходил чая попил, дописал костыль в виде слипа на 50мс и все стало ок. Больше костылей богу костылей!
Аноним 17/06/22 Птн 17:29:21 #23 №2382047 
Сам себе стаковерфлоу
Аноним 17/06/22 Птн 17:55:41 #24 №2382077 
image.png
Добрые люди, подскажите пожалуйста, хочу сделать базу данных людей в дискорде с кармой но бот отказывается ее заполнять, ничего не делает, что можно с этим сделать?
Аноним 17/06/22 Птн 18:20:33 #25 №2382096 
>>2382077
Ебать, 2 раза файл открывать. Лучше sqlite используй или обычную субд
Аноним 17/06/22 Птн 18:22:48 #26 №2382098 
>>2382077
Ох блять, with + close, открытие файла в цикле по 2 раза. Ты еблан?
Аноним 17/06/22 Птн 18:47:47 #27 №2382118 
>>2381665 (OP)
Аноны, реквестирую ТГ каналы всяких сеньиоров , ультра компетентных людей, у которых подписчиков дай бог пару тысяч, очень хочу читать таких людей, а найти удалось лишь пару
Аноним 17/06/22 Птн 18:49:24 #28 №2382122 
>>2382118
Вопрос, а зачем там нужен ты? Чтобы что?
Аноним 17/06/22 Птн 18:50:39 #29 №2382123 
>>2382122
Чтобы читать их, перенимать их опыт. Ты сам не мог понять зачем мне это?
Аноним 17/06/22 Птн 18:52:46 #30 №2382124 
>>2382123
Читай на хабре, маня.
>читать их, перенимать их опыт
Это так не работает.
Аноним 17/06/22 Птн 18:56:23 #31 №2382125 
>>2382124
Но ведь тебя не должно волновать что там у меня работает, что там нет, тебе че жалко поделиться хорошими авторами? Ну да, отчасти мне бы было тоже жалко

Аноним 17/06/22 Птн 19:08:15 #32 №2382132 
Если я хочу лучше изучить решения хороших разработчиков, то код какого открытого проекта мне посмотреть?
Аноним 17/06/22 Птн 19:10:00 #33 №2382134 
>>2382096
Да можно и в жсон хуйнуть, а потом записать в файл. но да, зачем, если для этого придумали бд?
Аноним 17/06/22 Птн 19:10:52 #34 №2382135 
>>2382122
Что бы твои высеры здесь не читать
Аноним 17/06/22 Птн 19:11:50 #35 №2382137 
>>2382132
Никакого. Все нормальные проекты не находятся в открытом доступе. А те что находятся написаны максимально убого
Аноним 17/06/22 Птн 19:14:07 #36 №2382141 
>>2382096
>>2382098
Спасибо, разбираюсь с sqlite
Аноним 17/06/22 Птн 19:41:30 #37 №2382164 
>>2382141
С языком разберись лучше, ботодел мамкин
Аноним 17/06/22 Птн 20:06:24 #38 №2382176 
>>2382164
Так я и разбираюсь, пару дней назад начал
Аноним 17/06/22 Птн 20:13:49 #39 №2382183 
image.png
Как запустить программу в другой программе, и если первая выдаст ошибку, то сработал блок except во второй?
Аноним 17/06/22 Птн 20:24:39 #40 №2382195 
>>2382183
https://docs.python.org/3/library/subprocess.html#subprocess.check_output
Аноним 17/06/22 Птн 20:27:21 #41 №2382196 
>>2382183
Оборачивать весь контекс обработкой ошибок.
Аноним 17/06/22 Птн 20:43:57 #42 №2382211 
image.png
>>2382183
Короче, пикрил пока самый норм вариант
Аноним 17/06/22 Птн 21:12:52 #43 №2382232 
>>2382077
Не надо закрывать файл, если используешь контекстный менеджер (with). Он это за тебя делает.
Аноним 17/06/22 Птн 21:24:20 #44 №2382245 
>>2382232
Боюсь там не только это. Там ведь ещё двойной цикл, и на каждой внутренней итерации он сначала читает файл с константным именем, а потом записывает в него же данные.

Короче полный ад, анон просто не понимает, что хочет, логику, которую хочет реализовать.
Аноним 17/06/22 Птн 21:33:21 #45 №2382252 
>>2382141
Тут всё хитрее. sqlite в данной задаче скорее не нужен, хотя всё зависит от объёма данных.

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

Если у тебя несколько процессов одновременно данные заполняют, тогда есть проблема синхронизации данных, но тут в любом варианте могут быть проблема, и в случае sqlite, к слову, тоже, тогда уже нормальная БД нужна.
Аноним 17/06/22 Птн 22:38:43 #46 №2382300 
>>2382252
sqlite давно перешел рубеж в 2 Тб на бд.
Аноним 18/06/22 Суб 00:47:40 #47 №2382374 
Сделал прогу для отрисовки фрактала и бота для телеги, который по API получает jsonы и выдает котировки валют.
Это ктянет на джуна или хотя бы на стажера?
Аноним 18/06/22 Суб 01:04:04 #48 №2382375 
>>2382374
На пидора максимум
Аноним 18/06/22 Суб 03:25:17 #49 №2382437 
>>2382374
Вы ещё ос свою напишите.
Ваши пет проекты - хуйня подзаборная. На неё обратят внимание, если она будет приносить деньги, т.е, висеть на продакшене.
Все что нужно от джунов - исполнительность и не задавать тупые вопросы. Всё, вы работник месяца.
Аноним 18/06/22 Суб 05:42:04 #50 №2382452 
>>2381970
Ну и как? Нагибал всех?
Аноним 18/06/22 Суб 05:43:44 #51 №2382453 
изображение.png
Хэллоу!
Можете рассказать, как работает конструкция в return?
Аноним 18/06/22 Суб 07:06:24 #52 №2382469 
>>2382453
Хай, Return возвращает кастомной значение функции Def.
Аноним 18/06/22 Суб 11:31:04 #53 №2382605 
>>2382453
По уебански он работает. Посмотри на условия ключей, значение и вывод из дикта.
Кучу ненужных движений делает и плодит мусор в памяти.
Аноним 18/06/22 Суб 12:52:32 #54 №2382660 
image.png
>>2375824 →
>>2376311 →
>>2375864 →
Вот у меня функция проверки активности, которая вызывается каждые N минут. Мне нужно хранить предыдущие значения для сравнения. Где как не в глобальных переменных?
Без сложных слов плиз, я полный нуб.
Аноним 18/06/22 Суб 13:06:57 #55 №2382678 
>>2382660
>Detect_Activity
Толстый тролль.
Аноним 18/06/22 Суб 13:09:18 #56 №2382680 
>>2382672
Ну а что не так? :c
>>2382678
?
Аноним 18/06/22 Суб 13:10:51 #57 №2382684 
>>2382660
одно то что у тебя функция начинается с заглавной буквы тебя нужно обосцать
Аноним 18/06/22 Суб 18:26:59 #58 №2383017 
>>2382660
While loop и переменная внутри функции где есть луп. Хранить состояния вне функции, но внутри кода практика не очень хорошая. Если у тебя цикл, то while достаточно, если вызов по желанию левой пятки, то бд/файл.
Аноним 18/06/22 Суб 20:48:13 #59 №2383128 
>>2383017
>то бд/файл.
Что такое бд?
Аноним 18/06/22 Суб 20:52:42 #60 №2383134 
>>2382672
>>2382678
>>2382684
И в чём он не прав?
Аноним 18/06/22 Суб 22:29:07 #61 №2383162 
>>2383128
бондаж доминейшн
Аноним 18/06/22 Суб 22:43:04 #62 №2383167 
>>2383134
Да ни в чём, это сойбои используют маленькие буквы. Норм поцы пишут только капсом
Аноним 19/06/22 Вск 12:01:16 #63 №2383423 
Парняги, мб кто ведет свои опен сорс проекты, в которых можно поучаствовать не имея опыта промышленной разработки, или кто-нибудь участвует в таковых? Надоело кодить ради кода, хочется получать опыт на чем-нибудь полезном. Что умею: python 1 год, пол года django, postgresql и mysql, js базово - ничего не писал на нем еще.
телега @kirastel
Аноним 19/06/22 Вск 12:12:59 #64 №2383436 
>>2383423
Ответили?
Аноним 19/06/22 Вск 12:27:44 #65 №2383452 
Нужна бдшка для телеграм бота, очень маленькая, пяток табличек, максимум записей - 100. Какую выбрать?
Аноним 19/06/22 Вск 12:29:47 #66 №2383453 
>>2383452
Ну может не 100, ну 200-300.
Аноним 19/06/22 Вск 12:30:14 #67 №2383454 
>>2383453
В общем, максимум - 500.
Аноним 19/06/22 Вск 13:30:17 #68 №2383510 
К может лучше 1к? Ну, мало ли, набегут.
Аноним 19/06/22 Вск 13:30:44 #69 №2383512 
А там и до 10к рукой подать
Аноним 19/06/22 Вск 13:32:57 #70 №2383513 
>>2383452
"Очень маленькая бдшка" это типо чем меньше записей, тем проще её накатить?
Аноним 19/06/22 Вск 13:32:58 #71 №2383514 
Ну это уже вряд ли.
Аноним 19/06/22 Вск 13:33:46 #72 №2383516 
>>2383513
Не отвечай вопросом на вопрос.
Аноним 19/06/22 Вск 13:44:06 #73 №2383525 
>>2382453
Омерзительно работает, никогда так не делай.
Аноним 19/06/22 Вск 13:53:34 #74 №2383529 
>>2383516
Если это допрос, я ничего не скажу
Аноним 19/06/22 Вск 18:06:26 #75 №2383762 
123.png
1231.png
Здарова, нужна помощь, я не программист, но инженер и хочу автоматизировать работу. Как включить кнопку другого окна? не получается. Она выключается при нажатии "Сменить", но не включается при нажатии "Далее", ошибки не вылетают, что делать не пойму
Аноним 19/06/22 Вск 18:28:59 #76 №2383767 
Пиздец. Читаю первый том Лутца, поначалу шло очень хорошо, хоть и местами чувствовалась перегруженность, но на генераторах(550+) я увяз.
Какие-то ебанутые синтаксические конструкции для крайне редких кейсов использования, нон-стоп сует огромные коды в трех вариациях и под каждым пишет "но это хуйня, до изучения классов все равно полную картину не оценить", что вызывает какое-то внутреннее недовольство, учитывая, что классы он вынес аж во второй том.
Походу, пора передышку брать на практику и осмысление того, что уже узнал, но хотелось бегло сначала по всему курсу пробежаться, чтобы иметь представление о большей части кода.
Мимо новичочек
Аноним 19/06/22 Вск 18:37:47 #77 №2383772 
>>2383452
sqlite если stateful, ЛЮБАЯ другая если stateless.
Мне вот монга нравится, например.
Аноним 19/06/22 Вск 18:42:54 #78 №2383774 
Анон, выручай, я туплю.

Есть объект io.BytesIO(), в который пишется картинка.
Эта картинка заливается в S3 через boto3 методом upload_fileobj. Метод закрывает объект .close() после того как отправляет картинку, а мне ещё нужно её по-процессить далее по коду. Ну и при попытке сделать с ним что нибудь я получаю любимую "valueerror: i/o operation on closed file".
Вижу в качестве решения только копию, но жопой чую есть решение покрасивше получше.
Аноним 19/06/22 Вск 20:03:31 #79 №2383829 
>>2383793
>А нахуя ты его закрываешь и что ты ожидаешь получить после этого?
метод upload_fileobj в boto3 закрывает объект после отправки.
А я его процессить дальше хочу
Аноним 19/06/22 Вск 20:57:14 #80 №2383866 
>>2383774
Очевидно, не используй фреймворк, который не подходит под твою задачу.
пиздец уёбищное решение, конечно, со стороны авторов фреймворка
Аноним 19/06/22 Вск 21:37:47 #81 №2383888 
>>2383774
boto3 очень странный и уебищный фреймворк. Лучше вообще не используй его.
Селери работает с ним. Когда очередь находится в aws и там висит условно 100 тасков, он каким то хером запрашивает их с некоторым интервалом в 0.3-1с. И нет, дело не в настройках селери, это именно бото странно обрабатывает запросы.
Аноним 19/06/22 Вск 21:38:25 #82 №2383890 
>>2383866
>>2383884
Решил проблему созданием копии объекта перед отправкой.

file = copy.copy(image_bytes)
s3.upload_fileobj(file)

Да костыльно, но что поделать
Аноним 19/06/22 Вск 21:39:13 #83 №2383891 
>>2383888
Согласен, надо поискать альтернативу. Мне только s3 нужен, boto3 оверкилл для такого, ещё и неудобный.
Аноним 19/06/22 Вск 21:50:02 #84 №2383898 
image.png
Сап, пишу небольшой бот на telebot.

Есть меню из трех кнопок.

После нажатия add нужно обработать два входящих от пользователя два следующих сообщения двумя разными способами (записать в две переменные и внести в бд).

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

Не совсем понимаю, что указать вместо pass, ведь обработчик сообщений от пользователя то один, а значит и варик тоже, через условия в обработчике вроде хуй распишешь. Возможно дико туплю, но объясни, плес

Аноним 19/06/22 Вск 22:39:02 #85 №2383924 
>>2383891
Взял minio, just works.
sage[mailto:sage] Аноним 20/06/22 Пнд 01:06:47 #86 №2384034 
>>2383767
Лутца не читал, но слышал много хорошего про него. Думаю, что дело в том, что ты просто читаешь Лутца. А нужно не читать, а на читать и практике применять информацию. Генераторы просто контекст обратно возвращают, а так обычные функции. Я практически уверен, что ты не разобрался с обычными функциями еще
sage[mailto:sage] Аноним 20/06/22 Пнд 01:07:26 #87 №2384035 
>>2383774
Ну так отнаследуйся и переопредели метод лол. В чем проблема?
Аноним 20/06/22 Пнд 01:10:31 #88 №2384036 
>>2383423
А вот эти
> python 1 год, пол года django, postgresql и mysql, js базово
это в смысле опыт работы на этом? Или ты типа год назад начал питон изучать
>>2383767
>>2384034
Сага приклеилась(((
>>2383774
>>2384035
Сага приклеилась(((
Аноним 20/06/22 Пнд 09:34:03 #89 №2384185 
>>2383162
Обосрался
Аноним 20/06/22 Пнд 10:34:51 #90 №2384231 
А дайте какие-нибудь ссылки с упражнениями, уровень beginner, чтобы надрочить навык написания синтаксиса, по типу питотьютора. он сейчас не работает.
Аноним 20/06/22 Пнд 10:47:42 #91 №2384237 
>>2384231
>>2384231
бля тутор тоже не работает? что за пиздец?
бля сообщение не мог отправить, двач не работает
Аноним 20/06/22 Пнд 11:07:49 #92 №2384254 
>>2383898
if call.data == "add":
----вызываешь функцию для add
elif call.data == "del":
----вызываешь функцию для del
....

в answer записываешь нужный текст.
В функциях может происходить все что нужно (редактироваться сообщение, меняться кнопки)
Аноним 20/06/22 Пнд 11:36:12 #93 №2384273 
>>2384254
Спасибо, чет затупил.

Вопрос еще, как запоминать message.text от предыдущих сообщений?

допустим у меня цепочка запросов, в итоге все ответы должны пойти одной строкой в бд в одном запросе, но технически оно одним сообщением не отправляется. Конечно как варик юзать глобальную переменную, но это же хуйня решение если будет больше двух пользователей, не?
Аноним 20/06/22 Пнд 11:40:30 #94 №2384280 
>>2384273
Не очень понял что именно тебе нужно, но такое чувство что тебе нужен класс, если не хочешь глобальную переменную. Либо вообще в редис это всё сохранять
Аноним 20/06/22 Пнд 11:43:20 #95 №2384282 
image.png
>>2384273
>>2384280
уточнение. есть txt из первой функции и через bot.register_next_step_handler из второй. (вроде правильно написано). нужно записать оба txt, к примеру, в один список
Аноним 20/06/22 Пнд 11:47:53 #96 №2384283 
Как лучше сделать?

if a == "one":
a = 1
if a == "two":
a = 2
....

или

a = {"one":1, "two":2...}.get(a,a)

Второй вариант выглядит удобнее, но кажется, первый быстрее. Как быть?
Аноним 20/06/22 Пнд 11:54:22 #97 №2384290 
>>2384282
А. Самый тупой вариант - сделать дикт, в котором будет такая структура:
{
-----id_пользователя(берется из message): "собранная строка",
-----id_другого_пользователя: "другая собранная строка",
-----.....
}

И в принципе можешь делать этот дикт глобальным. Но лучше в классе это делать, конечно, особенно если планируешь делать бота большим. За счёт того что ты хранишь id пользователя - той проблемы которую ты написал не будет.
Аноним 20/06/22 Пнд 12:01:07 #98 №2384292 
>>2384283
Первый ещё и памяти меньше ест.
И можно юзать elif, после первого if.
Но если памяти не жалко, и у тебя задача такая же как ты написал, можно дикт составить через enumerate
Аноним 20/06/22 Пнд 12:13:43 #99 №2384304 
>>2384292
Да уж, удобно пиздец. Ладно, первый так первый.
Аноним 20/06/22 Пнд 12:57:45 #100 №2384318 
image.png
>>2384282
все проще, можно передавать txt аргументом.

Аноним 20/06/22 Пнд 16:39:40 #101 №2384470 
>>2383452
Для 100 записей тебе джейсонов за глаза хватит.
Аноним 20/06/22 Пнд 18:15:44 #102 №2384559 
1655738144585.png
1655738144589.png
1655738144589.png
Аноны, занимался кто ротацией логов? Я юзаю логгинг с конфигурацией через конгфиг охуеть. В конфиге определил хендлер и форматтер, в условном settings определил сам логгер нужного имени и импортирую его оттуда в остальные части приложения

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

Есть мысль обновлять логгер когда такая ошибка встречается, но это странно будет выглядеть, типо создать функцию-обертку которая будет принимать текст сообщения, типо writelog_debug(text: str) которая каждый раз внутри себя будет проверять на исключение PermissionError и в случае такого обновлять полностью логгер, так что-ли?

Была ли у вас похожая задача?
Аноним 20/06/22 Пнд 18:16:36 #103 №2384561 
Кто-нибудь смог запустить VS Code для редактирования на удаленном сервере? Чот подзаебался в Виме ковыряться.
Аноним 20/06/22 Пнд 18:19:32 #104 №2384565 
>>2384559
Так тебе же всё там написали: файл твой значит где-то ещё открыт.
Аноним 20/06/22 Пнд 18:21:47 #105 №2384572 
1655738507241.png
1655738507245.png
>>2384565
Да он мне говорит что используется logfile.log. Но какого хуя вообще, разве TimedRotatingFileHandler не должен следить за ротацией адекватной, как мне тогда закрыть его? Как-то перезапускать когда такая ошибка вылезает? Тогда обертку придется делать, я не знаю, адекватно ли это.
Аноним 20/06/22 Пнд 18:25:47 #106 №2384575 
>>2384572
Не понял, а почему у тебя используется logfile.log? И каким образом создаются файлы с логами на скрине? Короче думаю у тебя в настройках ошибка. Я сам просто интересовался этой ротацией логов, но не пробовал. Думаю, что костыль писать будет плохо
Аноним 20/06/22 Пнд 18:30:29 #107 №2384583 
1655739030083.png
1655739030085.png
>>2384575
Я ему явно указал шаблон и путь имени файла для которого будут создаваться логи разделенные по времени. Но такое ощущение что он тупо в logfile все подряд пишет а потом оттуда достает и по другим файлам таскает. Правда после того как 10 секунд пройдет он адекватно уже ничего не будет делать, конечно же. Шиза полная.
Аноним 20/06/22 Пнд 18:36:24 #108 №2384595 
>>2384583
Дааа, непонятно как это работает. Нужно понять что оно там пытается переименовать, то есть там где бросается исключение. Попробуй принт поставить в этом файле перед rename
lib\logging\handlers.py
и вывести source и dest
Аноним 20/06/22 Пнд 18:37:00 #109 №2384598 
>>2381740
уже есть один, аналог джава скрипта
Аноним 20/06/22 Пнд 18:45:24 #110 №2384618 
1655739924847.png
>>2384595
source: D:\proj\python\example\logs\logfile.log, dest: D:\proj\python\example\logs\logfile.log.2022-06-20_18-41-00
Как и думал, сначала складирует в логфайл, потом по другим файлам тащит. Через 10 секунд он не закрывает файл что ли и пытается его второй раз открыть? Странная хуйня. Иначе почему такая ошибка.
Аноним 20/06/22 Пнд 18:56:39 #111 №2384652 
>>2384618
>Как и думал, сначала складирует в логфайл, потом по другим файлам тащит.
В смысле? Он пишет в файл, имя которого ты указал, дальше переименовывает его согласно правилу которое ты указал. Но так как этот файл не закрыт, он не может его переименовать. Хз, как-то так наверное.

Я ща кстати на своём проекте всё-таки попытался запустить тоже такой логгер, только RotatingFileHandler, и с backupCount=5, так вот он всё пишет в один файл. То ли лыжи не едут, то ли я...
Аноним 20/06/22 Пнд 18:59:00 #112 №2384654 
>>2384652
>os.rename(source, dest)
А, да, я даун, переименовывает. Но так даже хуже, наверное.
>только RotatingFileHandler
Попробуй ради интереса class=handlers.TimedRotatingFileHandler поставить с маленьким интервалом, любопытно как у тебя пройдет это.
Аноним 20/06/22 Пнд 22:24:16 #113 №2384829 
photo2022-06-2022-12-11.jpg
>>2381665 (OP)
Есть несортированная 3d матрица внутри которой будет помещен полуконус. Полуконус будет нарастать. Нужен алгоритм сортировки ячеек матрицы как показано на пикче. Извиняюсь, нарисовал как сумел.
Радиус полуконуса на любой высоте известен, угол тоже.
Аноним 20/06/22 Пнд 22:38:41 #114 №2384836 
>>2384835
Проиграл с уместности пикчи.
Ты имеешь в виду numpy какой-нибудь?
Аноним 20/06/22 Пнд 22:52:25 #115 №2384842 
>>2384829
Не понял необходимое правило сортировки. Поясни
Аноним 20/06/22 Пнд 22:53:19 #116 №2384843 
>>2384561
А в чём конректно проблема?
Аноним 20/06/22 Пнд 22:59:32 #117 №2384846 
>>2384842
Ну вот задана некая точка с координатами которые располагаются в ячейке под номером один. С этой ячейки начинает "расти" полуконус. Он захватывает сначала ячейку #2 и #3, потом #4, #5, #6 и поднимается верхушкой на второй слой, захватывая ячейку #7 ну и т.д. На пикче я изобразил три слоя по оси z (высоте). Ячейки пронумерованы в порядке необходимой сортировки.
От угла полуконуса будет зависеть порядок сортировки ячеек в слоях. Типа если угол будет острее, то полуконус будет более плоский.
Аноним 21/06/22 Втр 00:41:04 #118 №2384877 
>>2384846
Хз, или я не отдупляю или у тебя условие малец кривое.
Найти расстояние от точки, центральной к матрице, которая осью является просто, если угол известен, это противолежащий катет, надеюсь шаг тебе известен и высота конуса для каждой итерации. Далее по расстоянию противолежащего катета, как я понял, это индескы матрицы, ты можешь отобрать все индексы, начиная хз откуда, пусть сверху, по уравнению окружности, в зависимости от индекса ты можешь определить, лежит ли ячейка с индексами x, y внутри радиуса.
Так ты получишь все ячейки, которые нужно отсортировать. Сортируешь, расставляешь и следующая итерация
Если в нумпае это делается в один вызов, то лучше пусть профильный кто-нибудь скажет
Аноним 21/06/22 Втр 00:45:31 #119 №2384878 
>>2384877
Не, наверно что-то не то. Слишком много вложенных циклов получается. Особенно определяя окружности от центра до радиуса
Аноним 21/06/22 Втр 05:33:37 #120 №2384950 
Можно ли в Django каким то образом присвоить полю классу неограниченное число значений,не прибегая к внешнему ключу?Кортежем там передать,списком,или ещё как то.
Аноним 21/06/22 Втр 09:41:40 #121 №2385039 
>>2384950
Ну json-ом, если ты про БД именно, потому что это не от Джанги больше зависит. Только если тебе по этим значениям не нужно фильтровать и т.д
Аноним 21/06/22 Втр 10:02:39 #122 №2385048 
>>2384846
Какая реальная задача стоит за этим полуконусом? Ты хочешь получить индекс ячейки матрицы при "подъеме" этого полуконуса?
Аноним 21/06/22 Втр 10:16:59 #123 №2385055 
>>2384654
У меня с этим хэндлером норм работает вроде. Как я понял, он пишет сначала в файл с именем которое ты указал, потом по истечении интервала, если были записаны логи, переименовывает его, подставляя суффикс. Так что проблемы реально у тебя. Посмотри всё вообще, где у тебя открыт файл logfile.log, попробуй вообще vscode закрыть и запустить из консоли.
И кстати, что делает опция delay=True? Документацию не читал. Я без этой опции запускал.
Аноним 21/06/22 Втр 10:39:44 #124 №2385069 
image.png
>>2377170 →
> Мамин борщ не вечен.
я у мамы охотник - так что всё норм котей =^-^=


эх, вот и пролетели 10 дней! что то я нихуя не отдохнул ебать, обычно через 4 дня безделия мозг отчаянно хватается за абсолютно любую хуйню, но щас чето домашние дела так прогружали качественно, что нихуя не почилил =(

ну делать нехуя, надо кумбекаться, страну кто то должен поднять с колен :э

как вы тут без меня выживали котятки :? кто куда вкотился, как чо вообще?)

>>2377172 →
> Типикал JS-ребенок
я датасаентист ты чорт охуевший

> играюче
показывай
> Не ври
пруф ми вронг
> Которая тащит за собой целый браузер блядь
допизды. нищюк плз, мое время дороже памяти
> нативные контролы ОС
уебищное индусскохуеглотское паскудство, каложоры должны иметь возможность прикоснуться к прекрасному.
Аноним 21/06/22 Втр 12:37:14 #125 №2385178 
>>2385048
Нужно построить модель рассыпания некоего материала. Для этого нужно заполнять ячейки матрицы как-то последовательно чтобы на каждом этапе получался правдоподобный полуконус.
В бд хранятся ячейки у которых есть объём. При очередной итерации насыпания я забираю из бд матрицу и пытаюсь досыпать в нужные ячейки материал. Для этого нужно их отсортировать предварительно (возможно есть какой-то другой способ где сортировка необязательна, но я пока не придумал) чтобы итерироваться по ним и заполнять материалом ячейку если она пустая.
Аноним 21/06/22 Втр 12:39:17 #126 №2385183 
>>2384877
Так вопрос как раз в том как эти ячейки отсортировать. А получить все ячейки которые пересекаются конусом это не проблема. Спасибо за помощь!
Аноним 21/06/22 Втр 13:07:25 #127 №2385219 
2018-03-15 06-59-02 Blender.png
2018-03-15 05-42-52 Screenshot.png
Screenshot20201202122324.png
image.png
>>2384829
блендер + еуклидиан дистанс из сайпая или шапеля


>>2385178
> Нужно построить модель рассыпания некоего материала
пиздец так ты дрочер... сразу бы так и написал
Аноним 21/06/22 Втр 13:12:31 #128 №2385223 
>>2385219
>пиздец так ты дрочер... сразу бы так и написал
Щито?
Аноним 21/06/22 Втр 13:23:31 #129 №2385234 
fnuWG2I2QCY-00-00-32.png
>>2385223
дестрашен модел на любой вкус уже давно все высрали и пересрали десятки раз


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

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


а тут ты пришол такой додик и решил зделоть лучшеее!))) нуну сука..


типичная низушная рашкоублюдская тема, где всех пиздорылых даунов с децва трахают крестами в помоешной стобальной шараге, и потом эта блядота кукарекает про зашквар от использования свободных наработок, а сама эта никчемная чмоня нихуя не может, нет амбиций, нет полета мысли, за свои обоссанные два мрота в убогом офисе за столом из опилок...
Аноним 21/06/22 Втр 13:49:43 #130 №2385245 
Spare-Me-Great-Lord-op-screenshot.jpg
>>2381665 (OP)
двачик есть вопрос по поводу Джанги
допустим я написал форму для добавления параллельных текстов с переводами все на js при отправке формируется json c отредактированными текстами и мапами с сответствиями оригинальных слов и переводами плюс мапы с переводами для отдельных слов. для шаблона
как мне теперь отправить из js скрипта все это на сервак на django? я не понимать пока
Аноним 21/06/22 Втр 14:17:52 #131 №2385261 
Допустим есть функция сохранения save_smth(path, data), которая внезапно просто сохраняет файл.
Какой хинт правильнее для неё указывать - None или NoReturn?
Аноним 21/06/22 Втр 14:22:49 #132 №2385263 
>>2385261
Ничего не указывай, очевидно
Аноним 21/06/22 Втр 14:25:12 #133 №2385266 
>>2385263
даун
Аноним 21/06/22 Втр 14:29:30 #134 №2385272 
>>2385234
Нихуя себе. С чего вдруг этого так разорвало. Что за бессвязная злобная хуита в ответ на безобидный пост.
Аноним 21/06/22 Втр 14:44:07 #135 №2385284 
>>2385272
потому что ты не пытаешься решить задачу, ты пытаешься подрочить и выебать питоняшкам голову (сука мразь)

я категорически против этого.
Аноним 21/06/22 Втр 16:09:50 #136 №2385381 
>>2385284
Да нет, я как раз пытаюсь решить очень конкретную задачу. И нет, я не занимаюсь 3d моделированием или играми, у меня веб-приложение на петоне. Мне не подойдут готовые инструменты вроде блендера или чего ты там предлагал, потому что как я их применю к своей ситуации? Потрошить код блендера чтобы выдрать оттуда алгоритм который занимается построением нужной мне 3d модели? Я слишком тупой для этого)
Аноним 21/06/22 Втр 16:25:34 #137 №2385394 
>>2385245
В жданге так же, как в любом другом веб-фреймворке - через html форму с помощью POST запроса (предпочтительный вариант).
https://docs.djangoproject.com/en/4.0/topics/forms/
Аноним 21/06/22 Втр 16:55:24 #138 №2385433 
>>2385394
я наверноее не так написал ну или я нубяра с нулевый уровнем да
это пронятно что post прото я не вдупляю как мне написать
так как я хочу передать данные не из полей формы а из переменной в js-скрипте я немного погуглил походу мне нужен ajax то есть я ввел в форму текст оригинала и перевод потом раскидал на них соответствия и у меня получился новый <p></p> в котором на каждое слово навешены span с id-шниками и мне нужно эту хрень отпраить в сервак чтобы он ее подставил в шаблон. но я хз как в этом случае делать тобишь я хочу передать сгенерированный html код для шаблона
Аноним 21/06/22 Втр 17:08:40 #139 №2385455 
Screenshot20210908231121.png
Screenshot20210908230840.png
Screenshot20210908230643.png
Screenshot20210908225936.png
>>2385381
> как я их применю к своей ситуации?
ты реально такой тупой?

> Я слишком тупой для этого)
тогда ладно)

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


я это кидал к тому что в графон и всякий датасаенс раздела computer vision - проще и нагляднее всего заходить через геймдев

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

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


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

и если у тебя есть сечения, то это уже 2д задача по работе с полукругом, ин эни кейс ц изи таск на вечер под ретбульчик и дарк днб
Аноним 21/06/22 Втр 17:16:47 #140 №2385473 
>>2384843
Пробую подключиться через ssh к своему локальному серверу, VS Code пишет, что удаленная система не поддерживает такое. На сервере Дебиан 11 без гуя.
Аноним 21/06/22 Втр 17:20:38 #141 №2385479 
>>2385069
о, шнобель вернулся. я уже думал, что ты умер от собачьего триппера
Аноним 21/06/22 Втр 17:27:47 #142 №2385497 
2022-05-12x13:54:43.jpg
>>2385473
доебан очевидная хуета для даунов, чуть лучше говнобунты, ставь арчик или кентось ( а потом два дня ебись с ключами ыыы )
Аноним 21/06/22 Втр 17:28:07 #143 №2385499 
>>2385272
местный шиз, уже десять лет не может вкатиться в айти и поехал крышей на этой почве.
Аноним 21/06/22 Втр 17:31:05 #144 №2385503 
>>2385178
Блин, хрен его знает, но на мой нубский взгляд нужно смотреть на модель нормального распределения и как-то ее разворачивать в обратную сторону что ли. https://youtu.be/ay7tapOGVAg
Аноним 21/06/22 Втр 17:33:20 #145 №2385507 
>>2385497
Зачем мне твоя картинка, если она не несет абсолютно никакой полезной нагрузки?
Аноним 21/06/22 Втр 17:37:45 #146 №2385512 
>>2385507
>>2385499
детектится по нерелевантным скриншотам большого разрешения (обычно 3440х1440) и ключевым словам типа "додик", "питоняша", "индусский хуеглот"
Аноним 21/06/22 Втр 17:38:43 #147 №2385514 
>>2385507
>имплаинг текст поста имеет какой-то смысл
Аноним 21/06/22 Втр 18:12:08 #148 №2385554 
>>2385507
> не несет абсолютно никакой полезной нагрузки
потому что ты слишком тупой чтобы понять информацию которую она несет

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


>>2385512
> большого разрешения
> 3440х1440
лол

тупой нищий додик - это минимально возможное разрешение для продуктивной работы без ущерба для здоровья
Аноним 21/06/22 Втр 18:40:56 #149 №2385598 
>>2381665 (OP)
Дублирование поста из >>2385555 →
Интересно мнение с вашей колокольни


Сап. Есть всратая wifi сеть где из-за конченной настройки DHCP время от времени отлетает доступ в интернет. Фиксится перезагрузкой роутера на другом конце, но каждый ебучий раз лезть в него через браузер и всё вводить уже заебало. Давным-давно кодил на питоне и плюсах, но по работе ушел в дизайн и не вернулся. Хочу ебнуть скрипт, который сам, за меня, при потере интернета мог бы подключится к нужному IP, через нужный порт, ввести логин/пароль и дождавшись ответа "прокликать" web-интерейс роутера до заветной кнопочки "перезагрузить".

Как это сделать? Есть Python 3 / C++ и навыки джуна в обоих. Пишу в IDE и запускаю всё на винде (ибо работаю с Adobe).
Пока вот нашел, что нужно написать скрапер. Скорее всего, его будет проще сделать на Python, чем на плюсах. Но хуй знает, может в vstudio портировать библиотеки так же просто как пайчарме - анон подскажи, т.к. личные проекты у меня были лишь на питоне. Данные из скраппера нужно будет сопоставлять и в зависимости от них - запускать тот или иной сценарий действий (участок кода). Можно ли это ебануть на С++ для быстродействия? Не хотелось бы сливать 500мб ОЗУ просто на скриптик перезагрузочки роутерушки.

Алсо: можно ли без разборки прошивать роутеры и модемы? Интересует Tp Link WR-* и Eltex 1402G-W. Пока нашел только Openwrt, но мне не нужна целая ось на роутере. Просто пару скриптов дописать в прошивку, чтоб катки в рейтенге не сливать. Для этого надо открыть файлы прошивки, а вот это прям совсем новое для меня. Хз даже как гуглить.
Ротацию сетей запилить, чтоб в случае проблем с одной - сразу подключался к другой и танк не слился, пока хил ебётся со своим конченным интернетом.

p.s.
питонус, не разочаруй, на тебе же автопилот так ахуенно было писать
Аноним 21/06/22 Втр 18:45:05 #150 №2385604 
>>2385598
> отлетает доступ в интернет. Фиксится
покупкой микротика


можно было не высерать шизостену текста которую один хуй асилят только бесполезные душнилы..
Аноним 21/06/22 Втр 18:47:35 #151 №2385608 
>>2385604
>пук
А на проде ты такой же полезный? Employee of the year наверн
Аноним 21/06/22 Втр 18:59:35 #152 №2385628 
Screenshot20180503022237.png
>>2385608
я админю гостинку загородом, рыл 50 (может больше, лиаз лень смотреть) держит четыре микротика (три из которых с вафлей)

так что твои обиженные пиздорыло-додиковские предъявы не в кассу от слова совсем
Аноним 21/06/22 Втр 19:10:24 #153 №2385639 
>>2385628
лол, шнобель ещё и админом-сетевиком в 2018ом подрабатывал))))
реально и жнец, и чтец, и датасаентист, и игродел, и на хуе игрец
Аноним 21/06/22 Втр 19:12:43 #154 №2385643 
>>2385598
прочитай инструкцию к своему роутеру, если у него есть SSH или Telnet доступ, то будет проще перезагружать его из сосноли, чем городить браузерокликалку. гугли в сторону "python ssh expect" или "python telnet expect"
а если нету, то или покупай нормальный роутер (мокротык - не нормальный), или гугли в сторону "python selenium webdriver"
Аноним 21/06/22 Втр 19:38:17 #155 №2385681 
>>2385643
>22 SSH
>80 HTTP
>1900 upnp

Благодарю за ответ, анон. Если позволишь, хочу ещё пару деталей уточнить. Процесс авторизации через telnet/SSH такой-же как через веб? То есть в строку нужно будет вводить логин, разделитель, пароль? ...и только после этого можно будет накидывать команды.
Если из опций только web, что гуглить? Это скорее вариант на чёрный день, но я разными сетями пользовался и всякое бывало. Интересно изучить другие пути, хотя бы в теории.
Аноним 21/06/22 Втр 19:59:55 #156 №2385698 
>>2385643
А почему ты считаешь, что там кликалка нужна будет? Скорее всего кликать не надо, надо только авторизоваться одним запросом, а потом перезапустить другим. А парсить ничего не надо. Это я так предполагаю.
Аноним 21/06/22 Втр 20:14:49 #157 №2385712 
>>2385681
> Процесс авторизации через telnet/SSH такой-же как через веб? То есть в строку нужно будет вводить логин, разделитель, пароль?

примерно так, только намного проще, чем в вебе.
в случае telnet/SSH сервер выдаёт простые строки текста типа "Login:" (и это всё), а в случае веба высирает десятки-сотни килобайт HTML кода, который надо распарсить (например, вытащить из параметров формы CSRF куку, если есть)
для упрощения парсинга telnet/SSH есть либа expect.

> Если из опций только web, что гуглить?
> >гугли в сторону "python selenium webdriver"
это софтина для эмуляции действий юзера в браузере. то есть как раз для того, чтобы "открыть веб админку, ввести логин и пароль, открыть нужную страницу, нажать кнопку ребут"

> А почему ты считаешь, что там кликалка нужна будет? Скорее всего кликать не надо, надо только авторизоваться одним запросом, а потом перезапустить другим. А парсить ничего не надо. Это я так предполагаю.
я назвал Selenium "кликалкой" потому что он этим и занимается - "кликает" на кнопки, эмулируя дейтсвия юзера.
Аноним 21/06/22 Втр 20:28:28 #158 №2385733 
изображение.png
изображение.png
>>2385712
>пикрил
Мы не одинаковы

>это софтина для эмуляции действий юзера
Мне казалось могут быть более "изысканные" решения, которые можно было бы всунуть хоть в малинку, хоть в смартфон, хоть в контроллер. Какой-нибудь универсальный парсер который можно было бы просто подгонять под новые модели, дописывая в коде нужную часть, для новых прошивок или моделей. Но я уже нашел статью на хабре, где разбирают ssh вариант и там всё как ты и описал.
https://habr.com/ru/post/342194/
Разве что JS момент смутил. Но ведь хэш можно и питоном посчитать, для получения токена? Дальше прям в скрипте отправляем токен в запрос и всё должно перезагрузится. В случае проёба с хэшем, будет таймаут как при подключении в сеть? как это работает в WPA2
Аноним 21/06/22 Втр 20:36:22 #159 №2385740 
>>2385733
Selenium это и есть "универсальный парсер"

> https://habr.com/ru/post/342194/
> ssh вариант
наркоман? это веб вариант, а не SSH.

хз что именно там за токен, не вникал, но подозреваю, что какой-нибудь аналог CSRF куки/токена.
помимо этого у особо умных роутеров для входа в в веб админку ещё и капчу с картинки ввести нужно, и вот именно из-за этих токенов и капч лучше пользоваться телнетом или ссш, ибо там всё намного проще.
Аноним 21/06/22 Втр 20:38:51 #160 №2385749 
>>2385698
> А почему ты считаешь, что там кликалка нужна будет? Скорее всего кликать не надо, надо только авторизоваться одним запросом, а потом перезапустить другим. А парсить ничего не надо. Это я так предполагаю.

вообще да, в древних роутерах можно было отправить два запроса - авторизоваться, выдрать куку из ответа, и вторым запросом отправить команду ребута.
но в современных роутерах там всякое яваскриптовое говно, для которого может понадобиться эмуляция браузера.
Аноним 21/06/22 Втр 20:44:01 #161 №2385756 
>>2385740
ошибся ссылкой
Аноним 21/06/22 Втр 21:11:52 #162 №2385781 
>>2385733
"Изысканные" решения это просто вызвать router.reboot()? А в чем "изысканность", если внутри такой либы будут стопицот строк кода под капризы всех рутеров?
Аноним 21/06/22 Втр 21:45:17 #163 №2385807 
>>2385433
Ну да, делаешь json из своих данных и передаёшь на бекенд ajax'ом
Например
https://stackoverflow.com/questions/10078085/how-to-send-multiple-data-with-ajax-jquery
Вместо "welcome.php" пишешь свой роут, на который будешь отправлять данные. Ну и на бекенде в жданге принимаешь по этому роуту свои данные и делаешь с ними что тебе нужно.
Аноним 21/06/22 Втр 21:46:37 #164 №2385809 
>>2385781
Универсальность. Волшебная кнопочка "сделать красиво так чтоб всё работало". Только за последние пол года меня приглашали фиксить всратые сети трижды. Причем, во второй раз было комбо из старенького Eltex и ебучего яблочного роутера. Благо, решить удалось иначе. До этого поднимал мост на двух тплинках, которые для этой роли не очень годились.
Был момент когда надо было перенастроить модем dhcp в нём, но документов с логином/паролем к нему не было, а от провайдера никто не приезжал, мол "работает - значит проблем нет, идитенахуй". Там приходилось его аппаратно перегружать и если он отрубался часа в 4 утра, приходилось ждать ещё 4 часа пока владелец проснётся, прочтёт инструкцию и сам всё сделает.
Крч это пиздец. Я хуй знает... До кали руки не доходят, а осваивать целую ось ради того, что делать можно скриптом - как-то не оч перспектива.
Аноним 21/06/22 Втр 21:47:05 #165 №2385810 
>>2385473
Проверь что всё правильно сделал по этому гайду
https://code.visualstudio.com/docs/remote/ssh
Аноним 21/06/22 Втр 21:52:44 #166 №2385815 
>>2385809
Чтоб была универсальность, надо чтоб роутеры были универсальными, а они всех цветов радуги
Аноним 21/06/22 Втр 22:10:47 #167 №2385831 
Подскажите плз, мб кто знает, почему у меня в дрф не работает write_only для ImageField в сериализаторе? Я чет не могу такого нагуглить. У меня есть в модели поле image, но сериализатор возвращает относительный урл, а я хочу чтобы на гет запрос возвращался абсолютный, поэтому я добавил в сериализатор новое поле image_url, которое SerializerMethodField и описал его в сериализаторе. Оно работает, но и просто image с относительным путем тоже показывается, я пробовал указывать image=Imagefield(write_only=True) и в Meta в extra_kwargs, но оно все равно в гет запросе приходит.
Аноним 21/06/22 Втр 22:29:30 #168 №2385851 
Spare-Me-Great-Lord-op-screenshot.jpg
>>2385807
спасибо няша
Аноним 21/06/22 Втр 23:21:16 #169 №2385868 
сап двощ, есть ли какая-то либа или что-то еще, что может мне в коде сконвертировать json файл swagger 2.0 в json файл openapi 3.0?
Аноним 22/06/22 Срд 00:38:37 #170 №2385889 
>>2385868
Пошел нахуй, причем здесь питон?
Совсем пидорасы обленились на питоне и на сайт сваггера не могут зайти
Аноним 22/06/22 Срд 04:20:55 #171 №2385922 
>>2385598
Если можешь видеть, что инет крякнул, то скрипт можно затолкать в supervisor и при отвале инета он будет запускать твою кликалку.
Аноним 22/06/22 Срд 04:21:58 #172 №2385923 
>>2385512
тоже заметил замечательные картинки
Аноним 22/06/22 Срд 12:58:50 #173 №2386173 
Безымянный.png
Безымянный2.png
>>2385807
Анон я вроде что-то написал для проверки, оно проходит, но не выводится. как мне понять, что я получаю то, что я отправляю?
Аноним 22/06/22 Срд 13:00:37 #174 №2386176 
>>2386173
возвращайся в свою убогую вижул студио и ублюдские кресты, индусский хуеглот..
Аноним 22/06/22 Срд 13:37:51 #175 №2386206 
Необходимо написать тг-бота, у которого будет функция приветствия и отправка правил канала в лс челу, который только что вступил в канал. Такое возможно - это 100%, видел подобное у некоторых тг-каналов, но вот не знаю как это самому сделать( help!!!
Аноним 22/06/22 Срд 14:25:48 #176 №2386249 
>>2386173
пиздец ты долбоёб.
во-первых, GET-ом данные передают только мудаки
во-вторых, request.open("GET", url + data);
Аноним 22/06/22 Срд 14:26:54 #177 №2386251 
>>2386176
оффни свой шнобель, ты сам линукс чуть больше трёх лет используешь (и ещё не факт, что без винды в дуалбуте)
Аноним 22/06/22 Срд 14:57:58 #178 №2386286 
>>2386270
Я не согласен.
Аноним 22/06/22 Срд 15:08:47 #179 №2386299 
>>2386249
Т.е половина апишек в интернетах
Аноним 22/06/22 Срд 15:11:53 #180 №2386302 
>>2386299
половина интернетов - мудаки
Аноним 22/06/22 Срд 15:14:29 #181 №2386308 
>>2386249
бля наебнулся немного
переправил все на POST все отправляется но в консоль не выводит. почему7
Аноним 22/06/22 Срд 15:16:09 #182 №2386310 
>>2386308
если POST тогда верни request.open("GET", url) как и было, вместо url+data
Аноним 22/06/22 Срд 15:16:13 #183 №2386311 
>>2386302
Один ты не мудак
Аноним 22/06/22 Срд 15:16:27 #184 №2386314 
>>2386310
ой, ("POST", url)
ну ты понел
Аноним 22/06/22 Срд 15:17:23 #185 №2386316 
>>2386311
> > половина
лолка, я из второй половины
Аноним 22/06/22 Срд 15:19:07 #186 №2386320 
>>2386308
подозреваю, что надо раскомментировать строку с заголовком Content-Type form-urlencoded
Аноним 22/06/22 Срд 15:20:23 #187 №2386321 
>>2386310
я и не изменял сразу на post переставил
request.onreadystatechange норм срабатывает значит все ушло на сервер. но django нихрена не хочет отображать в консоли. значит я творю хуйню там
Аноним 22/06/22 Срд 15:23:38 #188 №2386324 
>>2386308
и ещё, насколько я понимаю, ты педоном выводишь переменную с названием "json_data", но в запросе таких переменных не передаёшь.
вместо неё у тебя там тупо шлётся строка данных без каких-либо названий.

попробуй
request.send( "json_data=" + "[{\"key\":\"hello\"}]" )
Аноним 22/06/22 Срд 15:29:57 #189 №2386333 
>>2386324
>request.send( "json_data=" + "[{\"key\":\"hello\"}]" )
не нихрена не помогает
бля я заебался уже третий день ебусь с этой хуйней
Аноним 22/06/22 Срд 15:45:25 #190 №2386351 
Безымянный.png
>>2386333
как я понял у меня не срабатывает функция на сервере. но почкму?
Аноним 22/06/22 Срд 15:53:44 #191 №2386364 
>>2385473
вскод из шела вызван?
Аноним 22/06/22 Срд 15:55:08 #192 №2386365 
Безымянный.png
>>2386351
короче да.
ну и как мне связать эту хрень с js?
Аноним 22/06/22 Срд 15:56:36 #193 №2386367 
>>2386351
убери AddText.html и попробуй
request.send( "json_data=" + '{"key":"hello"}' );
Аноним 22/06/22 Срд 15:57:08 #194 №2386369 
>>2386365
ты походу ослеп (и отупел) от ублюдской белой темы
Аноним 22/06/22 Срд 16:07:09 #195 №2386385 
>>2386364
Нет, стандартным плагином ВС подключаюсь. Ща по туториалу еще раз пройдусь, может там не все так очевидно.
Аноним 22/06/22 Срд 17:37:48 #196 №2386454 
>>2386173
Во-первых, забудь уже про XmlHttpRequest. В 2022 уже давно есть fetch https://learn.javascript.ru/fetch
Лучше будет если ты из консоли браузера будешь тестировать отправку запросов - так гораздо эффективней.
Во-вторых, отправляешь ты запрос на вьюху AddText, а принт у тебя в ShowText. Как оно по-твоему должно работать?
В-третьих, исключи пока из цепочки шаблон AddText.html (кстати, что там у тебя?). Пока просто принтом выводи в консоль то, что с клиента отправляешь.
По какому туториалу делаешь? На сайте джанги, надеюсь?
Аноним 22/06/22 Срд 17:43:58 #197 №2386458 
>>2386385
Для начала попробуй подключиться к своему серверу через консоль, не используя vscode вообще
ssh user@host:port
Аноним 22/06/22 Срд 17:51:50 #198 №2386464 
>>2386454
>Во-первых, забудь уже про XmlHttpRequest. В 2022 уже давно есть fetch
Гемора с использованием фетча в итоге будет на порядок больше, чем с xhr, а пользы никакой.

Асинк элементарно сделать и на базе xhr, 10 строк всего один раз написать.
Аноним 22/06/22 Срд 17:57:25 #199 №2386469 
>>2386464
Какой гемор? Там одна строчка для теста нужна в консоли
let response = await fetch('url');
Аноним 22/06/22 Срд 18:03:38 #200 №2386476 
>>2386469
а теперь попробуй таймаут на неоткрытое соединение добавить
Аноним 22/06/22 Срд 18:30:16 #201 №2386492 
>>2386476
Зачем?
Аноним 22/06/22 Срд 18:47:29 #202 №2386505 
>>2386492
Затем что у тебя сервис может не отвечать и это надо как-то контролировать.

По-моему буквально недавно уже были срачи на эту тему на этой доске, но в другой теме.
Аноним 22/06/22 Срд 20:15:11 #203 №2386562 
Безымянный.png
Безымянный2.png
>>2386454
умный анон, ты здеся?
я пофиксил. только у меня почему то у json тип как None
Аноним 22/06/22 Срд 20:37:58 #204 №2386579 
>>2385270
Но ведь сохраняющая функция тоже ничего не возвращает.
Получается в любом случае def save_smth(path, data) -> None: ?
Аноним 22/06/22 Срд 20:43:22 #205 №2386582 
>>2386580
Спасибо.
Аноним 22/06/22 Срд 20:53:08 #206 №2386588 
Всем Q.
Посоветуйте, пожалуйста, книгу по алгоритмам. Пока прочитал статью на вики о сортировках, статью по big O notation, реализовал сортировки и хэшмапу.
По-проще взять что-то типа Шеня или сразу продвинутые книги типа Кормена и Elements of programming interviews in Python? Графы и матешу хорошо знаю, цель - в Яндекс/ФААНГ без проблем проходить алгоритмические секции, само собой практиковаться буду на литкоде, книга нужна чтоб въехать в основные объекты и методы.
Аноним 22/06/22 Срд 21:29:39 #207 №2386629 
>>2385261
Зачем указывать? Это просто для читаемости или какой-то смысл есть?
Аноним 22/06/22 Срд 21:31:28 #208 №2386630 
>>2386629
>просто для читаемости
Это.
Придется кому-то еще твой говнокод ковырять, чтобы меньше вопросов было.
Аноним 22/06/22 Срд 21:50:19 #209 №2386645 
>>2386630
Но зачем, если нормальная иде сама показывает что она может вернуть?
>>2386635
Я уж подумал что он нужен для оптимизации работы. Для тайпчекера хз, у меня все функции однозначные, либо что-то, либо none. Обычно указываю тип когда возвращается какая-то конкретная модель. Для просты типов не пишу, но для параметров указываю тип всегда.
Аноним 22/06/22 Срд 21:55:19 #210 №2386650 
>>2386648
У меня проекты в среднем на 3к строк кода, делаю один. Смотреть и проверять никто не хочет, да и не может, питонистов нет. Работают и ладно.
Аноним 22/06/22 Срд 21:59:37 #211 №2386659 
>>2386657
Битбакет
Аноним 22/06/22 Срд 23:42:01 #212 №2386742 
>>2386562
Выведи принтом просто request.POST без get и прочей ебалы и посмотри что там у тебя.
Аноним 23/06/22 Чтв 00:14:15 #213 №2386764 
>>2386742
Спосибо антоша я уже пофиксил. Надо было вместо post вынимать json из request.body
Аноним 23/06/22 Чтв 00:18:12 #214 №2386765 
>>2386742
>Выведи принтом просто request.POST
Кстати эсти так делать там было что то типа: (query_хуйня ())
А вот body как раз json выдаёт
Короче немного въехал в эту залупу на полшышечки
С html-формами намного проще
Аноним 23/06/22 Чтв 09:41:13 #215 №2386882 
photo2022-06-2309-35-51 (2).jpg
photo2022-06-2309-35-51.jpg
Доброго дня аноны
Учусь этому вашему программированию и нуждаюсь в дельном совете, с меня как всегда
Есть одна тян функция пик 1. В ней цикл for выполняется 1 раз и закрывается пик 2. Если этот же цикл я достану из функции, то он будет работать и прогонит все 5 позиций (т.е. задаст вопросы 5 раз и запишет результаты) Как фиксить функцию?
Аноним 23/06/22 Чтв 10:09:20 #216 №2386900 
Screenshot1.png
>>2386886
Если сделать так будет тоже самое
Аноним 23/06/22 Чтв 10:12:53 #217 №2386903 
>>2386900
У тебя questions = () - кортеж, который есть не изменяемый тип.
поэтому он и содержит только одно значение из твоего цикла
Аноним 23/06/22 Чтв 10:15:47 #218 №2386908 
>>2386903
Если сделаю список questions = [] тоже ничего не меняется)
Аноним 23/06/22 Чтв 10:17:36 #219 №2386910 
>>2386908
А Question() у тебя что делает?
Аноним 23/06/22 Чтв 10:18:48 #220 №2386912 
>>2386908
>>2386910
Ты nlp-модель что ли гоняешь?
Аноним 23/06/22 Чтв 10:19:54 #221 №2386913 
>>2386910
import random
import requests


class Question:

def __init__(self, q_text, difficulty, correct_answear):
self.q_text = q_text
self.difficulty = difficulty
self.correct_answear = correct_answear
self.q_asked = False
self.user_answear = None
self.points = 0

def get_point(self):
"""Возвращает int, количество баллов."""
difficulty_list = ["1/5", "2/5", "3/5", "4/5", "5/5"]
for point in difficulty_list:
if point == self.difficulty:
points = (self.points + int(point[0])) * 10
return points

def is_correct(self, user_answear):
"""Возвращает True, если ответ пользователя совпадает
с верным ответов иначе False.
"""
if user_answear == self.correct_answear:
return True
return False

def build_question(self):
"""Возвращает вопрос в понятном пользователю виде"""

return f"Вопрос: {self.q_text}\n Сложность: {self.difficulty}"

def build_feedback(self):
"""Возвращает верно или неверно отвечен вопрос"""
if self.is_correct(user_answear) is True:
return f"Ответ верный, получено {self.get_point()} баллов"
else:
return f"Ответ неверный, верный ответ - {self.correct_answear}"


response = requests.get('https://jsonkeeper.com/b/JZXI')
response = response.json()
random.shuffle(response)


def create_questions(response):
"""Создание и вывод списка questions"""
questions = []
for element in response:
q_text = element['q']
difficulty = element['d'] + "/5"
correct_answear = element['a']

questions.append(Question(q_text, difficulty, correct_answear))

return questions


def statistic(questions):
"""Запись и вывод статистики"""
summ_point = 0
summ_correct_answear = 0
if questions.is_correct(user_answear) is True:
summ_point += questions.get_point()
summ_correct_answear += 1

return summ_point, summ_correct_answear


questions = create_questions(response)

print(questions.build_question())

user_answear = input("Ответ:")
print(questions.build_feedback())

summ_point, summ_correct_answear = statistic(questions)
print("Вот и всё!")
print(f"Отвечено {summ_correct_answear} вопроса из {len(response)}")
print(f"Набрано баллов: {summ_point}")
Аноним 23/06/22 Чтв 10:20:47 #222 №2386915 
>>2386913
Отступы поехали
Аноним 23/06/22 Чтв 10:22:19 #223 №2386918 
>>2386913
Попробовал через append хуйня пока получается
Аноним 23/06/22 Чтв 10:22:50 #224 №2386919 
>>2386913
>>2386900
Сейчас ты просто перезаписываешь какждый раз questions.
Поменяй
questions = () на questions = []
А внизу question = Question(q_text, difficulty, correct_answer) на
questions.append(Question(q_text, difficulty, correct_answer))
Аноним 23/06/22 Чтв 10:54:13 #225 №2386944 
>>2386882
Если надо выйти из цикла пиши break или как там, если вызвать return нет возможности.
Аноним 23/06/22 Чтв 10:55:09 #226 №2386945 
>>2386919
Работаит, пасеба
>>2386930
Да блять я месяц назад только ступил на этот тернистый путь, че ты начинаешь
Аноним 23/06/22 Чтв 11:12:03 #227 №2386955 
Очередной вкатусик-макакен не прочитав ни страницы доки собирает говнофункции из спизженные кусков кода, а потом идёт ныть на двачи, что язык_нейм в штаны насрал и ничего не работает. Никогда такого не было, и вот опять.
Аноним 23/06/22 Чтв 11:29:50 #228 №2386967 
>>2386952
>>2386955
Все написано лично мной идите нахуй, а по поводу ныть, я до этого вечер убил на поиски решения без спрашивания советов, не помогло к сожалению
Аноним 23/06/22 Чтв 11:40:17 #229 №2386970 
Зачем нужен celery, если есть ламповый и няшный RQ? А django_rq ещё и поддерживает нативные питоновские объекты искаробки.
Аноним 23/06/22 Чтв 13:13:35 #230 №2387019 
Безымянный.png
Двощ как избавиться от этой залупы?
сохранил html вставки в базе данных но jinjia ебашит их в шаблон как текст. как фиксится?
Аноним 23/06/22 Чтв 13:22:53 #231 №2387027 
>>2387019
понял нужно |safe
Аноним 23/06/22 Чтв 13:34:23 #232 №2387037 
>>2381665 (OP)
Вроде можно было как-то прямо в строчке коннекта к БД напрямую задать драйвер для коннекшна, например asyncpg, как это сделать тут скажем:
postgresql://postgres@localhost/test

?
Аноним 23/06/22 Чтв 14:48:44 #233 №2387101 
А есть какой-нибудь чатик локальный на <100 человек в тг по питону?
Аноним 23/06/22 Чтв 14:59:39 #234 №2387114 
>>2387101
чтобы что?
Аноним 23/06/22 Чтв 15:00:10 #235 №2387116 
>>2387114
чтобы убивать время
Аноним 23/06/22 Чтв 15:04:29 #236 №2387128 
image.png
>>2387116
=( умри
Аноним 23/06/22 Чтв 15:16:40 #237 №2387150 
>>2387114
Получить внимание конечно же. На подтираче любят маленькие конфочки, там легче всего внимание заиметь.
Аноним 23/06/22 Чтв 15:43:27 #238 №2387185 
>>2387150
> Получить внимание
додиков которые не умеют гуглить?


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


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


конфобляди хуже червя-пидора, не зря так говорят.
Аноним 23/06/22 Чтв 16:03:05 #239 №2387211 
Пилю приложуху на fastapi. Там много ручек, хочу чтоб на каждую ручку распространялись свои пермишны по следующему правилу: на get - Read, на post и update - Edit и на delete - Delete. Как мне эту проверку сделать динамически? Пермишны передаются в токене при каждом запросе
Аноним 23/06/22 Чтв 18:04:10 #240 №2387342 
>>2387211
Аутентификацию запилил через middleware. Везде советуют напрямую в роут писать что-то типа:
token: HTTPAuthorizationCredentials = Depends(auth_scheme)

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

Но с пермишнами пока не знаю че делать
Аноним 23/06/22 Чтв 18:07:47 #241 №2387348 
Сам себе стаковерфлоу.
Аноним 23/06/22 Чтв 18:12:24 #242 №2387354 
Ты бы хоть документацию на апи прочитал что-ли. У тебя есть роутер с параметрами, туда суешь свой dependencies, а потом от этого роутера пишешь маршруты router.get(), router.post() на один и тот же маршрут можно разные роутеры использовать и получить разную реакцию.
Читайте уже доки наконец, а?
Аноним 23/06/22 Чтв 18:13:22 #243 №2387355 
>>2386458
Не, это норм проходит. Я почему и хочу ИДЕ использовать, потому что заколебался с Вимом)
Аноним 23/06/22 Чтв 18:38:07 #244 №2387372 
>>2384561
Работаю на виртуалке через ssh. Подключение изначально было через логин/пароль, потом сделал ключи.
Аноним 23/06/22 Чтв 18:42:36 #245 №2387375 
>>2387372
Подключение идёт только по ip без порта.
В конфиге что-то вроде
Host 1.2.3.4
HostName 1.2.3.4
User root
IdentityFile sshkey

Если последнюю строку на писать, то будет просить пароль. Использую плагин remote ssh
Аноним 23/06/22 Чтв 18:44:57 #246 №2387378 
>>2387375
sshkey это файл с rsa ключами. Туда можно несколько адресов прописать
Аноним 23/06/22 Чтв 19:38:22 #247 №2387427 
>>2386385
Вызови его для начала из шела, так он наследует все переменные среды этого шела.
Аноним 23/06/22 Чтв 19:40:33 #248 №2387429 
>>2386505
И закончился он тем, что сервер должен закрывать соединение при таймауте, а не клиент костылить это через вырвиглазные проперженные интерфейсы.
Аноним 23/06/22 Чтв 23:15:06 #249 №2387526 

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

Ну как так? почему количество не переходит в качество?
Аноним 23/06/22 Чтв 23:47:21 #250 №2387543 
>>2387526
Как на питоне регулярки могут быть сложными, если они везде одинаковые блядь
Аноним 24/06/22 Птн 00:06:01 #251 №2387553 
>>2387543
во-первых, перечитай сообщение.
в read_csv нужно написать обратную регулярку для разделителя.
Классическая схема, когда вставляешь ворованную из инета регулярку и в цикле читаешь файл - будет тормозить.
Кроме того, даже если получится, в read_csv engine='python' тормозит не меньше.

Просто какой-то масштабный датасаентиский фейл с энтим питоном
Аноним 24/06/22 Птн 00:41:44 #252 №2387571 
>>2387553
Регулярки сами по себе медленные
Аноним 24/06/22 Птн 08:16:50 #253 №2387623 
>>2387553
Не пробовал читать построчно?
Аноним 24/06/22 Птн 08:31:01 #254 №2387626 
>>2387553
Нахуя тебе read_csv?
Аноним 24/06/22 Птн 09:14:47 #255 №2387634 
16290143710582.png
Скачал я питон, начал делать самые простые задачки из интернетов.
Вот допустим у меня есть лист, хочу его проверить а не пустой ли он? Нагуглил метод count или еще че-то, хер пойми что он возвращает, какой параметр на вход и тп. Я гуглю опять этот метод и на мутных сайтах разбираюсь.
Что я делаю не так? Где-то есть развёрнутая документация официальная.
Наверняка я занимаюсь залупой и гуглить как проверить лист на пустоту неправильно, а можно открыть где-то лист и посмотреть все его методы и свойства.
Аноним 24/06/22 Птн 09:59:20 #256 №2387653 
>>2387634

Допустим у тебя есть лист container.

>проверить а не пустой ли он
if container:
---print("ne pustoi")
или
if len(container) > 0/ if len(container):
---print("ne pustoi")

>посмотреть все его методы и свойства
dir(container)/dir(list) - если ты в консоли питона

Аноним 24/06/22 Птн 10:45:29 #257 №2387680 
>>2387634
>Где-то есть развёрнутая документация официальная.
Где-то есть. Возможно даже в шапке треда! У питона самая лучшая дока из всех языков.
Аноним 24/06/22 Птн 11:05:12 #258 №2387689 
>>2387623
>>2387626
а если подумать?

это самый быстрый в питоне способ анализировать лог-файл.
Аноним 24/06/22 Птн 11:11:27 #259 №2387691 
>>2387372
Виртуалка с гуем?
Аноним 24/06/22 Птн 11:22:25 #260 №2387701 
Есть ли сайты где можно посмотреть идеи для петов? Типа "сервис по получению курса валют из нескольких источников и вывод в браузер" На работе совсем размяк и давно не занимался еблей с архитектурой, хотелось бы чего-то такого.
Аноним 24/06/22 Птн 11:24:30 #261 №2387704 
>>2387701
https://2ch.hk/pr/res/2185476.html
Аноним 24/06/22 Птн 11:34:18 #262 №2387713 
>>2387691
Я это не пробовал, но вроде бы VSCode позволяет удалённый запуск, то есть ты работаешь примерно как с сетевой файловой системой, но всё-таки не совсем, то есть код на сервере запускается и всё такое.

Не пробовал и не изучал, как это работает.
Аноним 24/06/22 Птн 11:36:06 #263 №2387716 
>>2387713
>>2387691
Собственно вот тут описание
https://code.visualstudio.com/docs/remote/ssh
но я не пробовал, хотя может стоит потратить время и научиться. Пока по привычке работаю через vim, когда так надо
Аноним 24/06/22 Птн 11:46:10 #264 №2387722 
>>2387716
Попробовал, просто элементарно запускается. Но это под линуксом, все ключи давно прописаны в authorized_keys и т.п.
Аноним 24/06/22 Птн 12:06:16 #265 №2387737 
>>2386900
Пизда просто, что за инвалиды. Иди паскаль учи, опездол
Аноним 24/06/22 Птн 12:41:49 #266 №2387769 
>>2386588
Книг по алгоритмам куча, поэтому тут главное не распыляться. Возьми одну - того же Шеня, например, и проработай основательно. Есть ещё такого же уровня книги Окулова (например, "Программирование в алгоритмах"). Кормен (~1500 стр.) в этом отношении - это скорее справочник (но дотошный). Параллельно решай задачки на литкоде и смотри в обсуждениях к задачам лучшие решения (там есть голосовалка). Авторы таких решений зачастую сопровождают их толковыми объяснениями. Можно многому научиться.
Аноним 24/06/22 Птн 12:52:56 #267 №2387777 
>>2387701
да видно что ты давно не занимался.
какой нормальный человек будет это писать в виде пет-проекта, если есть airflow и superset ?
абсолютно провальная в маркетинговом смысле идея.

Писать надо что-то востребованное.
Аноним 24/06/22 Птн 13:10:05 #268 №2387788 
>>2387691
Нет, без.
Аноним 24/06/22 Птн 13:11:47 #269 №2387791 
>>2387713
Работает отлично. Можно открывать папки как в обычном vscode. В окне виджета можно выбирать к кому подключаться, плюс сохраняет историю подключений по адресам и папкам.
Аноним 24/06/22 Птн 14:25:48 #270 №2387836 
>>2387777
> небольшой пет размять кости
> коко маркетинг кудахтах бизнесу ненужна это провал кокок
понял тебя дружище
Аноним 24/06/22 Птн 15:01:38 #271 №2387860 
>>2387836
Ну так-то он прав, такой пет будет иметь очень малую весомость. Смысл от того что ты будешь копировать чужие идеи и код.
Аноним 24/06/22 Птн 15:07:04 #272 №2387865 
>>2387860
>такой пет будет иметь очень малую весомость
Весомость для кого? Это в прод не поедет, в резюме не вставится. Просто сделать с нуля проект, продумать архитктуру, настроить CI/CD задеплоить на какой-нибудь сервак и забыть с чувством удовлетворения.

>Смысл от того что ты будешь копировать чужие идеи и код
Ты не разделяешь техническую реализацию и востребованную идею, мне только первое интересно.
Аноним 24/06/22 Птн 15:24:36 #273 №2387884 
>>2387860
душнила плз
Аноним 24/06/22 Птн 16:26:23 #274 №2387941 
>>2387865
Так сейчас же всё примерно по одному шаблону делается.
Аноним 24/06/22 Птн 16:39:38 #275 №2387948 
>>2387941
Шаблон то может один (микросервисная залупа), но реализовать ее можно кучей разных способов, например, даже для RPC можно использовать различный протоколы и подходы к реализации и передаче моделей данных.
Аноним 24/06/22 Птн 16:44:10 #276 №2387953 
>>2387948
Люди просто запутались во всех этих залупах, уже наверняка все всё попробовали. Нужно просто выбрать самый оптимальный и не ебать друг другу мозги.
Аноним 24/06/22 Птн 16:51:51 #277 №2387957 
>>2387953
>Нужно просто выбрать самый оптимальный и не ебать друг другу мозги
Для этого нужно что бы программирование стало настоящей инженерной специальностью, а не как сейчас
мимо
Аноним 24/06/22 Птн 18:02:33 #278 №2388025 
image.png
>>2387957
> настоящая инженерная специальность
как же мамкины максималисты заебали
Аноним 24/06/22 Птн 18:08:31 #279 №2388031 
>>2387957
> не создал свой транзистор - не программист
Аноним 24/06/22 Птн 18:31:28 #280 №2388055 
>>2386458
Кое-как отыскал, почему VS Code не запускался. И это, блеать, потому что у меня на сервере стоит 32-битная версия Дебиан.
Аноним 24/06/22 Птн 18:54:11 #281 №2388077 
>>2387769
Спасибо, так и сделаю.
Аноним 24/06/22 Птн 21:51:53 #282 №2388317 
Ну что, на Python 3 уже можно переходить?
Аноним 24/06/22 Птн 23:30:29 #283 №2388373 
>>2388025
лол, я видел этот мост и уже тогда подумал какие же муриканцы тупые, но то что это на 100% тянский мост я не знал)))


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

>>2388031
+++
Аноним 24/06/22 Птн 23:31:38 #284 №2388374 
>>2388317
Минуя питон 2?
Аноним 25/06/22 Суб 02:59:57 #285 №2388455 
>>2388374
На второго питона можно было перейти нщё в 2020, когда он окончательно стабилизировался.
Аноним 25/06/22 Суб 06:40:35 #286 №2388465 
>>2387791
А автокомплит работает? Code видит твой питон и виртуальное окружение на удаленном сервере?
Аноним 25/06/22 Суб 12:38:04 #287 №2388576 
Народ, вопрос, а есть какой нибудь коснтруктор(аля ноукод) под андройд приложение, что бы можно было изи ГУИ накидать и сделать бекенд на питоне, ну что бы без смс и ригистрации
Аноним 25/06/22 Суб 12:46:27 #288 №2388581 
>>2388576
есть
Аноним 25/06/22 Суб 13:20:30 #289 №2388599 
>>2388465
Виджеты отдельно устанавливаются на виртуалку, выбираешь нужные, какие включить, а какие нет. Так что там работает всё.
Аноним 25/06/22 Суб 13:21:11 #290 №2388600 
>>2388599
Там кстати и виджет для докера работает исправно.
Аноним 25/06/22 Суб 13:47:01 #291 №2388616 
>>2388581
Че за интсрумент?
Аноним 25/06/22 Суб 14:14:23 #292 №2388647 
>>2388031
Но ведь так и происходит, практические везде где я работал с микросервисами пилили свои охуенные костыли для RPC поверх какого-нибудь протокола и свою костыльную сериализацию/десериализацию, один ебанутые даже через Postgres это сделали. Если сравнивать со схемотехикой, то ты действительно каждый раз пилишь свой транзистор потому что единого стандарта нет. Более того, материалов по запиливаюнию универсальных очередей тоже нихуя нет, в книжках каждый приносит свой личный опыт уровня "примерно почуствовал".
Аноним 25/06/22 Суб 14:30:32 #293 №2388654 
>>2388647
Можно подумать, популярные либы это не костыли от крупных проектов.
Аноним 25/06/22 Суб 14:37:03 #294 №2388657 
>>2388654
Важен тот факт, что они приняты как стандарт, благодаря которому ты можешь не писать еще один костыль, а пилить бизнес-логику. Строитель не должен изобретать свои марки бетона, а строить здание.
Аноним 25/06/22 Суб 14:57:22 #295 №2388669 
>>2388657
Они приняты потому что проект выстрелил, не более. Пару лет назад выкладывали твичевский говнокод, от которого даже джуны фейспалмы ловили. Он тоже должен быть стандартом?
Аноним 25/06/22 Суб 15:15:33 #296 №2388679 
Ананасики, расскажите, пожалуйста, почему вы выбрали питон? Почему не, например, джава или сишарп?
Аноним 25/06/22 Суб 15:32:02 #297 №2388698 
>>2388679
Почему ты считаешь что можно выбрать только один язык?
sage[mailto:sage] Аноним 25/06/22 Суб 15:41:39 #298 №2388715 
image.png
> почему вы выбрали питон?
кек звучит как будто жёнку на всю жизнь выбираешь
продолжаю охуевать от здешних вкатунцов
Аноним 25/06/22 Суб 16:12:05 #299 №2388747 
>>2388698
>>2388715
Почему ты считаешь, что я так считаю? Ты на время вката три языка сразу изучал?
Ну что за токсики, весь вопрос через жопу вывернули.
Не отвечай даже.
Аноним 25/06/22 Суб 16:17:18 #300 №2388754 
>>2388679
Начал выбирать язык в 10-11 классе где-то, что бы в вузе уже что-то было к началу обучения. С жабой не сложилось потому что сразу пошел на джавараш и разочаровался когда узнал что он платный. С сишкой тоже были проблемы, так как была ебля с Visual Studio и код просто не запускался. Пистон был прост как палка и позволял быстро решать задачки в ЕГЭ. Так и продолжил, сейчас дополнительно ГО педалю еще.
Аноним 25/06/22 Суб 16:19:47 #301 №2388760 
>>2388747
>Почему ты считаешь, что я так считаю?
Потому что ты задаёшь такие вопросы.
Я вкатывался поздно, и знал уже 4 языка=) просто не работал программистом.
Аноним 25/06/22 Суб 16:38:57 #302 №2388786 
>>2388760

> Потому что ты задаёшь такие вопросы.
А не потому ли, что решил выпендриться 4 языками, пропустив мимо суть и контекст моего вопроса? :3

Так в итоге что? Вот ты вкатился, но сидишь в питон треде. Сейчас на работе какими языками/стеками пользуешься как основными? Если была возможность выбирать, то почему на этих остановился? Или как у тебя это происходит, новый проект - новый стек? кек Давай рассказывай, раз уж хвастаешься, чего как из жопы кота серпантин тянуть приходится.
Аноним 25/06/22 Суб 16:46:10 #303 №2388792 
>>2388581
плюсую, точно есть, я тоже знаю


>>2388786
питоняшка топ! какие нахуй еще могут быть вопросы?

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


для веба жс-параша, для низушной хуйни сишечка - всё.

Аноним 25/06/22 Суб 17:30:42 #304 №2388832 
>>2388679
Выбрал вначале потому что была вакансия и я был с ней поверхностно знаком. Как коммерческий язык в вебе.

А так я много чего пробовал. Си, плюсы, джаву, матлаб (работал), го, ну и вузовские типа делфи, паскаля и ассемблера. Так же языки плк, работал на них.

Вообще, хотелось бы работать на го, но с учетом опыта на питоне, придётся очень много наверстать, т.к на го нет такой гибкости, там всё делается однозначно по одному шаблону, плюс горутины работают по другому.
Джаву не хочу, тк слишком много ооп, не заходит такой стиль.
Аноним 25/06/22 Суб 17:33:24 #305 №2388835 
>>2388832
Но если надо будет в проекте освоить что-то новое - освою, куда деваться. А личные предпочтения вот такие.
Аноним 25/06/22 Суб 17:36:00 #306 №2388841 
>>2388786
Я не сижу в питон треде=) ток мимо проходил. Питун использую для скриптиков, кодогенерации и т.п., не как основной.
В работе приходится использовать Шарп, кресты, сишку, жс и кучу дсл, даже свой компилятор писал.
Доволен?
Аноним 25/06/22 Суб 21:06:41 #307 №2388993 
>>2381665 (OP)
Есть проект Pyjion. Это JIT-компилятор, который компилирует код на Python в код, который исполняется на .NET 6, если кто не знает. Вопрос, можно ли с его помощью корректно скомпилить и запустить проект на Django?

https://www.trypyjion.com/
https://github.com/tonybaloney/pyjion
Аноним 25/06/22 Суб 22:01:24 #308 №2389025 
>>2388993
>Pyjion does not currently support "with" blocks.
>This is on the roadmap (and related to try..except).

Пчел...
Аноним 25/06/22 Суб 22:13:46 #309 №2389038 
Гайс, нужно на собесе ответить с помощью какого АПИ и какой сервис/микросервис делал? Имел дело только с Джанго и ДРФ соответственно. Помогите придумать ответ(опыта нет разумеется), думал рзогнать что-то про регистрации через JWT токены, но не придумал как красиво ответить
Аноним 25/06/22 Суб 22:35:59 #310 №2389066 
>>2389048
Не работал с фастапи, думаю обосрусь с ходу
Аноним 26/06/22 Вск 00:01:17 #311 №2389122 
>>2389025
>>2389028
https://pyjion.readthedocs.io/en/latest/wsgi.html
Аноним 26/06/22 Вск 01:07:48 #312 №2389192 
А если одну большую функцию разбить на несколько маленьких с передачей аргументов из одной функции в другую, то это может замедлить выполнение кода?

То есть, в одной функции все переменные в одном месте, а чтобы с этими переменными в разных функциях работать, нужно их передавать из одной функции в другую.
Аноним 26/06/22 Вск 01:12:10 #313 №2389195 
>>2389194
А на вопрос ответить?
Аноним 26/06/22 Вск 01:38:00 #314 №2389209 
>>2389207
Спасибо
Аноним 26/06/22 Вск 02:00:55 #315 №2389214 
>>2389192
Если какая-то строка кода выполняется только в одном месте, то смысла делать из неё функцию нет.
Аноним 26/06/22 Вск 04:45:17 #316 №2389237 
>>2389214
Если эта строка несёт в себе определённую логику, отдельную от логики соседних строк, то часто будет правильнее вынести её в отдельную функцию. Часто бывает такое, что в итоге эту строку нужно будет задействовать где-нибудь ещё
Аноним 26/06/22 Вск 05:56:05 #317 №2389239 
>>2389214
А ты размышляй о коде не как о строках, а как о единицах действия или лексеммах
Аноним 26/06/22 Вск 08:08:36 #318 №2389254 
>>2389192
На самом деле замедляет. Вызов каждой функции создаёт отдельный фрейм со своим пространством имен и пистон не очень эффективно их менеджит, что хотят поправить в следующих релизах. С другой стороны, если в твоей программе такие задержки критичны, то лучше выбрать другой ЯП
Аноним 26/06/22 Вск 08:42:19 #319 №2389266 
>>2389192
Это называется абстракция, и это нормально. Все кто пишут что то против - дебилы, и работали только с laba1.cpp.
Аноним 26/06/22 Вск 10:08:11 #320 №2389298 
А что с питоновским лого случилось, знает кто? Что-то много постов, где над ним издеваются, но в комментах никто не пишет, что случилось.
Аноним 26/06/22 Вск 12:06:23 #321 №2389366 
>>2389237
Ещё раз. Если они больше нигде не используется и не планируется использование ни завтра, ни через сто лет, то выносить её за пределы в отдельную функции смысла нет.
>>2389239
Код это машинные команды, а не предмет лингвистики и философии
Аноним 26/06/22 Вск 12:08:38 #322 №2389367 
>>2389266
Все кто так делают - дауны с окр, которые всё по полочкам по порядочку ставят вместо того чтоб работать.
Каждую строку в функцию оберни ещё, чтоб стишок получился.
Аноним 26/06/22 Вск 12:32:32 #323 №2389387 
>>2389366
>Ещё раз. Если они больше нигде не используется и не планируется использование ни завтра, ни через сто лет, то выносить её за пределы в отдельную функции смысла нет.
Есть. Хотя бы для того, чтобы протестировать.
Аноним 26/06/22 Вск 13:15:15 #324 №2389426 
>>2389367
А вот и самощащита дебила, лишь бы оставаться в своем мирке.
Аноним 26/06/22 Вск 13:52:27 #325 №2389457 
>>2389426
Что ж поделать, таков путь
Аноним 26/06/22 Вск 15:40:28 #326 №2389553 
>>2389366
>не планируется
а оно никогда не планируется, потому что то что планируется - сразу вынесено.

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

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

```
type Meter = int;
type SquareMeter = int; // для языков с номинативной типизацией

fn lenin_area(length Meter, width Meter) -> SquareMeter
{
length * width
}

fn format_lenin(area SquareMeter) -> String
{
"Найдена площадь Ленина: #{area} m2"
}

fn main(args)
{
print format_lenin(lenin_area(args.length, args.width));
}

```

У format_lenin и lenin_area - разные задачи, и они не смешиваются.
Аноним 26/06/22 Вск 15:53:05 #327 №2389573 
Как правильно реагировать на таймауты? Повторно делать запрос пару раз и после давать ошибку?
Аноним 26/06/22 Вск 16:22:06 #328 №2389619 
>>2389573
сразу давать ошибку, не?
Аноним 26/06/22 Вск 16:25:56 #329 №2389624 
>>2389573
Зависит от бизнес-требований
Аноним 26/06/22 Вск 17:09:36 #330 №2389654 
>>2389619
Ну бывает один сервис факапит очень редко. А второй факапит всегда из-за специфических параметров в запросе, например, он падает при запросе конкретного id, но это не критично. А для первого критично.
Разные обработчики им прикручивать? У меня он один, навороченный, повторные запросы при дисконнекте со стороны сервиса, правильная реакция при 429 и до кучи всего.
И ещё бывает что сервис фактически обработал запрос, но не даёт ответа, повторный запрос уже лучше не делать. Так что пока хз как.

Делаю запросы на кучу апи разной степени паршивости. Забить хер не прокатит, таймаут это не ошибка я думаю, по крайней мере с моей стороны. Лучше повторные сделаю.
Аноним 26/06/22 Вск 19:07:06 #331 №2389772 
Как в строке определить глагол? Допустим я разбил строку через split(). Был уверен что это можно сделать какой нибудь регуляркой, а это неебаться теоретическая задача, ещё и не самая быстрая. Или есть что то быстрое?
Аноним 26/06/22 Вск 19:21:38 #332 №2389788 
>>2389772
Никак, потому что хуй ты формализируешь, что такое глагол. Это естественный язык, а не формальная грамматика. Хочешь разбирать русский язык на морфемы - либо изобретай свои эвристики и ешь говно, либо пользуйся сторонними либами типа pymorphy2
Аноним 26/06/22 Вск 21:14:12 #333 №2389887 
Антуаны и Антуанетты. Как вы видите будущее пистона в этой федерации?
Аноним 26/06/22 Вск 21:31:38 #334 №2389901 
>>2389887
удваиваю
Аноним 26/06/22 Вск 21:44:44 #335 №2389912 
>>2389887
Как вы видите будущее в этой федерации?
Аноним 26/06/22 Вск 21:46:14 #336 №2389914 
>>2389887
Если не наладят поставку серверного б/у железа из китая - все очень плохо, как и для других высокоуровневых языков. Ценность железки станет выше стоимости человекочасов, как раньше и снова на первый план выйдут высокопроизводительные вещи типа плюсов или раста. Скорее всего полностью спрос удовлетворить даже при удачном исходе не удастся. Если нет планов переезжать и россиюшки, то на горизонте +5 лет при сохранении текущей линии партии питон не лучший выбор.
Аноним 26/06/22 Вск 21:46:51 #337 №2389915 
С фронта на бэк на Джанго прилетают fetch реквесты с фронта. А как между ними различать?
Если один фетч реквест, то тогда просто: if request.headers.get('X-Requested-With') == 'XMLHttpRequest':
А если несколько фетчей разных? Заголовки какие-то придумывать или как?
Аноним 26/06/22 Вск 21:47:50 #338 №2389916 
Как зовется декоратор, который переопределяет передаваемую функцию, передавая ей указанные в аргументах параметры? Никак не вспомню
Аноним 26/06/22 Вск 21:52:08 #339 №2389918 
>>2389914
Типа много будет работы для плюсовиков или растаманов. На родных 200 нм или тайваньских чипах до 25 мгц в целом много не построишь.
Аноним 26/06/22 Вск 21:52:37 #340 №2389919 
>>2389887
Зависит от будущего самой федерации. Если тут будет не сильно хуже, чем в Сомали, то и питон, наверное, будет.

А что с ним нет так? Это если МС уйдёт, то шарпистам не очень хорошо будет, вроде как потребность в стеке снижается. А питон на открытых технологиях.

Или ты тот анон, которого цвета шведского флага в лого возбуждают? Да всем похуй. Тем более все знают, что мы против сша-англии спецоперируем, а у них цвета флага бело-сине-красные.
Аноним 26/06/22 Вск 22:01:17 #341 №2389924 
>>2389919
>А что с ним нет так?
Слишком много жрет для железа, которое на весь золота будет
Аноним 26/06/22 Вск 22:01:34 #342 №2389925 
>>2389918
Ты примитивно рисуешь все эти санкционные истории.

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

Проблема для топ железа, индустриального, для серверов, особенно для железа поддержки мобильной связи и т.п. Что просто так в магазине не купишь и не привезёшь.

Или там гугол-эпл могут отключить себя в федерации и все эти мобильные сервисы вроде такси, банков и др. перестанут существовать. Но их и сейчас не на питоне реализовывают.
Аноним 26/06/22 Вск 22:04:43 #343 №2389929 
>>2389924
>Слишком много жрет для железа, которое на весь золота будет
Это актуально только для хайлоад серверов. Для нетбуков с дешёвыми целеронами производительности уже с запасом под питон.
Аноним 26/06/22 Вск 22:07:43 #344 №2389932 
>>2389925
Я слушаю, что по РБК говорят, на Хабре пишут, что говорят во всяких конфах в тг. По РБК вот буквально только что сказали, что у нас не только американские и европейские фирмы уходят, но и Хуавей, только тихо и незаметно. И люди ищут возможность купить бу оборудование в Африке (передача была про операторов сотовой связи).

О каком IT будет идти речь, если у нас инет откатится хотя бы до уровня dial up эпохи?
Аноним 26/06/22 Вск 22:09:25 #345 №2389934 
>>2389929
>Для нетбуков с дешёвыми целеронами производительности уже с запасом под питон.
Ага, представил кластер из говноноутов на которых рутуб будет крутится.
С серверным железом уже проблемы, причем серьезные. Заплатить х2 за плюсовика уже выгоднее, чем докупить пару стоек в датацентре. Речь уже идет не о скорости разработки и выхода на рынок, а о самой окупаемости айти-отрасли.
Аноним 26/06/22 Вск 22:11:04 #346 №2389936 
>>2389934
О самом существовании отрасли.
Аноним 26/06/22 Вск 22:12:43 #347 №2389938 
>>2389932
Проблема для операторов мобильной связи есть. Потому что там очень специфичное железо, которое в магазинах не продаётся.

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

Хуавей может тихо уходит, но пока его сетевое корпоративное оборудование в русских магазинах доступно, как и сиськи.

Если мобильный инет будет откатываться, то причём тут питор? Питон жрёт ресурсы сервера, а не ресурсы канала связи.
Аноним 26/06/22 Вск 22:13:50 #348 №2389939 
>>2389938
>Но с процессорами такой проблемы нет, это куда более массовое железо, ликвидное.
Пользовательское - да, серверное - нет.
Аноним 26/06/22 Вск 22:18:54 #349 №2389944 
>>2389916
Декоратор с пробросом аргументов функции?
Аноним 26/06/22 Вск 22:21:04 #350 №2389947 
>>2389934
>С серверным железом уже проблемы, причем серьезные.
Зашёл на сайты русских хостеров, что дают в аренду выделенные сервера. Цены очень даже низкие. Я не вижу, где проблемы. ПОКА проблем нет.

>Пользовательское - да, серверное - нет.
Обычные сервера это тоже довольно массовый сегмент, что продаётся в магазинах, купить и ввезти большой проблемы не составляет. Ну может будет в итоге 2x в цене, это не game change изменение.

Всё равно труд разработчика первичен. Или принципиальная возможность на железке что-то запустить.

Ты не путай проблемы мобильной отрасли и обычное железо, даже серверное. Оборудования для базовых станций в свободной продаже нет, всё на прямых контрактах.
Аноним 26/06/22 Вск 22:21:07 #351 №2389948 
>>2389938
Люди в целом будут потреблять меньше инета (за счет уменьшения моб трафика), меньше новых сервисов и меньше поддержка старых, меньше емкость рынка труда для прогеров. Хотя бы даже так грубо если смотреть.
Аноним 26/06/22 Вск 22:22:39 #352 №2389953 
>>2389916
functools.partial
Аноним 26/06/22 Вск 22:24:53 #353 №2389957 
>>2389948
Допустим, но причём тут питон?

Возможные проблемы с отраслью не ослабляют позиции питона относительно других языков.
Аноним 26/06/22 Вск 22:28:35 #354 №2389963 
>>2389947
>Обычные сервера это тоже довольно массовый сегмент, что продаётся в магазинах, купить и ввезти большой проблемы не составляет. Ну может будет в итоге 2x в цене, это не game change изменение
>>2389957
>Возможные проблемы с отраслью не ослабляют позиции питона относительно других языков.

https://www.ixbt.com/news/2022/04/25/servery-kupit-nevozmozhno-dazhe-na-vtorichnom-rynke-krupnejshie-itkompanii-prosjat-pravitelstvo-rossii-najti-im.html
Железа УЖЕ нет, все, конец, доедаем остатки. Все что будет потреблять больше условных 10 мегабайтов оперативы пойдет в утиль. На этом фоне низкоуровневые языки будет на порядок предпочтительнее, чем питон, жс, жаба, шарп.
Аноним 26/06/22 Вск 22:30:09 #355 №2389966 
>>2389957
А тут уже речь не про Питон, а в целом про отрасль. Я думаю, что Питон не ослабнет хотя бы как скриптовый вспомогательный язык или что-то для тестирования. Детей опять же в школах учить и в кружках.
Аноним 26/06/22 Вск 22:32:58 #356 №2389969 
>>2389963
Так, а Раст под кем ходит в плане авторов языка? Чот не охота С и С++ учить.
Аноним 26/06/22 Вск 22:45:18 #357 №2389978 
>>2389963
Смотри сам сайты магазинов.
Купить сервер Dell сложно, переплата будет в 5-10 раз относительно цены в США. Это бренд. У них какой-нибудь R540 стоит условно 3000 долларов, у нас больше миллиона рублей просят.

Собрать стоечный вариант на базе SuperMicro, сколько помню нормальный бренд, уже какие-то адекватные деньги будет. Дороже, но адекватно. И некоторых других брендов.

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

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

Короче это второстепенная проблема на фоне массы других, которые есть.
Аноним 26/06/22 Вск 22:47:07 #358 №2389980 
>>2389978
>Короче это второстепенная проблема на фоне массы других, которые есть.

Ты про айти или вообще?
Аноним 26/06/22 Вск 22:50:44 #359 №2389983 
>>2389980
"Вообще" влияет и на айти, обещанная глубокая трансформация не может не задеть ИТ отрасль.

Но ХЗ как чего будет, нет смысла прогнозы строить вообще.
Аноним 26/06/22 Вск 22:52:52 #360 №2389985 
>>2389983
Как же хочется сейчас лежать на жопастой армянке и смотреть на красивые горы за окном, дышать горным воздухом, а не вот это все...

Даже ебучий Узбекистан с такими темпами будет более айтишным, чем РФ. Ну Казахстан точно.
Аноним 26/06/22 Вск 22:53:43 #361 №2389987 
>>2389978
>Условно тебя должны начинать беспокоить вопросы производительности, если ты не влезаешь в один сервер, в смысле питон-часть туда не влезает, но это уже очень крупные проекты должны быть.
Еще как используется в таких местах, сам работаю во вчерашнем стартапе, где питон нужен был для proof of concept и скоростной выкатки фич. Все уже выстрелило и сейчас часть сервисов переписываем на Go как раз по причине того, что покупка стойки для масштабирования выходит уж больно дорого. И это не Россия, а компания в ЕС, что тут будет мне в целом не хочется представлять.
И ходил по митапам когда жил в РФ, тут достаточно много крупных проектов использует питон как основной язык примерно по тем же причинам, сейчас все это посыпится из-за недостатка железа.
Аноним 26/06/22 Вск 22:56:32 #362 №2389989 
>>2389987
Может из-за недостатка гошников? Или скорее го/жопа-часов.
Аноним 26/06/22 Вск 23:00:14 #363 №2389991 
>>2389989
Если бы сразу хотели перфоманса и заботились о сохраности жезелок, то нашли бы плюсовиков, которые бы за x4 по времени сделали бы тоже самое.
Аноним 26/06/22 Вск 23:05:35 #364 №2389994 
>>2389991
Рынок был другой.

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

Выбор у нас только из Раста и Го, если уж совсем наследие предков в виде языков семейства С и Джавы не рассматривать - так?
Аноним 26/06/22 Вск 23:07:47 #365 №2389995 
>>2389987
>уже выстрелило и сейчас часть сервисов переписываем на Go как раз по причине того, что покупка стойки для масштабирования выходит уж больно дорого. И это не Россия, а компания в ЕС
А очень дорого это сколько?
Железо у них довольно дешёвое, а если арендовать у провайдеров, так вообще почти бесплатное.

Мне кажется, если не хватает вычислительных мощностей, то скорее косяк в архитектуре-проектировании. На чём конкретно сгорает производительность, был ли анализ этого? Горлышко из-за чего, на каких операциях?
Аноним 26/06/22 Вск 23:12:06 #366 №2389998 
>>2389994
Язык выбирают под задачи.

>Раста
Нет такого коммерчески востребованного языка программирования. По крайней мере ниша с питоном никак не пересекается вообще, ХЗ, может там конкуренция с Си за микроконтроллеры.
Аноним 26/06/22 Вск 23:16:06 #367 №2390006 
>>2389995
>Мне кажется, если не хватает вычислительных мощностей, то скорее косяк в архитектуре-проектировании. На чём конкретно сгорает производительность, был ли анализ этого? Горлышко из-за чего, на каких операциях?
Да анализ был, если грубо, то самое жирное это преобразование одних жсонов в другие с кучей правил, чуть матана и чуть сетевых нагрузок. И ускорение в виде замены дефолтных сериализаторв жсонов уже было и применение альтернативных интрепретаторов типа PyPy тоже и даже Cython тоже юзали очень ограниченная залупа к слову Ну не может питон конкрурировать по производительности с компелируемыми языками.

>>2389998
>По крайней мере ниша с питоном никак не пересекается вообще
Это пока не пересекается, как только стоимость железа станет критичной для бизнеса, то все высокоуровневое вылетит на мороз, даже если говорить про условные CRUDы.
Аноним 26/06/22 Вск 23:26:05 #368 №2390012 
>>2390006
>Это пока не пересекается, как только стоимость железа станет критичной для бизнеса, то все высокоуровневое вылетит на мороз, даже если говорить про условные CRUDы.
Это какие-то наигранные домыслы.
Подавляющее большинство реальных задач не вылезает из одного сервера, один средний сервер может обслуживать очень-очень много клиентов. В смысле application server один, там условно БД или кеши разумно, что отдельно выносятся.

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

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

Короче притянуто сильно.
Аноним 26/06/22 Вск 23:30:04 #369 №2390016 
>>2390006
>то самое жирное это преобразование одних жсонов в другие с кучей правил
Отдельный лол, как вот такие задачи придётся на го решать.

Нет, есть задачи для го, где питон просто сливает, но вот не здесь.
Аноним 26/06/22 Вск 23:36:14 #370 №2390021 
1CRhUw0X8IKEAfbL33CkVyg.png
>>2390016
Питон крайне сильно жрет память, это было основной причиной, любой питонячий контейнер выглядит как в этой статье
https://medium.com/swlh/dog-fight-python-vs-golang-vs-rust-for-json-processing-33c1ffe15ab9
Аноним 27/06/22 Пнд 00:04:51 #371 №2390040 
>>2390021
Смотри статью внимательнее.

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

Второе, замер используемой оперативной памяти он не производил. На скрине размер докер-контейнера, что чуть другое. Причём не очень понятно, как он собирал. У меня стандартные докер-контейнеры питона около 900 мб (внутри контейнера даже компилятор gcc упаковали), но это виртуальный размер, надо помнить про докер, его слоистую структуру и т.п., реально слой питона занимает совсем немного.

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

Не, я не спорю, что есть случаи, когда вот питон совсем не подходит, из-за производительности. Но это другие задачи. Как раз в задачах по обработке данных питон очень хорошо себя показывает и на другие платформы переходить совсем глупая затея.
Аноним 27/06/22 Пнд 00:20:49 #372 №2390052 
>>2390040
>Потребление оперативки будет очевидно больше, потому что в памяти интерпретатор. Но не такое большое, нужен всего один интерпретатор на процесс, а процессов не так много.
Зависит от задачи, у нас на каждого кастомера свой процесс для обеспечения отказаустойчивости и применения своих правил для отдачи жсонов (и от каждого кастомера куча запросов от пользователей), а ещё они имеют свой внутренний стейт и размер питонячьих объектов сильно проигрывает тем же данным, которые описываются в Go, в итоге эта часть проекта начала жрать абсолютно неадекватное количество оперативки.
Аноним 27/06/22 Пнд 00:31:57 #373 №2390057 
>>2382077
ты когда файл на запись открываешь в режиме 'w', у тебя все удаляется. Используй 'a'. Если и читать хочешь, тогда плюсик добавь 'a+'
Аноним 27/06/22 Пнд 08:02:27 #374 №2390129 
>>2390012
харкачую этого.
чтобы нагрузить даже сраный Xeon v3 десятилетней давности, нужно очень сильно постараться или быть выпускником курсов гикбрейнс
в большинстве задач основная нагрузка в сервере на I/O, а не на проц/оперативу.
Аноним 27/06/22 Пнд 08:23:07 #375 №2390137 
Питонисты, поясните. Есть сегодняшний дейлик на литкоде, который сводится к поиску максимальной цифры в числе (число представлено как строка из цифр). Так вот, почему max(n) работает дольше, чем max({*n})?
Аноним 27/06/22 Пнд 10:16:01 #376 №2390186 
двач хз в какой тред надо спрашивать нужно сделать csrf_token в джанге и скрипте JS ну вы понели наверное я не могу просто запихать в хтмл {% csrf_token %} как мне сделать это в JS и в бэке? реквестую гайд для нубов. (у меня XMLHttpRequest)
Аноним 27/06/22 Пнд 11:59:48 #377 №2390242 
>>2390159
У того анона max({sp}), а не max({sp}). В первом случае, если в sp есть повторяющиеся символы, область поиска для будет меньше. Правда, для распаковки всё равно придётся итерировать через всю строку, но видимо BUILD_SET_UNPACK работает довольно резво, что даёт небольшой выигрыш.

https://ideone.com/o07YwB
Аноним 27/06/22 Пнд 12:00:18 #378 №2390244 
>>2390186
>я не могу просто запихать в хтмл {% csrf_token %}
можешь
Аноним 27/06/22 Пнд 12:49:07 #379 №2390278 
>>2390186
>у меня XMLHttpRequest
Что за болезнь?
Аноним 27/06/22 Пнд 13:14:41 #380 №2390300 
>>2389788
Спасибо, тогда ещё вопрос, в pymorphy2 можно парсить предложениями? Или только по словам? А то на всех сайтах что встречаю описывается установка и парсинг одного слова
Аноним 27/06/22 Пнд 14:21:33 #381 №2390346 
>>2390300
А что ты собрался парсить? Нужно сплитать слова и каждое по отдельности проверять
Аноним 27/06/22 Пнд 15:02:08 #382 №2390372 
>>2389772
Как уже написал другой анон, естественные языки формальной грамматикой не опишешь. К тому же из-за омонимов есть сильная контекстная зависимость -- отдельно взятое слово может быть как глаголом так и другой частью речи ("пасть", "печь", "мой", "рой", "три" и т.п.)
Аноним 27/06/22 Пнд 15:05:58 #383 №2390375 
Почему 2%5 = 2? Когда должно быть четыре?
Аноним 27/06/22 Пнд 15:24:51 #384 №2390397 
>>2390375
http://gdztop.com/delenie-s-ostatkom-matematika-3-klass-moro/
Аноним 27/06/22 Пнд 17:01:44 #385 №2390482 
>>2390397 http://gdztop.com/delenie-s-ostatkom-matematika-3-klass-moron/
Аноним 27/06/22 Пнд 18:09:10 #386 №2390539 
>>2381740
Кобра и точка
Аноним 27/06/22 Пнд 20:46:47 #387 №2390694 
Как запустить питоновский файл в макоси? В уиндоузе просто двойным щелчком открываешь и программа запускается, а в макоси как это сделать?
Аноним 27/06/22 Пнд 21:06:27 #388 №2390713 
изображение.png
>>2381665 (OP)
Анонсы, как перенести либы из одного интерпретатора в другой?
>пикрил

Есть ли конфа в тележке для мелких вопросов? У меня хуёвый интернет и капча часто вообще не грузится.
Аноним 27/06/22 Пнд 21:26:54 #389 №2390726 
>>2390713
Можно через
pip freeze > some_file.txt
из одной репы сохранить все зависимости
а потом в другой репе
pip install -r some_file.txt

Хотя если подходить ответственно, то надо руками составлять, а не через freeze
Аноним 27/06/22 Пнд 22:46:35 #390 №2390782 
>>2390395
причем bankers rounding? вообще мимо же

>>2390375
а хули 4 должно быть? не понял логику.
5%2 = 1 (2 2 = 4, 5 - 4 = 1)
2%5 = 2 (5
0 = 0, 2 - 0 = 2)
надеюсь логика понятна, т.о. каждый раз когда у % знаменатель больше делимого получаем делимое т.к. целую часть там выделить нельзя и все идет в остаток.
Аноним 27/06/22 Пнд 22:47:05 #391 №2390784 
>>2390713
а еще можно съехать со спермы индуса, которая постоянно забивает весь канал своими зондами

и поставить вскод, который просто охуенно работает, и если что по нему изи нагуглить любую хуйню, в отличии от этого убогово куска говнища
Аноним 27/06/22 Пнд 22:53:41 #392 №2390790 
1512731004405.mp4
Что он говорит?
Сайты для чего? Яку..?
Аноним 28/06/22 Втр 10:34:51 #393 №2391007 
>>2390790
для якумерц. Магазинчиги. Екумерц.
Давно подозревал, на чем вертятся эти ваши днс-озоны.
Аноним 28/06/22 Втр 10:53:48 #394 №2391024 
>>2390790
У этого чела ещё было одно слово, которое он так произнёс что меня аж передёрнуло
Аноним 28/06/22 Втр 13:52:09 #395 №2391196 
>>2390790
https://youtu.be/3aFEpTYZgK0
Аноним 28/06/22 Втр 15:44:19 #396 №2391332 
>>2390790
он говорит Я ЛАКЕЦ
Аноним 28/06/22 Втр 15:54:15 #397 №2391344 
>>2391332
Я ЛАКЕЦ, КСТА
Аноним 28/06/22 Втр 17:42:46 #398 №2391453 
Сап, питонач
Есть dataclass с несколькими полями, у всех есть дефолтные знчения. Я при инициализации класса заполняю часть полей. Вопрос:
Подскажите, есть ли какой-нибудь элегантный, некостыльный метод для того, чтобы при дальнейшей работе с экземпляром датакласса определить, какие поля имеют недефолтное значение, чтобы потом пройтись по ним итеративно?
Аноним 28/06/22 Втр 17:50:44 #399 №2391461 
>>2391453
есть
Аноним 28/06/22 Втр 18:02:23 #400 №2391472 
Блядь пока высирал сюда длинный пост с вопросом о помощи вкануту - понял в чем проблема и пофиксил.
Аноним 28/06/22 Втр 18:15:26 #401 №2391487 
Сам себе стаковерфлоу
Аноним 28/06/22 Втр 20:11:29 #402 №2391631 
>>2391509
Я к тому что люди сразу лезут с вопросом, вместо того чтоб сначала найти решение своими силами.
Вышка нинужна, ага, там как раз этому и учат: правильно составить задачу, т.к она уже содержит в себе половину решения.
Аноним 28/06/22 Втр 20:20:01 #403 №2391636 
>>2391631
>Вышка нинужна, ага, там как раз этому и учат: правильно составить задачу, т.к она уже содержит в себе половину решения.

Там не учат этому
мимо с вышкой
Аноним 28/06/22 Втр 20:24:18 #404 №2391641 
>>2391636
Учат самостоятельно изучать материал и искать решения нетривиальных задач.
Аноним 28/06/22 Втр 20:32:43 #405 №2391645 
>>2391641
>Учат самостоятельно изучать материал
Ты учишь материал самостоятельно только если препод не умеет его доносить, что уже говорит о шаражном уровне, у тех кто умеет хватает конспектов и семинаров.

>искать решения нетривиальных задач.
Большинство задач в ВУЗе абсолютно тривиальные
Аноним 28/06/22 Втр 22:07:50 #406 №2391702 
>>2391645
Ответственность за интерпретацию знаний лежит на ученике. Каким бы учитель не был психологом, он объяснит лишь свою точку зрения, ввиду ограничений языка и возможностей на визуальную передачу знаний.
Если бы ученики копировали своих учителей, никакого прогресса бы не было.
Аноним 28/06/22 Втр 22:25:07 #407 №2391710 
>>2381665 (OP)
Всем привет
Хочу немного держать мозг в тонусе, посоветуйте какие-то сайты, на которых есть задачи на питон с ответами для самопроверки. Наверное, в идеале даже с каким-то объяснением
Гугл выдавал мне подборки таких сайтов, даже на хабре была такая и не одна, но мало ли местные аноны могут посоветовать что-то конкретное, спалят годноту, так сказать.
Аноним 28/06/22 Втр 22:34:14 #408 №2391715 
>>2391710
Степик, Коедварс.
Аноним 28/06/22 Втр 23:00:40 #409 №2391727 
>>2386270
сисярпа не хватает
Аноним 28/06/22 Втр 23:05:44 #410 №2391728 
>>2391710
pythontutor.ru, algoprog.ru
Аноним 28/06/22 Втр 23:45:04 #411 №2391750 
>>2391702
>Ответственность за интерпретацию знаний лежит на ученике
Если бы это было так, то достаточно было бы раздать всем Зорича и отпустить по домам до начала сессии, а нет, зачем-то проводят лекции и семинары.

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

>Если бы ученики копировали своих учителей, никакого прогресса бы не было.
Это хорошо, когда речь идет о авангардных темах, а не стабильной базе на бакалавриате.
Аноним 29/06/22 Срд 00:02:58 #412 №2391762 
>>2391453
Как-то так.

https://ideone.com/B98YF5
Аноним 29/06/22 Срд 00:22:33 #413 №2391770 
>>2391750
мимо анон
Одна из целей обучения в том, чтобы понять логику предмета, как там устроено, как работает, подходы к решению задач, подходы к доказательствам и т.п.

Предметы разные и логика у них разная.

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

В программировании и CS аналогичная логика работает. Ты изучаешь алгоритмы, разные языки программирования, разные технологии, изучаешь, как реализованы разные проекты и как там проблемы решаются, и уже сам в состоянии придумывать разные варианты, понимая плюсы и минусы.
Аноним 29/06/22 Срд 01:53:11 #414 №2391797 
Аноны, собираюсь вкатываться LUL в QA с нуля (без образования и бэкграунда), а так как такие вкатывальщики никому не нужны, решил плюсов себе добавить, изучив Python, SQL.

Почти дочитал "Укус Питона" на инглише. Есть что-то почитать, чтобы сразу правильно поставить мозги в направлении => написание кода сразу с юнит-тестами (судя по книге "тестирование в Гугл", это промышленный стандарт)?
Мне кажется, для QA будет грамотно увидеть работу с POV программиста, да и интересует меня развитие в области, поэтому автоматизация, поэтому питон (и машин лёрнинг с биг датой тоже привлекают).
Аноним 29/06/22 Срд 01:56:02 #415 №2391799 
>>2381665 (OP)
Пацаны, объясните вкатуну, модные ssr фреймворки типа некста, нукста, свелт кит потеснят джангу или это фреймворки, решающие разные проблемы?
Аноним 29/06/22 Срд 02:31:23 #416 №2391809 
изображение.png
Доброго, аноны. У меня есть вопрос, гугол, яндекс и утка не дают ответов. Или я не так спрашиваю.
Суть: Есть старенький новут, решил на него накатить линух, и таскать на работу- изучать питоний. Решил написать бота в телегу. Но данный скрипт не хочет запускаться на этом ноуте.
Скрин ошибок прикрепил.
В чем, сопсна, вопрос: что это может быть? система 32, всякие пителеграмапибот пип вроде как поставил. Сам скрипт на других машинах завелся, что под виндой, что под линухом, единственное отличие- там 64 бита стоят системы. Я просто не знаю с чем это еще связать.
Аноним 29/06/22 Срд 07:20:59 #417 №2391852 
>>2391809
в том что ты даун установил 2.7, а скрипт использует аннотации и явно 3+
Аноним 29/06/22 Срд 09:40:17 #418 №2391916 
>>2391770
>В программировании и CS аналогичная логика работает. Ты изучаешь алгоритмы, разные языки программирования, разные технологии, изучаешь, как реализованы разные проекты и как там проблемы решаются, и уже сам в состоянии придумывать разные варианты, понимая плюсы и минусы.

Все это изучается на очень посредственном уровне, ты толком не щупаешь технологию, а максимум сдаешь лабу по ней. Для такого уровня достаточно квик старт/туториал из документации пройти. Да и в целом выбор технологий очень ограничен и действительно нужные вещи типа брокеров сообщений или ведение своего проекта хотя-бы год с периодическими проверками полностью отсуствует.
Аноним 29/06/22 Срд 10:14:54 #419 №2391927 
>>2391750
Задача учителя в вузе - дать краткий обзор имеющихся знаний и пояснять некоторые неочевидные моменты.
Если ученику надо всё разжевывать до самых мелочей, то он рано пришёл в вуз и ему бы школьную программу освоить. В школе как раз ведут воспитательную работу и школьные учителя должны всё разжевать. В вузе учителя же другие.
Аноним 29/06/22 Срд 11:49:41 #420 №2392002 
>>2391927
>Задача учителя в вузе - дать краткий обзор имеющихся знаний и пояснять некоторые неочевидные моменты.
И в итоге получаем людей, которые не могут устроится даже на начальные позиции в местах, которые требуют указанную специальности. напоминаю, что именно в этом суть бакалавриата, которого у нас на самом деле никогда не было в том виде, в котором он задумывался "Учение учиться" это отмазка преподаветельского состава, который не может дать необходимые компетенции и при этом хочет отправить отчет в МинОбр о том, что выпустило на рынок столько-то качественных специалистов.


>Если ученику надо всё разжевывать до самых мелочей, то он рано пришёл в вуз и ему бы школьную программу освоить.
ЕГЭ сдано, аттестат есть, все, больше ничего не требуется. Если преподаватель не может объяснить свою тему на базе имеющейся стандартизированной школьной программой, то преподаватель говно.
Аноним 29/06/22 Срд 12:50:16 #421 №2392036 
>>2391916
В математических ВУЗах ты логику науки постигаешь на куче разных предметов.

С технологиями в универах уже хуже, однако у физтехов и это есть, есть куча видео курсов оттуда, и все эти MQ, виртуализация и прочая хрень.

>>2392002
>напоминаю, что именно в этом суть бакалавриата
В этом суть колледжа, а не бакалавриата.

>Если преподаватель не может объяснить свою тему на базе имеющейся стандартизированной школьной программой, то преподаватель говно.
Здесь согласен. Преподавателю надо суть своего предмета донести, его логику. Если он не может, значит он со своей работой не справляется и он просто не нужен. А книжки можно и без преподавателя читать.
Аноним 29/06/22 Срд 13:55:52 #422 №2392109 
>>2392036
>В математических ВУЗах ты логику науки постигаешь на куче разных предметов.
Я читал программы мехмата и ВШЭ и МГУ, там "куча разных предметов" заканчивается на поверхностном программировании и физике. Сама математика как язык науки абсолютно бесполезна без прикладных дисциплин (если не говорить про дальшенее окукливание в акадамической среде) в которых эта самая математика в программах вузов отвратительно интегрированна.

>В этом суть колледжа, а не бакалавриата.
Нет, именно бакалавриата, причем сами ВУЗы в брошурах любят указать про успешность выпусников на рынке труда. Одна из целей болонского процесса это ориентация квалификаций на рынок труда. Считать ВО вещью в себе с непонятными критериями успешности - скатывать массовое образование в полное говно. Наука начинается с только с аспирантуры и иногда с магистрататуры.
Аноним 29/06/22 Срд 14:09:59 #423 №2392122 
>>2392109
Университеты всегда были ориентированы на то, чтобы повышать базу учеников, а не на конкретные практические знания. Общий принцип такой, что ты формируешь крутого чела, с мозгами, способного учиться, с широким кругозором, пониманием и наук, и технологий, а уж с этим бэкграундом он потом может заниматься чем надо.

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

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

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

>Я читал программы мехмата и ВШЭ и МГУ, там "куча разных предметов" заканчивается на поверхностном программировании и физике
В базовой программе много вычислительного на самом деле, но очень далёкого от индустрии, всё-таки вся прикладная математика, сеточные методы эти и т.п. мало нужны, если ты только конкретной вычислительной наукой не занимаешься. А в прикладных сферах тебе уже надо с готовыми пакетами-библиотеками работать, всё уже написано. Но там есть и общие алгоритмы всякие. А ещё есть дополнительные спецкурсы по выбору, и там довольно много чего.

Возможно меньше, чем надо для настоящего CS спеца, но оно есть.
Аноним 29/06/22 Срд 14:14:44 #424 №2392126 
image.png
Парни, пришлось юзать Редис для кеша. Подтянул aioredis, вот гляжу тутор как надо ставить и читать значения и че-то не понял: тут не надо разве коннекшн открывать/закрывать? Обычно когда юзаем БД мы создаем коннекшн а после завершения транзакции закрываем его (явно либо с помощью контекстного менеджера). Тут это разве не нужно?
Аноним 29/06/22 Срд 14:18:45 #425 №2392128 
>>2392122
>Университеты всегда были ориентированы на то, чтобы повышать базу учеников, а не на конкретные практические знания. Общий принцип такой, что ты формируешь крутого чела, с мозгами, способного учиться, с широким кругозором, пониманием и наук, и технологий, а уж с этим бэкграундом он потом может заниматься чем надо.
Это неправда, есть замечательный пример, медвузы. Работают и на базу и на практические навыки, при этом выпуская готовых специалистов для работы. Хирургу или стоматологу ты не скажешь, что ему не нужна прикладная релевантная практика. Так и должно быть с другими специальностями.
Аноним 29/06/22 Срд 15:58:16 #426 №2392184 
>>2392128
С медиками сложнее. У них на самом деле довольно приличная фундаменталка идёт по очень широкому спектру, поэтому они очень долго учатся. Сначала фундаменталка, потом уже уход в специальность. Причём практика идёт не в ВУЗе, а после вуза, ординатуры разные. Ты сам посмотри программы медицинских ВУЗов, какой объём там предметов.

Это и наша практика, и западная.

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

Проблема в том, что в школе знаний слишком мало даётся, не готовы ни ученики, ни средний уровень школ не позволяет обычно. Недостаточный уровень, чтобы быть каким-то мало-мальски адекватным специалистом.
Аноним 29/06/22 Срд 22:03:55 #427 №2392464 
image
Привет, анончики.
Пытаюсь вот вкатываться в этот ваш путхон. Читаю книжку Марка Лутца, прорабатываю примерчики там, дрочу интерактивную консольку. Когда пройду хотя бы большую часть функционала, буду пытаться уже что-то писать посерьезнее.
И вот есть два человека, батя и друг.
Батя советует учиться по книгам, практику всякую тоже делать, конечно, но в целом говорит, что нужно понимать, какие возможности есть у языка, даже если не знать это наизусть, и поэтому книги очень полезны.
С другой стороны друг говорит, что книги хуйня, вкатываться надо на одной лишь практике, и мотивирует это тем, что сам ничего не читал, а просто дрочил всякие пет-проекты несколько лет, так в итоге и вкатился.
Кто из них прав и как же все-таки лучше вкатываться?
sage[mailto:sage] Аноним 29/06/22 Срд 22:15:15 #428 №2392474 
>>2392244
Кому ты без опыта нужна, маня.
Аноним 29/06/22 Срд 22:18:10 #429 №2392477 
2022-06-29x22:07:46.jpg
заморочился, навернул говна

потом прочитал доку и нихуя не понял (потому что она пидарская)
> n_colorsint, optional
> Number of colors in the palette. If None, the default will depend on how palette is specified. Named palettes default to 6 colors, but grabbing the current palette or passing in a list of colors will not change the number of colors unless this is specified. Asking for more colors than exist in the palette will cause it to cycle. Ignored when as_cmap is True.

а потом визуализировал датасет и понял что обосрался


как сгенерить ебучую палетку ин гармони с хай намберс оф калор айтемс сука?

почему все палетки скукоженные до 8 цветов или типа того!?
Аноним 29/06/22 Срд 23:46:16 #430 №2392532 
изображение.png
>>2391852
так ведь стот так же третий питоний. и через него я запускал так же.
Аноним 30/06/22 Чтв 00:00:39 #431 №2392537 
>>2392532
уебок тупорылый типизация в 3.10

ты жрешь протухшее дерьмище на своей паскудной уебищной уебунте
Аноним 30/06/22 Чтв 00:04:33 #432 №2392540 
>>2392537
ну и пошел я нахуй тогда, хотел помощи спросить, а тут, походу, еще токсичнее чем в б.
Аноним 30/06/22 Чтв 00:10:43 #433 №2392541 
>>2392540
поплачь еще.. даунов нигде не любят, особенно убунудаунов без когнитивных функций...
Аноним 30/06/22 Чтв 00:27:24 #434 №2392548 
В /po часто пишут "это бот", "не разговаривай с ботом".
А вот серьезно, есть ли нейросеть, в которую можно загрузить пару гигов диалогов с двача, подождать пока она самообучится и наслаждаться тем, как она переписывается с додиками с параши?
Аноним 30/06/22 Чтв 00:28:36 #435 №2392549 
>>2392470
Ну он говорил, что типа просто идея какая-то есть, а дальше он пытался ее реализовывать и гуглил, если что-то непонятно.
Аноним 30/06/22 Чтв 00:45:03 #436 №2392554 
>>2392477
>импорты внутри функций
>функции внутри функций
>названия из буквы и цифры
Аноним 30/06/22 Чтв 00:49:53 #437 №2392560 
>>2392548
есть


>>2392554
пиздорылая нейросеть не знает что такое этап ресерча..
Аноним 30/06/22 Чтв 00:53:45 #438 №2392563 
>>2392560
>есть
Скинь
Аноним 30/06/22 Чтв 00:54:00 #439 №2392564 
>>2392560
для рисеча есть консоль, ну или эти ваши новатпуки, дрянь тупорылая
Аноним 30/06/22 Чтв 00:58:20 #440 №2392568 
>>2392564
тебя мой пайплайн ебать не должен ничтожество

если нечего сказать по телу вопроса - завали ебасосину и уебывай.
Аноним 30/06/22 Чтв 02:16:41 #441 №2392614 
image.png
Этот кондишн не вызовется, потому что == приоритетнее and. Чему так?
Аноним 30/06/22 Чтв 02:19:21 #442 №2392616 
2022-06-30x02:15:48.jpg
>>2392477
а впрочем хуй с вами..


>>2392614
орнул с дебила)))
Аноним 30/06/22 Чтв 02:22:52 #443 №2392618 
>>2392616
Почему я дебил? :(
Аноним 30/06/22 Чтв 02:25:02 #444 №2392620 
>>2392618
ложись спать, утром поймешь

если нет:
-- программирование не твое
-- дропай
Аноним 30/06/22 Чтв 02:55:38 #445 №2392626 
python-operator-precedence.jpg
>>2392620
Я спрашиваю, почему оператор == приоритетнее оператора and. Мне интересно, чем руководствовались люди, установившие такие правила. Это вопрос дополнительной информации, знания, оно у меня магическим образом не появится за ночь.
Аноним 30/06/22 Чтв 03:33:57 #446 №2392628 
>>2392626
> оно у меня магическим образом не появится за ночь
тогда ты знаешь что делать.
Аноним 30/06/22 Чтв 07:15:14 #447 №2392650 
>>2392626
Конструкция (a == b) and (c == d) встречается чаще, чем (a and b) == (c and d), вот и все, просто чтобы было меньше писанины.
Аноним 30/06/22 Чтв 10:14:42 #448 №2392705 
>>2392614
всмысле почему ептус? У тебя слева и справа от and условие, которое должно посчитаться прежде, чем будет произведено сравниие true\false. Как ты себе иначе представляешь вообще работу этой хуйни тогда?
Аноним 30/06/22 Чтв 10:14:58 #449 №2392706 
>>2392464
батя: хороший программист, не умеет зарабатывать
друг: умеет зарабатывать, плохой программист

choose your destiny
Аноним 30/06/22 Чтв 10:25:55 #450 №2392713 
image.png
>>2392129
Ну смотри, вот обычный коннект к базе, под коннекшном имеется ввиду новая сессия котораяя юзается через контекстный менеджер
Аноним 30/06/22 Чтв 10:28:30 #451 №2392714 
>>2392464
>просто дрочил всякие пет-проекты несколько лет
Ну я а вкатился меньше чем за год. Потому что помимо дрочива петов еще и читал книги/смотрел туторы
Аноним 30/06/22 Чтв 10:40:30 #452 №2392722 
>>2392464
Во всём нужно находить баланс. Оба подхода имеют смысл на существование. Если чисто для вката в петухон - то книжка лутца норм. Но на ней сильно не обостряй внимание, я ни разу не делал все эти упражнения. А хотя не, делал, но это была K&R. Ну в общем для такого лёгкого языка как петухон это не имеет особого смысла, ты только теряешь время. Лучше сразу наметь какой-нибудь пет проект, и практикуйся на нём. И читай официальную доку языка, она довольна неплоха.

А книги важно уметь выбирать, а выбирать нужно хорошие. По самому языку, когда ты уже что-то умеешь, книги читать смысла нет. А вот про различные подходы, архитектуры и инструменты это да.
Аноним 30/06/22 Чтв 13:07:14 #453 №2392816 
>>2392540
Поставь python 3.9 минимум
Аноним 30/06/22 Чтв 13:18:37 #454 №2392825 
>>2392706
Батя еще как умеет зарабатывать, он сеньор в забугорной компании, плюс шарит за бизнес-процессы и прочую хуету. Про зарплату хз, но явно сильно повыше чем у друга. С другой стороны, батя работает уже дохуя лет, с начала нулевых в ойти. А друг вкатился года два с чем-то назад, а вкат начал в 15-16 годах гдет
>>2392714
>>2392722
Хм, ясно... Ну штош, тогда буду думать, какие бы мне пет-проекты запилить. Пока что идей нет
Аноним 30/06/22 Чтв 13:21:52 #455 №2392829 
>>2392537
>типизация в 3.10
Вообще модуль typing завезли ещё в 3.5 и основной функционал в 3.5.2 уже есть. Но что-то добавляли и позже.

Довольно много добавили в 3.8, ещё что-то заметного добавили и в 3.9

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

Разумный минимум я бы советовал в виде версии 3.8.

С версиями вроде 3.9 в каких-то применениях могут быть проблемы, скажем если тебе нужна поддержка Win7, и подобные нюансы бывают. Но это нюансы промышленной разработки, а не обучения.
Аноним 30/06/22 Чтв 13:21:57 #456 №2392830 
>>2392537
> типизация в 3.10
Ебать дебил.
Аноним 30/06/22 Чтв 13:25:11 #457 №2392834 
>>2392825
Умение зарабатывать и умение что-то делать пересекаются, но не сильно. Это сделать vs продать.

Практический вопрос в том, зачем быть хорошим программистом, если не зарабатывать на этом.
Аноним 30/06/22 Чтв 13:27:46 #458 №2392837 
>>2392825
Типичный собес типичного "адепта петов":

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

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

- Как будете оценивать, нужен ли индекс в данной колонке базы?
- Да хз ваще. Я миграции запускал как по тутору сказано и она работало вроде

- Как логирование используете? Прямо вызовы в бизнес-логику вставляете?
- эмм пук бизнес-что?
Аноним 30/06/22 Чтв 13:33:02 #459 №2392840 
>>2392837
>В чем сила генераторных выражений в питоне?
Ленивость

>Объясните почему эта асинхронная функция не даст выигрыша в производительности
Нет блокирующих IO операций

>Как будете оценивать, нужен ли индекс в данной колонке базы?
Если по данному полю будет вестись поиск

>Как логирование используете? Прямо вызовы в бизнес-логику вставляете?
Да, епта
Аноним 30/06/22 Чтв 13:38:04 #460 №2392841 
>>2392837
>- Ну я че-то не особо это все использовал, понимаете я проект на джанге пилил
Вообще им с самого начала учат и в том числе в джанге-практиках используют

>Объясните почему эта асинхронная функция
Если чел не изучал асинхронку, то значит не изучал

>Как будете оценивать, нужен ли индекс в данной колонке базы?
Куда жёстче, "можете оценить, сколько SQL запросов будет произведено вот на этой вьюшке"? "Да ХЗ, я же ОРМ использую, зачем мне SQL запросы"
Аноним 30/06/22 Чтв 13:41:18 #461 №2392844 
>>2392840
>Нет блокирующих IO операций
Не обязательно будет кейсом на самом деле. Тут лучше на реальном примере все-таки показывать

>Если по данному полю будет вестись поиск
Лол

>Да, епта
Иногда профитно, иногда - нет. Какие альтернативы предложите?
Аноним 30/06/22 Чтв 13:47:03 #462 №2392852 
>>2392844
>Иногда профитно, иногда - нет. Какие альтернативы предложите?
Обосрать все декораторами, которые будут ловить ошибки и уведомлять о статусе выполнения, настроить дополнительные логеры типа sentry для перехвата ошибок и стейта

>Если по данному полю будет вестись поиск
>Лол
Хуйна блядь, первая фраза в любой книжке по бд в главе об индексах. Их не нужно делать в этом случае, только если селективность будущего запроса никакущая.
Аноним 30/06/22 Чтв 13:59:12 #463 №2392870 
Привет, Аноны!
Подскажите лит-ру или сайты, где можно почитать о связке Питон+wx +postgres,
хочу почитать об именно _проектировании_ десктоп-гуи приложений на питончике.
Будет standalone-приложуха, типа центра ЦТО-шника.
1) Как именно БД, wx связать вместе?
2) Как множество формочек (Frame) связать вместе?
3) И вообще примеры гуи-десктоп +БД имеются где-то
пысы. Везде видел только отдельные разработки на tkinter, это не то.

извините, заспамил старые стреды. я идиот
Аноним 30/06/22 Чтв 14:09:31 #464 №2392884 
>>2392870
Литературы не знаю, к сожалению. Сам бы сейчас почитал.

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

Для этого вполне годятся wx-сообщения.

>2) Как множество формочек (Frame) связать вместе?
В смысле зачем? У можешь делать вёрстку через панели, можешь делать диалоги, причём одновременно несколько диалогов запущено в постоянке (не модальные диалоги).

В любом случае, если ты хочешь серьёзное что-то с гуи делать, тебе надо осваивать многопоточное программирование. Иначе никак вообще.
Аноним 30/06/22 Чтв 14:21:12 #465 №2392892 
>>2392884
>>2392887
СПАСИБО!
Аноним 30/06/22 Чтв 16:21:03 #466 №2392951 
>>2392892
Сасибо
Аноним 30/06/22 Чтв 16:52:01 #467 №2392980 
>>2391762
То что нужно, спасибо!
Аноним 30/06/22 Чтв 17:01:18 #468 №2392988 
Так, пистонисты, объясните несведующему.
Загрузил решение на литкоде - быстрее на 15%, чем у остальных.
Посмотрел, какое решение лучше - оно оказалось таким же, примерно, как и меня. Но у меня код класса разнесён по методам, а в лучшем решении всё в одном методе сделано.
Порефакторил свой решение, убрал ненужные методы, и действителньо, теперь ответ лучше, чем 92% остальных.

Вопрос: методы класса настолько замедляют код?
Или литкодовский дрочь за быстродействием не показатель?
Аноним 30/06/22 Чтв 17:13:19 #469 №2392998 
>>2392988
А убери классы совсем, тогда вообще охуеешь. Классы нужны чтоб удобнее читать и быстрее разрабатывать.
Аноним 30/06/22 Чтв 17:16:39 #470 №2393000 
>>2392837
>Типичный собес типичного "адепта петов":
Лооол, по-твоему лучше сразу вкатываться в ML или хайлоад разработку? Да и глупо ожидать каких-то сеньорских знаний от человека с опытом только в пет проектах.
Аноним 30/06/22 Чтв 17:24:46 #471 №2393008 
>>2393000
> глупо ожидать каких-то сеньорских знаний от человека с опытом только в пет проектах.
не обрящай внимания не этого обиженного дауна

просто он проибал свои лучшие годы на нахуй не всравшееся ВО, и теперь компенсирует нахуй не всравшими ебливыми штучками, которые точечно гуглятся и бенчатся под проект

никому нахуй не нужно забивать этим говном голову

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


если ждуну задают такие вопросы - то это ебанутая айти галера, ищи дальше и ты найдешь уютный бизнес уголок
Аноним 30/06/22 Чтв 18:38:17 #472 №2393046 
>>2392988
Классы медленней, да. Место в памяти занимают. Из лучше использовать только когда без них нельзя.
Аноним 30/06/22 Чтв 18:45:31 #473 №2393052 
>>2393046
датаклассы со слотами - все остальное для душных додиков решоткодаунов и прочих пидарасов жабистов.
Аноним 30/06/22 Чтв 18:50:03 #474 №2393056 
>>2393008
То ли дело ты, который элементарные проекты делает по несколько месяцев
Аноним 30/06/22 Чтв 19:52:02 #475 №2393089 
Вопрос от вкатуна 10 дней от роду потенциально платина:
Я делаю всякие-разные задачки, типа сделать какую-то текстовую игрушку там подбиратель паролей ну в общем хуйню на самых базовых вещах.
И вот я когда закончу ебаться чтобы всё работало, смотрю на то, что получилось и понимаю, что выглядит ну хуёво. Где-то можно что-то убрать, что-то куда-то спрятать в функции, где-то возможно от нестинга уйти итд итп.
И вот я не знаю: стоит ли запариваться этой хуйней прямо сейчас и начинать перелопачивать всю логику нахуй и долбится еще пару дней в ту же задачу, или мне сейчас все-таки важнее нарабатывать навык именно находить подходы к решению задач чтобы сам код делал че мне надо, а как с этим станет получше уже можно будет начинать в хорошие практики упарываться?
Аноним 30/06/22 Чтв 20:16:10 #476 №2393102 
>>2393089
Сейчас стоит. На проекте будет поздно
Аноним 01/07/22 Птн 00:15:27 #477 №2393268 
ПЕРЕКАТ
>>2393267 (OP)
>>2393267 (OP)
>>2393267 (OP)
>>2393267 (OP)
Аноним 29/09/22 Чтв 11:17:58 #478 №2477137 
>>2384292
Ты понимаешь что ты несешь в каком месте ифы едят меньше памяти ты вообще тут, словарь хранить в себе кэши ща счёт этого это самый быстрый объект в питоне за счёт ключа значени поиск моментальный, а вот ифы ну это же пздц чел, у него будет 20 юзеров уже вижу твои ифы которые будут в ряд через елиф это 20 миллионов секунд
Аноним 29/09/22 Чтв 11:40:42 #479 №2477167 
>>2477137
Ты там три месяца ифы считал, слоупок?
Аноним 04/10/22 Втр 02:18:07 #480 №2481311 
Аноны, а где можно почитать подробнее как питон работает с памятью для встроенных типов. Вот например.
a = 500
b = 500
В данном случае это один объект
А вот если сделать так
b = b + 1 - 1
То это уже два разных объекта

В каких случаях происходит присвоение одинакового айди и когда он меняется?
Гарантируют ли разные айдишки выделение памяти на каждый объект или под капотом может быть так, что эти переменные все ещё ссылаются на один участок памяти с 500?
comments powered by Disqus

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