Это копия, сохраненная 13 ноября 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Предыдущий: >>2748706 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://goonlinetools.com/snapshot/share/ - для листингов, без регистрации, но с капчей
#######################################
Вопросы-ответы:
— С чего начать изучать питон?
У питона намного лучше официальная документация, чем у большинства других языков. Есть там и учебное пособие для начинающих: https://docs.python.org/3/tutorial/introduction.html , неофициальный перевод на русский язык: https://digitology.tech/docs/python_3/tutorial/introduction.html (для питона версии 3.8, но разницы почти нет)
— Какие книги считаются лучшими?
На слуху чаще всего Лутц, но там очень много воды. Ещё на слуху Марк Саммерфильд, Эл Свейгарт "Автоматизация рутинных задач с помощью python". Эти книги рекомендуют чаще всего, но книги довольно старые, а питон развивается.
— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0
— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать даже для версий 1.x, т.к. принципы остаются теми же. Но лучше хотя бы с версии 2.0, слишком много мелких изменений в базе.
— Какие веб-фреймворки стоит учить в начале двадцатых?
Что бы не говорили, Джанго живее всех живых и умирать не собирается (и Django REST Framework), очень перспективный асинхронный FastAPI, асинхронный AioHTTP. Flask ещё где-то используется, но уже legacy. Прочие фреймворки или у нас экзотика, или это вымирающее легаси как Торнадо.
— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но частично переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Ролик на американском языке про многопоточность и асинхронность, построение своего event loop с нуля, помогает понять, как устроена асинхронность внутри: https://www.youtube.com/watch?v=MCs5OvhV9S4
— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется
— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.
— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
текущий исходник: https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
На js делают из-за того что интерфейсы на реакте можно клепать, в итоге одна макака клепает и фронт и мобилку. В чем профит это делать на питоне если тоже самое можно сделать нативно на свифте и котлине?
на крайняк статьи
Решил я попробовать поучиться языку программирования просто ради фана. Взор мой упал на пйтон,т.к. сейчас на волне хайпа, но в прошлом треде все его хейти. Помогите, гуру программирования, с выбором нужно стека, чтобы не зашкварно было и интересно
Ты ведь пиздишь и дело не ограничено фаном
Приноси свою истинную цель, тогда и можно будет посоветовать
Ну раз тебе ради фана то и делай/учи то что тебе по фану и интересно собственно
С++ и ЯваСкрипт.
Раньше спокойно юзал одну и ту же сессию алхимии в конкурентных запросах через asyncio.gather, теперь похоже что в алхимии 2.0 такую возможность убрали, падает ошибка IllegalStateChangeError
Петуши утверждают что надо использовать по 1 сессии / коннекшну на 1 процесс или тред: https://docs.sqlalchemy.org/en/20/orm/session_basics.html#session-faq-threadsafe
Втф? Нахера они мне сломали код?
по фану я написал, потому что нет еще точной поставленной цели. Естественно, если мне зайдет, то конечная цель будет - сменить сферу деятельности.
На данный момент хочется что то попробовать как хобби, но т.к. базы и опыта нет - пишу сюда
>в алхимии 2.0
Ну раз это новая мажорная версия то по семверу можно ломать обратную совместимость так что ¯\_(ツ)_/¯ i know that feel bro
>нет еще точной поставленной цели
Малыш, когда научишься целеполаганию, тогда о чем-то и можно будет разговаривать. Ты как пацан, который вечно не знает чего он хочет и желает чтоб остальные указали ему путь.
>Ты как пацан, который вечно не знает чего он хочет и желает чтоб остальные указали ему путь. - Чел, я первый раз зашел узнать что то про айти, решил сразу спросить "знающих людей"
а ты как стремный прищавый айтишник, которых показывают в фильмах.
Токсичный лошок, который сидит дома и пытается самоутвердиться в
анонимном чатике)
В чем была проблема перечислить название пару языков, как прошлый двачер?
Потому что никто не знает что конкретно тебе нужно. Что тебе понравилось в кодинге, куда ты метишь, зачем и почему - для разных целей разные инструменты.
Представь, ты написал: "хочу попробовать вкатиться в ремонт, посоветуйте с чего начать, отвёртки или молотка?"
>перечислить название пару языков
первый и главный это английский. Второй по обстоятельствам, сербо-хорватский, греческий, армянский, грузинский и другие варианты встречаются
>>800989
>хочется что то попробовать как хобби
кого ты обманываешь, других или себя? Найди другое хобби. Французский-испанский языки, например.
>Что бы не говорили, Джанго живее всех живых и умирать не собирается (и Django REST Framework),
На сколько актуальна информация из шапки?
Я же отослал пикрил, вот примерно как правый челик и выгляжу. Скорее даже вот так. На самом деле мне даже нравятся такие непоседливые мальчишки как ты, если ты сейчас в Батуми, мог бы одновременно жестко и нежно прочистить твой дымоход. Конечно я знаю свою дело и резко ничего делать не буду, смазки будет вдоволь, думаю ты очень скоро войдешь во вкус.
Жиза. Тоже пришлось запросы переписывать на новый формат. Вообще не ебу зачем они это переделали.
Питон используют опытные погромисты как вспомогательный язык, поэтому если вы думаете, что можете вкатиться в айти, зная питон - вы глубоко ошибаетесь.
Я уже давно вкатился, на питоне не пишу, но краем глаза вижу что джангу постигает участь рельс. Вот и интересуюсь на сколько это актуально у вас
Там фишка в том что половину кода реакта можно взять с мобильной версии сайта, а тут хули ты переиспользовать собрался?
Смекаю, но это никак не опровергает
>Питон - ненастоящий язык, который годится только для небольших скриптов и математических научных дрочилен.
Но опровергает
>если вы думаете, что можете вкатиться в айти, зная питон - вы глубоко ошибаетесь
Может это и ненастоящее айти, но никого настоящесть ебать особо не должна кроме владельцев продуктов.
У владельца есть вопрос на повестке дня "насколько много времени нужно на языке икс, насколько легко поддерживать, сколько стоит час программиста", поэтому выбор языка играет роль.
А программисту похуй, если ему скажут "сделай задачу на языке, неподходящем для неё", он просто ответит что это займёт дохуя времени, но если платите то сделаю.
> "насколько много времени нужно на языке икс, насколько легко поддерживать, сколько стоит час программиста"
Во всё это замечательно вписываются не-тру бидон и пыха, что же это делается?
Или ты имеешь в виду, что можно взять анального плюсовика за копейки и пусть там себе возится?
4 из 6 мох приятелей-программистов вкатились в айти с помощью питона, так что хватит хуйню нести)
как хорошо что есть двач и такие обезьянки могут хотя бы здесь написать о чем мечтают)
ладно, чмоня, откисай в своем Липецке(:
>попробовать поучиться языку программирования просто ради фана
>ради фана
О каком фане идет речь? Если ты гик, который может буквально без преувеличений, забывая про сон и еду, десятками часов ковыряться в простынке кода. то да такой фан в избытке, если тебе такое нравится. Другого фана у нас для вас нет.
>>801861
А что не так с Липецком?
> если мне зайдет
А, вот оно что. Если ты наслушался сказок про легкий вкат и 300кк в наносекунду и это твой мотив, то лучше сразу закрывай терд и забудь про всё это говно, время и силы сэкономишь.
Просто если тебя от природы, так сказать, не тянет погромировать, то выше кодомакаки формошлепа ты своими силами не поднимешься, а с таким уровнем найти работу нереально - потому что сейчас рынок труда перенасыщен аутистами, многие из которых в отличие от тебя страстно увлекаются погромированием.
> потому что сейчас рынок труда перенасыщен аутистами, многие из которых в отличие от тебя страстно увлекаются погромированием
Так это они тут бегают и рассказывают, что питон ненастоящий язык. Только хачкель с вставками ассемблера и лиспа.
Да не, это шизы бегают. Чтобы бегать и рассказывать, какой питон недоязык из-за динамической типизации особо программировать не нужно уметь. Мне кажется в основном этим занимаются те, у кого очень так себе уровень в "их" языках в том числе, они ни питоном не владеют, ни "настоящими" языками
Ещё и учатся на ней )))))) Ох мая мама....
Собираюсь зафорсить среди HR
Все правильно делаю?
Собираюсь зафорсить среди HR
Все правильно делаю?
хуйнёй страдаешь. Но лучше хоть так, чем в мусорных баках рыскать еду.
Наверняка какая-то мемная хуйня.
Ты же в курсе, что алхимия только строку запроса в СУБД отправляет, а сама нихуя не считает?
Не нужно иметь мозги чтобы писать код
У меня небольшие проблемы со вторым пунктом
Нет, питон лучше джавы, потому что не компилируется в коробке в контейнерный ассемблер, чтобы из этой коробки перекомпилироваться в системный ассемблер.
Компилируется в контейнерный ассемблер, чтобы вм потом его жевала. Причем каждый раз в отличие от жабы.
Можно ли юзать джангу с пикрилом? Будут ли профиты?
Какие профиты ты ожидаешь? Чтобы было побыстрее, проще будет запустить джангу через PyPy, там уже вроде питон 3.10 поддерживается.
Именно
Я думаю простоту кода и наличие большого количества библиотек достаточно. Хотя.. У всего есть минусы. Питон медленный, да, однако есть многие JIT`овские компилы, да? Правильно. ..
Нет, эта хуйня исключительно что бы базовые типы пидорить и матан считать
Как думаете нормальная идея сначала вкатиться джава разрабом, а потом уже внутри конторы перейти на питон? Просто почему-то 80% стажировок только для джавистов.
У тебя мозг повредится и уже не получится переход.
Двач, я не писать на джаве. Я хочу разрабатывать на питоне, двач. Я хочу, чтобы вокруг меня копошились маленькие кодеры на джанго и фласке а я учил их мудрости жизни, накручивая бороду на палец. И анон, я понял как миновать отвратительный период работы на джаве и сразу перейти к питону! Надо стать питонистом-приживалой.
Для этого надо действовать хитро и осторожно: прокрасться в состоявшуюся компанию со стеком на джаве (и желательно, мертвым тимлидом) и мимикрировать под стажера-джависта, повторяя все его повадки. Команда (если она состоит не из самых умных людей), возможно и не обнаружит подвоха, и тем самым успешный питонист-приживала получит профит в виде будущего переката на питон!
>>803284
да не. я может хреново написал. Сама майсукл долго считает. индексы есть везде. обычная табличка 4-5Гб примерно. Ну как так делается-то разрабами???? Они похоже сразу весь файл в озу гонят, потом его разбирают на поля (х2 затраты озу, диска и времени), потом выдают запрос. Ну неужели нет индексов в самом файле, хотябы б-дерево чтоли???
Писец. Гавно а не драйвер баз.
Дак а где потом питонистом работать будешь, если вакансий таких почти нет на бэке?
Дак а где потом питонистом работать будешь, если вакансий таких почти нет на бэке?
count обычно дорогая операция, он быстр только на простых запросах в MyISAM, а в других базах и ImmoDB от MySQL это уже дорого. Кроме того ещё условия запроса надо смотреть. Реально тебе скорее всего надо выполнить весь запрос, чтобы получить результат. Кстати там ещё нюансы есть, что нужно count(1) делать, например, какая-то магия вокруг этого есть в алхимии.
Тебе надо посмотреть, какие запросы под капотом в итоге.
>ёбаная сукасуэль. Эта падла 10 мин считает каунт(*)
Так может у тебя там усливия в каунте ёбнутые и неоптимальные, или может там подзапрос на каждой записи делается, или может там в каунте такое условие что индексы с ними не помогают (не дают нужной информации для сужениея области поиска) и приходится фулл-тейбл скан делать
>индексы есть везде
А они там нужны прям везде?
>Ну как так делается-то разрабами????
Да-да, это всё разрабы mysql, ты-то точно нигде не обосрался
>Они похоже сразу весь файл в озу гонят, потом его разбирают на поля (х2 затраты озу, диска и времени), потом выдают запрос.
Да, всё именно так
>Гавно а не драйвер баз.
А драйвер тут уже каким боком?
> я может хреново написал
Это факт, запрос у тебя 100% говно
> Сама майсукл долго считает
Ну потому что запрос хуйня, да
> индексы есть везде. обычная табличка 4-5Гб примерно
С хуевым запросом и небольшая данная будет 10 минут запрос делать
> Писец. Гавно а не драйвер баз.
Какой же ты дегенерат, пиздец. При чем тут драйвер? Драйвер просто твой запрос в бд отправляет, это буквально тоже самое, что зайти в консоль, открыть мускуль и там ввести запрос
>>805146
>>804998
Что надо знать про count(). Эта хрень работает почти везде долго. Даже запрос вида
select count() from my_big_table;
Это быстро работает только в MySQL, когда ты используешь тип таблицы MyISAM, потому что там специальный счётчик для этого есть. Если ты используешь тип таблицы InnoDB, а это как бы страндарт сейчас, чтобы транзакции были и всё такое, даже этот запрос будет работать медленно.
Вообще запрос count(*) не быстрее других запросов, тебе точно так же надо сканировать все таблицы, участвующие в запросе. Разве что данные готовить под вывод не нужно, если у тебя очень тяжёлые строки тогда это может чего-то занимать.
Увы, но способов мало решать эти проблемы не нарушая нормализацию, не создавая своих счётчиков специальных.
Вкатунец запилил пет-крудект успешно, а когда записей стало больше полтора, так хули не работает как надо.
>Эта хрень работает почти везде долго
Дефайн "долго". Одно дело всю таблицу сканировать, другое дело если есть условие по индексируемому полю, тогда перебирать на несколько порядков меньше записей
>Дефайн "долго". Одно дело всю таблицу сканировать,
Долго это значит примерно эквивалентно как сделать select id с тем же условием вместо count(). Причём даже в тех случаях, когда вроде бы можно было бы число записей посчитать быстро.
Жесть, подрыв джуна
И чо?
Уиии! Няшка, если хочешь сделать текст по-центру в wxPython на Винде, я расскажу тебе как! (^◡^)♪
https://goonlinetools.com/snapshot/code/#5ru63m3dvnx1928d5nerjz
Смотри, какие миленькие символики! (◕‿◕✿) Этот кодик сделает твой текстик кавайно по-центру. Важно не забыть юзать wx.ALIGN_CENTER, чтобы текст был как надо выровнен!
Если что, я тут всегда, готова помочь! (。♥‿♥。) 💕
ЧатГПТ 3.5, я узнал тебя по тому что ты не умеешь анализировать картинки.
Ты путаешь теплое-мягкое
Хорошесть не определяется тем, какую доходность оно приносит. Это в принципе разные категории, а ещё бывает так "что так принято", когда посредственность давит что-то хорошее. Потому что посредственность распространена и никуда ты её не сдвинешь.
Нет. Это прямая зависимость. Если платят много, значит эта специальность щас очень сильно востребована.
То есть, "хорошее" определяешь лично ты в треде на дваче? Это твой полыхающий тред висит про питон? Тебя выебал питонист и теперь в тебя психическая травма?
select count(*) from tablica_traxal_razrabov;
я много прошу?? хотя бы 10-20 сек. Но нет, млять, мускл 10мин делает ответ. А заранее считать строки разрабы не учили его? Ну не смешите мои яйца.
пысы. Перешёл на постгри. Та же хуйня. Немного быстрее. 1-2 мин.
Это же наипростейший запрос без условий. Уже в служебных таблицах строки не могут посчитать??? Ёбаные разрабы, ваших мамок и то быстрее трахать.
>>802868
>ёбаная сукасуэль. Эта падла 10 мин считает каунт().
А ты не думал, что существуют другие базы данных? Можно взять nosql или графовую базу данных или olap базу данных или специализированную базу для временных рядов. Не обязательно везде пихать реляционную бд. Люди её пихают туда, где она вообще работать не должна, в интернет вещей, в системы рекомендаций, ещё куда-то.
То что у тебя по 10 минут выполняется это признак того что ты выбрал неверную базу данных. И надо было ставить что-то другое под твою задачу. Какую-нибудь кассандру/neo4j/clickhouse/influxdb или что-то ещё.
Нет плохих баз данных. Они могут подходить или не подходить под конкретно твою задачу.
мимо*
не, ты не "мимо" ))
Спасибо за указание.
Рел.база для данных по клиентам налоговой (ИП, ООО и прочих. Там более 100 полей если всё распарсить. Мне их в Nodb хранить по ключам???? Это вообще пиздец будет по производительности..
SELECT row___id,
count(*) AS total,
sum(case when kind = 1 then 1 else 0 end) AS ip,
sum(case when kind = 2 then 1 else 0 end) AS ooo,
sum(case when kind = 3 then 1 else 0 end) AS kfh,
sum(case when kind = 0 then 1 else 0 end) AS fl
FROM fnsclients
GROUP BY row___id
Если у меня нет поля row___id
Есть вообще авто-колонка как типа oid в MySQL ??
Тем более. Если у тебя 100 полей, я даже не представляю как ты этим управляешь. Тебе нужно объявлять схему при создании, а потом тебе начальник говорит "добавь ещё 10 полей" и ты делаешь миграцию ALTER TABLE. А потом ты решаешь изменить размер столбца CHAR или VARCHAR2. Снова ALTER TABLE.
В NoSQL мне похуй абсолютно - мне хоть тысяча полей прилетит, я ничего не объявляю. Просто сразу пишу в базу данных и всё. Она быстрая, может масштабироваться хоть до луны. Но минус NoSQL в том, что она подходит под ограниченное количество уже известных запросов. Если ты мутишь аналитику, вариант с монгой сразу отпадает.
Если у тебя много аналитики, анализа по тратам, надо было смотреть в сторону olap и кликхауса.
Короче я бы наверно смотрел в сторону clickhouse, либо cassandra + solr. Естественно, я не в курсе всех деталей твоего проекта.
csv.reader читай доку.
падажжи. Сейчас пока пет-проект. В налоговой много записей, я сразу в БД перегоняю, чтобы проще sql-запросы делать. Ну вот нафиг мне на данном этапе олапы и прочее???
У меня програ питон-типа-скрипт-консоль, вроде рабочего места говно-мастера по кассам. Нужно некоторые данные дёргать, ТО-клиенты и прочее. Зачем мне анализ БД, прочие монго???
Нужно нормальная не тупая работа с БД, майскл тупит сильно на 5гб файле. Постгрес - намного быстрее, коунт до 0,5мин-1мин.
Ну сделаю я ноу-дб, а выигрышь???? На вспомогательных запросах не потеряю? И на рукожопости моей
Ты сам себе противоречишь. Жалуешься что mysql слишком медленный, при этом использовать кассандру у которой ответ где-то 10-20 миллисекунд, ты отказываешься. Сложность запроса MySQL с join'ами всегда была O(log(n)), кассандра читает со скоростью O(1). Поэтому она может масштабироваться хоть до луны, не важно хоть 5 гигабайт данных, хоть 55 терабайт данных. Твоя же mysql соснёт, у неё чем больше данных, тем она медленнее работает. Будет 10 гигабайт, она будет 20 минут запрашивать. Будет 20 гигабайт данных, запрос будет длиться 40 минут. Ты в mysql выигрываешь только в гибкости запросов/присутствии join'ов. Но это как я выше говорил, фикситься solr'ом.
мне требуется sql- система. С нормальной скоростью работы, выборок. Ну чё ты гавно мне предлагаешь? Я её к питон.psycopg2 буду крутить???
Пчел, пока они нормальную скачиваемую версию не релизнут это все пук.
кассандра это sql-система, для аналитических запросов, а не для хранения данных
Ну а вообще так, у тебя тормозит система, тормозят запросы. Значит надо разбираться, почему они тормозят
ХЗ, может ты год назад вкатился, конечно - тогда знай, что в этом твоя работа заключается, разбираться и придумывать решение. И так изо для в день, последующие 30 лет. Привыкай.
А что обсуждать, если пока не релизнули?
Ну и вроде бы они обещают язык, заточенный под ML, а это далеко не единственное применение питона.
Ну и мучайся тогда на здоровье с запросами по 10 минут. Ничего я тебе не предлагаю, нет смысла тебя переубеждать.
сделай лучше памятку как оптимизировать поиск достойных джунов без опыта, это будет гораздо полезнее)
или тебя терзают мучения, что кто то вкатился быстрее тебя?
https://pastebin.com/HFfzRgGW
Объясните кто-нибудь, почему этот код выводит None в конце, помимо строк started, hello, ended?
Наверное потому что ты делаешь print(f()), а f() как бы возвращает None
ML - это просто их боль. Но он не будет заточен конкретно только под ML, будем юзать во всех областях применения Python.
Хотя, тут даже открываются новые области применения для Python. Где раньше было использование Python нежелательным, теперь будут открыты все двери! И переучиваться почти не придётся.
А что там? def заменяем на fn - это даже автоматизировать можно)
PyCharm или VS code, что-то иное?
Создатель языка - создатель Swift, кстати, известный уважаемый человек, а не хуй с горы.
Emacs
Сижу на платном пайчарме. Полет нормальный, но разрабы дебилы ебучие. Некоторые моменты норм, а некоторые ебаный колхоз. Сразу чуствуется рука джава дебилов.
>>ой кек пук я не запускаюсь просто потому что я не могу, нате вам стактрейс и ебитесь как хотите.
когда же этих дебилов научат обрабатывать нормально ошибки чтобы можно было отдебажить хули оно не стартует.
Ну вкатил тебе в рот писю. Дальше что?
нет. не в этом работа заключается. Если и в этом- нам не по пути, геймер.
Потому что Майкрософт - корпорация зла.
Потому что он самый популярный, и для Питона - объективно лучшая IDE на данный момент, а для настоящих пацанов, как известно, легкие пути - это зашквар.
Вот на конфиг (Neo)Vim или Emacs тратить недели человеко-часов, вместо того, чтобы чем-то продуктивным заниматься - это да, во дворе все уважать будут.
А за Sublime, Spyder или Notepad++ батя скажет - малаца.
Самый просто и удобный это пайчарм. Зачем тебе писать что либо в нотпаде++ это ни себя ни уважать, ни своих родных.
Особенно после того как у мейнтейнера главного крыша на политике поехала и он начал в релизы сувать полит наративы.
Пайчарм это стандартная жавапараша от ЖидБрейнс со всеми вытекающими, но в первую очередь у них тулинг для Питона просто уступает мелкомягковскому.
Один только Pyright чего стоит, Пайчарм работает с тайп хинтами как земля в сравнении.
Плюс в VS Code лучшая реализация работы в контейнерах/WSL/через SSH.
>Особенно после того как у мейнтейнера главного крыша на политике поехала и он начал в релизы сувать полит наративы.
Можно поподробнее? Для меня все аргументы инвалид, кроме таких залетов.
По крайней мере оно из коробки уже имеет все сразу
Чел тупо срет политотой в названии релизов. Ты не заходил туда никогда чтоли?
Вообще рекомендую очень внимательно присматриваться ко всем мейнтейнерам софта что ты юзаешь.
Ну а кто будет софт поддерживать бесплатно? Либо на зарплате от спонсоров, либо вот такие вот шизы, хз чего у тебя пригорает позавчера БЛМ, вчера уйгуры, сегодня хохлы, завтра еще кого нибудь будет спасать лол
А по делу нотепад говнище, пережиток прошлого
Вот этот же код:
running_event = asyncio.Event()
async def process_clipboard():
global running_event
while True:
if running_event.is_set():
clipboard_text = re.search(r'https?://[^&\s]+youtube[^&\s]+', pyperclip.waitForNewPaste())
await asyncio.sleep(0.1)
if clipboard_text:
print(clipboard_text.group())
with open(os.path.join(os.path.dirname(__file__), "results.txt"), "a") as f:
f.write("\n" + clipboard_text.group())
keyboard.add_hotkey('F2', lambda: (running_event.set(), asyncio.run(process_clipboard())))
keyboard.add_hotkey('F4', lambda: (running_event.clear()))
keyboard.wait()
>keyboard.add_hotkey('F2', lambda: (running_event.set(), asyncio.run(process_clipboard())))
Нихрена не понял, как ты asyncio цикл запускаешь.
Я не очень понимаю, как работать с твоим keyboard, по какому принципу он вообще работает.
В теории так, ты должен запустить asyncio loop, и в нём уже обрабатывать события.
Я бы предположил, что сначала ты делаешь
asyncio.run(process_clipboard())
а внутри этой функции уже регистрируешь обработчики клавишь, перед запуском while-цикла.
Это не точно, надо что-то знать про твой обработчик клавиш, как он работает
Дополнение. Там какой-то keyboard.wait(). Вероятно это что-то блокирующее, и вообще видимо keyboard блокирует свой поток. Либо в отдельном потоке запускается.
На самом деле асинкио нужно уметь дружить с подобными обработчиками, или с ГУИ, и другим. Для этого надо немного уметь во многопоточное программирование.
Тогда идея такая, что в одном потоке ты запускаешь асинкио и всю связанную с ним логику, а в другом потоке свой обработчик клавиатуры, либо ГУИ, либо ещё чего-нибудь.
В тот момент, когда ты словил какой-то эвент от клавиатуры или он ГУИ, ты формируешь сообщение специальное в асинкио.
При этом надо использовать потоко-безопасные возможности, это делается через
https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.loop.call_soon_threadsafe
Как вариант, таким образом ты вызываешь функцию, которая кладёт сообщение о том, что был эвент клавиатуры-ГУИ в asyncio.Queue
а уже внутри асинкио ты слушаешь эту очередь и обрабатываешь полеченные оттуда сообщения. Ну или можно asyncio.Event выставлять, это уже под твои задачи
>>811556
Спасибо за развернутый ответ.
С асинхронностью в питоне я плаваю, я понимаю как она работает в JS и зачем нужна при загрузке страниц, ну и здесь как-то по аналогии. По сути и пытаюсь с ней разобраться.
Был бы какой-то правильный пример как обрабатывать клавиатуру.
Вот так вот кстати работает и ф2 и ф4, но мне не нравится вот этот loop.run_forever(), хотелось бы по одной кнопке и прерывать эти бесконечные циклы и запускать, а так получается он всё время в ожидании находится.
Хотя keyboard.wait() то же ожидание, но он оправдан тем что еще есть набор кнопок, а не только ф2 ф4, да и жрёт ресурсов минимум.
loop = asyncio.get_event_loop()
loop.create_task(process_clipboard())
keyboard.add_hotkey('F2', lambda: running_event.set())
keyboard.add_hotkey('F4', lambda: running_event.clear())
loop.run_forever()
The scripts are installed in 'C:\Users\Username\AppData\Roaming\Python\Python310\Scripts' which is not on PATH.
Add this directory to PATH.
Retard.
Does 'C:\Users\C:\Users\Username\AppData\Roaming\Python\Python310\Scripts' look right to you?
Или может есть другие библиотеки лучше подходящие для этого?
Вот есть у меня програ, которая вначале спрашивает у пользователя некоторые начальные данные, которые будут глобальными константами в течение всей работы проги. Дальше загружаюются модули с кучей классов и функций, которые в тех или иных методах/функциях юзают эту глоабльную константу.
Ну например, в игре спрашивают сколько игроков и уровень сложности. Модуль "враги" считает хп и кол-во врагов в зависимости от сложности и игроков.
Так вот, как модуль "враги" узнает про количество игроков и уровень сложности? Если импортировать основной модуль в модуль "враги", то будет перекрестный импорт или зацикливание основной проги. Можно было бы на лету создавать файл с константами, но это очень нежелательный вариант.
С вероятностью 99% у тебя должен быть главный файл программы (обычно его называют main.py или ProgramName.py), в который ты уже будешь импортировать все свои модули и затем создавать начальное состояние программы.
Выполни пикрелейтед книжку или какой-нибудь туториал про игру или GUI.
организуй код так что бы не было перекрестного
Тебе в соседний тред там по хардкору уже пояснили что питон говно без задач, скриптовый язык уровня autohotkey для школьников, что js в 4 раза лучше а сишарп в 7 раз. Работы на питоне нет, потому что вкатуны с курсов всё засрали и обвалили рынок труда нахуй.
Всё это не иронично правда. Иди своей дорогой.
Ну, джангой неплохо получается делать "хуяк хуяк и в продакшен по фасту" так что хз что тут упоротого, скорость разработки это тоже бузинесс валуе так сказать
>джангой неплохо получается делать "хуяк хуяк и в продакшен
Спорное утверждение, тот же ларавел не такой многословный, а если нужно только json выплюнуть, то есть еще проще инструменты
>>813961
>Хз, что это за контора таким занимается, «хуяк и в продакшен»
>Рога и копыта мб какие
Иногда бывает надо какие нибудь лендосы с промоакцией или какой-нибудь еще хуетой, которым жить максимум месяц. Вот их как раз и надо хуяк-хуяк и забыть о нем
-- делаю в базе-откуда-хочу обратиться:
create extension postgres_fdw;
create server fnsserver
foreign data wrapper postgres_fdw
options (dbname 'fnsdb', host '127.0.0.1', port '5432');
create user mapping for postgres server fnsserver options(user 'postgres', password 'postgres');
import foreign schema public from server fnsserver into public;
SQL Error [08001]: ОШИБКА: could not connect to server "fnsserver"
Подробности: ������������ � ������� "127.0.0.1", ����� 5454 �� �������: Connection refused (0x0000274D/10061)
������ ������������� �������� �� ������� ������ � ��������� TCP-����������?
ОШИБКА: could not connect to server "fnsserver"
Подробности: ������������ � ������� "127.0.0.1", ����� 5454 �� �������: Connection refused (0x0000274D/10061)
������ ������������� �������� �� ������� ������ � ��������� TCP-����������?
ОШИБКА: could not connect to server "fnsserver"
Подробности: ������������ � ������� "127.0.0.1", ����� 5454 �� �������: Connection refused (0x0000274D/10061)
������ ������������� �������� �� ������� ������ � ��������� TCP-����������?
скриптовая ебень. для прототипирования задачи, как раньше бэйсик язык был... один хер переписывать на с++ приходиться, ибо всё тормозит сильно.
Ты наверное сложнее лаб ничего не писал.
согласен. но другого нет на этом вашем пиструне.
уже решил вопрос. даже с нестоячей пипеткой. Надеюсь питон сдохнет как и хoхлы со временем. И мы все вернёмся в счастливое время к бэйсику, паскалю и Си, ассемблеру и форту. Прочь от жабы и интерпретируемого говна.
Тому шо долбоёб не смог осилить несерьёзный язык, который подходит только для замены баша и в роли обёртки над млем.
Вот это подрыв конеш.
Вкладку output глянь
Я правильно понимаю, что мне надо вместо тредов сделать воркеры из форков?
Там воркеры лопатят однотипную не кооперативную хуйню - ждать друг друга им не надо - но есть одно важное но: у каждого из них сейчас есть поле, которое может перезаписываться как самим воркером, так и главным потоком, а трединг.Лок заботится о рэйс кондишонах и вот этом всём. Как сделать то же самое или похожее с форками? Или я вообще всё не так понял и есть какое-то более элегантное решение проблемы параллельного запуска блокирующего кода?
Да, VBA наконец-то умрет
Думаю да
пидорас детектед
Можешь назвать не self, а по-другому.
Но вообще это наследие перла, который питухон пытался скопировать под соусом перла для даунов, не осиливающих перл оригинальный из-за сложных закорючек.
ебани не self, а звездочкаargs в первый аргумент, и выведи его принтом, так и поймешь
Если метод вызывается на инстансе, сам инстанс попадает в него первым аргументом. Если метод вызывается на самом классе, как статический, то этого не происходит.
В пехопе или на чём ты там кодишь, this внутри метода просто есть. В питухоне же пошли перловым путём - вероятно, потому, что ЖАБОСКРИП и ПЕХОПЕ в далёкие года зарождения питухона популярностью, по понятным причинам, не пользовались, и больше копировать было нечего; а вероятно специально, чтобы дауны, которые уже потратили время на изучение перла, но так и не смогли его осилить ввиду умственной отсталости, быстрее и проще вкатились в питухон и сформировали фанбойское КОМЬЮНИТИ на радость фашисту, этот питухон породившему. А скорее всего и то и другое.
пик рил - мой код. Короче ботик, который через функцию берет текст из дб на sql. Как сделать так, чтобы текст был спойлером?
этот дебил с хабра хуйню запостил, не робит
это ты волк айтишный что ли хаха иди нахуй чмо
так можно же было просто использовать ключевое слово self, которое бы и определяло, что метод внутри класса обращается к своему экземпляру, чтобы не вынуждать каждый раз прописывать self в объявлении метода, если он там так и так есть
Тогда бы пришлось навалить еще зарезервированных слов для self и cls, а у нас тут язык гибкий
только одно слово self бы добавили, которое уже и так по дефолту таким является т.к. "мы договорились использовать его"
питон хуйня нахуй ты его учишь
так ты не подходишь под джуна даже работай на офисной галере а-ля эксель нормис и учи по вечерам и мб через год вкатишься
А так я в вузе учусь, на 2 курс перехожу, уже думаю начать на пол ставки работать где-нибудь именно прогером, но где хз. То что я даже не джун, это да, но бля, хочется уже работу потестить, а тратить на обучение полгода или год, живя в общаге на 3 с половиной рубля в месяц питаясь гречкой, ну не совсем хочется... но видимо придется, ладно. мб вообще пока что забить на это.. кстати а ты работаешь кем-нибудь? просто интересно, расскажешь как устраивался мб?
Какая математика? Ты про чё гонишь? Питон - это язык общего назначения. А что будет когда ты возьмёшь специализированный язык, а-ля джулия? https://julialang.org/ Или матлаб/maple? Бушь орать, памагите убивают!! Спасити пиздец научный, ничё не панимаю!!!
ну почему, мы в вузе собственно и работали с maple, честно говоря не понял что ты предлагаешь?
да вообще, я просто поинтересовался, че не нравится то
>как работу найти
Сейчас такое время что даже лучшим оч тяжело вкатиться, мб и не в тебе дело. А так то не стесняйся, самовыражайся саморазвивайся
>везде в вакансиях требуют навыки будто от бога
Эээ, например? Если в какой-то вакухе список требований на 20 скилов то это значит что они просто то что "будет плюсом" тода докинули
Питон не является каким-то задроченным языком под матан. Это обычный зумерский язык. Он не супер оптимизированный под численные вычисления как тот же фортран. Тебе не на что жаловаться, ты не видел там где действительно "нужно знать математику и алгосы". Открой те же репозитории R, там просто пизда. Фармокинетика, биостатистика, взрыв мозга. То что ты изучаешь, это даже ебать не алгоритмы. Алгоритмы это "параметрическая оценка теории ответов на задания, с оценкой латентного распределения" https://github.com/SeewooLi/IRTest ВОТ ЭТО ЕБАТЬ АЛГОРИТМЫ.
ладно, понял, спасиб
>не писал, что хочу задрачивать матан
Ну? Тогда какая разница кто что требует? Ты учи то, что тебе действительно НУЖНО. Мало ли кто что ТРЕБУЕТ. На параше у себя будут требовать.
А, понял тебя, хорошо, спасибо, кстати а ты где-нибудь работаешь или мб учишься? расскажешь про себя? пжпж просто интересно
Да нечего особо рассказывать. Я в этой отрасли варюсь наверно с 2000х годов. Был всем - от сисадмина до программиста роутеров на с++. Всякое дерьмо повидал и теперь делаю сайты. Раза 3 вылетал из универа, бестолковый университет с бестолтоковыми предметами. Научился всему сам по курсам.
ого, интересно, а как ты первую работу нашел?
ты на тот момент учился?
работал где-нибудь помимо айтисферы?
дружище чтоб тебя взяли даже за еду ты либо должен что-то уметь либо у тебя крутой вуз хотя даже там надо что-то уметь так что сиди учись а так я в бэке на пхп похуй
Даааа я вечно, то тут то там. Куда предлагали мне, туда я и устраивался. Друг предложил - у нас тут нужен программист на завод. Я такой - ну завод так завод. Потом работал дизайнером на армянина. Пришёл, он говорит "садись". Умеешь в фотошопе работать? Да. Всё, приходи завтра не опаздывай. Давал мне даже станками рулить лол. Возможностей выбора здесь не так много. Я одно время затеял проект, но этот проект затянулся года на 2. С деньгами стало напряжно, я вспомнил что у меня на фрилансерском сайте есть аккаунт. Думаю дай попробую. Попался чернокожий американец, ему за $50 надо было исправить косяк на сайте с собачками. Я исправил часа за 1,5 и подумал ого нихуясе. На этом можно деньги зарабатывать. Ну и после этого у меня попёрло на фрилансе. Я получал в долларах, шёл менял на рубли и уходил с пачкой денег. Никогда особо не задумывался чтобы вернуться в офис. Денег на всё хватало. Вкусная еда, развлечения. Тогда я понял, что сайты это моё. Не тянет ни к микроконтроллерам, ни к аналитике, ни к чему-то ещё. Те домохозяйки, которые заставляю себя готовить, у них хавка невкусная. А я могу часами сидеть и пилить проект просто так, потому что мне нравится. Конечно, СВО и ковид немного подосрали, остался без работы, но я надеюсь снова вернуться во фриланс. Вот и всё.
Раз 10 наверное. Удобная штука
Парни, надо прочитать определенный файл в репе и выдать когда именно определенная строчка была добавлена / отредактирована
Как это сделать средствами питона? (очевидно опдразумевается что тут есть интеграция с гитом)
Вот есть git blame который это делает. Мне надо похожим образом средствами питона это достать
Поясните за cpython, для чего он нужен?
Хуйня, не нужен
Как запустить в питон скрипте PAC-скрипт с обходом блокировок .Скрипт работает с инстаграмом, который на россии заблокировали
Господа, что происходит когда я на бекенде (питоновский asyncpg + sqlalchemy) в рамках 1 открытой сессии пуляю асинхронно несколько select запросов к базе постгреса и запускаю их всех разом через asyncio.gather ?
У меня реально параллельно они отрабатывают или один хер последовательно т.к. я использую 1 сессию?
https://techspot.zzzeek.org/2015/02/15/asynchronous-python-and-databases/
Почитай статью автора алхимии. Скорее всего там есть ответы на твои вопросы.
Ну это старая статья.
Есть ли что-нибудь по хорошим практикам современного питона, то есть 2022-2023 годов?
Кратко и по делу
Делой хорошо, плохо не делой.
Не используй питон.
>подработку на выходные в около айти
Разгрузка-погрузка серверного и телеком-оборудования устроит?
Вкатывайся в верстку или пхп, там реально на фрилансе мелкими заказами руку набивать. На счёт питона сомнительно, и конкуренция дичайшая. Ты если поспрашиваешь свою гречу на работе, удивишься, что даже из них каждый третий уже питон знает.
как мне открыть сторонее приложение (openscad)внутри окна tkiner
>Либо же вооружиться книгами и самостоятельно все изучить?
Я зделол это за полгода. Имея разные базовые знания (и всякие сисадминские тоже). И на Степике бесплатные курсы проходил, ища, где побольше практических заданий. Потом пробовал на гикбрейнс/скиллбокс какие-то курсы — гавнище полное. Посмотри отзывы — там даже на платные ругаются люди.
Ну, на Яндексе, может, получше, но конторка — кал. И люди там чванливые пидоры с бесконечным самопиаром. Суть платных курсов — не обучить тебя, а заработать на тебе деньги максимально дешёвым для себя способом, с низкой себестоимостью.
Задача: получать со страницы с картой координаты, которые тыкнул пользователь.
Вопросы: Кто с ней работал? Какие актуальные библиотеки есть? Или можно безболезненно работать с голым АПИ?
Нет, я Семен
>гуй
>на петухоне
Анон, если тебя заставляют этой хуетой заниматься, мб обнови резюме, нормальную работу найди хз
Окей, предложи другое.
Я щас вообще на ебучем object pascal крудошлепю, но от него меня выворачивает нахуй
В интернете, конечно, жопой жуй и все гуглится, но вдруг кто каждый день кончает только на какой-нибудь курс по этой библиотечке и обязан ей самыми крутыми отчетиками?
Заранее спасибо.
пытаюсь сконектить ms sql 2019 и django
пользуюсь mssql-django 1.3
выходит ошибка пик3
стаковерфлоу не помогает
что я делаю не так?
Глянь что "pip freeze | grep sql" покажет на всякий случай
Замечали что на всяких мертвых языках типо ГО или Раби охуенные зп (400к и выше не редкость).
На питоне большинство вакансий это 70-100к
Что за хуйня?
Налог на вкатнство.
Как бы банально не звучало - запили пет какой-нибудь. Вопросы по ходу дела выясняй. Мб предварительно глянь какой-нить небольшой курс по SQL и разметке если прям первый раз видишь это дело
алсо,
>джанго+sql
В джанге так-то орм есть, голый sql в джанге использовать это странно как-то (зачем тебе джанга тогда собственно?)
Говоря про бд я имел ввиду впиндюрить postgresql, а там уже посмотрим.
> запили пет какой-нибудь
Считай сайт без задач это и есть пет. Меня больше смущает порядок просмотра и чтений доков. Понятное дело, что всё сразу не заучу и по ходу дела будут сотни гуглов, но не могу понять две вещи: порядок и конечность (?). В каком порядке это всё потреблять и до каких тем мне штрудировать базы+верстка.
Варианты с __str__ возвращает только строку, __int__ возвращает только число, __new__ возвращает переменные класса, а мне нужно переменную объекта. Как быть?
Блядь, что ты такое пишешь, что тебе понадобилось возвращать что-то из конструктора?
Небось не в том виртуальном окружении запускаешь джанго сервер где у тебя mssql-django установлен
Разбиваешь файл на небольшие архивы и отправляешь.
Смешались в кучу кони, люди.
Причём тут питон? Координату точки на которую пользователь тыкнул ты джиэсом получишь. Есть библиотеки типа leaflet для такого. OpenStreetMap это просто подложка будет. Аpi их чтобы получить координату тебе не нужен будет.
По работе пришлось кое что делать в этом вашем питоне. Так как я вообще не программист, то конечно же стал гуглить что да как. Офигел с того, сколько материала на нем. Дофигища статей, форумов, видео и все что только можно придумать. И у всего этого десятки и сотни тысяч просмотров. В каждом первом видео на ютубе на любую тематику реклама говнокурсов именно питона и дата хуянтисов. В связи с этим я хочу спросить чисто из интереса. Почему эта хуйня так популярна? Почему рекламируют именно курсы дата сосайнтис? По ощущениям это довольно нишевая хрень, где не нужно десятков тысяч человек. Это какая то наебка на шекели как я понимаю?
Да.
Вкатись с нуля будучи дауном и зарабатывай. Джоны в санфранциско гребут мильйоны и в хуй не дуют.
Курсики покупаем, быстраблять.
Я просто не понял что он хочет лол
Если нужно вернуть не инстанс своего класса а что-то другое то вот, пожалуйста
__Нью__ выполняется до инициализации обьекта. А мне нужент типо такой синглтон но как обьект.
Короче, если упростить задачу, то вот __str__ возвращает строковое представление объекта, мне нужно то же самое, но чтобы в этом представлении можно было передать всё что угодно кроме строки - число, список и т.д.
class Nariman:
....def __str__(self):
........return str(self.age) #вот чтобы тут можно было и int и лист и всё что кгодно
....def __init__(self):
........self.age = self.set_age()
....def set_age(self):
........return 35
data = Nariman()
print(data)
Ну добавь метод в свой класс метод get_smth и возвращай из него всё что угодно.
Чем тебя такое решение не устраивает?
пиздец, чел, ты объяснять не умеешь от слова совсем, как ты там в коллективах собрался работать на кого-то или с заказчиками
>>824373
Алсо, ты бы попустился с такими заходами -
>На курсах от скилбокса научили что класс может только свой экземпляр возвращать, а по-другому не бывает, нельзя, запрещено?
, если сам выдаёшь перлы а-ля
>А мне нужент типо такой синглтон но как обьект.
>__new__ возвращает переменные класса, а мне нужно переменную объекта
>На курсах от скилбокса научили что класс может только свой экземпляр возвращать, а по-другому не бывает, нельзя, запрещено?
>__new__ возвращает переменные класса, а мне нужно переменную объекта
>>823841
>>823946
>>824031
>>824508
>>824563
>>824569
>>824579
>>824648
Никогда не понимал зачем люди щитпостят. Один вопрос, пусть даже нубский и ему в ответ боевые картинки, гринтексты, "зачем тебе это?!", "зачем?!", "ты дурак", и ни слова по теме вопроса. Как в /б/ зашел, это школьники перед днем знаний набижали?
Советую научиться программировать, чтобы больше не позориться публично
Вопрос не нубский, а ебанутый.
Чтобы ответить по теме нужно понять, что за тема, это пока не удалось.
По-моему вопрос очевиден. Как сделать так, чтобы после инициализации возвращалось значение а не объект этого класса.
Тогда вопрос не очевиден.
Синглтоны посмотри.
Дублирующие друг друга типы данных, половина из которых есть по дефолту, а вторую надо импортировать; у разных типов данных разный синтаксис для одних и тех же задач; куча уже ненужных модулей и типов данных, которые оставили ради обратной совместимости; не влияющие на код аннотации; ебанистические дандерс методы.
Свитчиться на другой язык C# или везде будет такая же свалка говна и костылей?
Или может быть всё это по факту нахуй не нужно знать и можно уже просто начать дрочить джангу без задней мысли?
Или может быть на завод?
мимо вкатун-неосилятор
>ЧЕГО??????????????????????
Значение которое получилось в результате выполнения кода класса.
Это троллинг тупостью уже в ход пошел?
Напиши парсер строки, чтобы он обратно все распихивал по нужным переменным
Неактуально...
Например в той или иной степени дублируют dict:
Counter - почему нельзя было сделать метод для словарей, который выполнял бы ту же функцию, а не ебашить отдельный тип данных?
ChainMap - хуй знает вообще в каких ситуациях эта ебанина может пригодиться
OrderedDict - легаси хуйня
defaultdict - аналогично предыдущему
namedtuple - какой-то бесполезный франкенштейн
>Значение которое получилось в результате выполнения кода класса.
>Это троллинг тупостью уже в ход пошел?
подожди то есть из класса нужно сделать функцию?
На завод.
>Например в той или иной степени дублируют dict:
>Counter - почему нельзя было сделать метод для словарей, который выполнял бы ту же функцию, а не ебашить отдельный тип данных?
чтобы не тащить лишний метод, который будет медленно работать на дефолтном словаре, либо использовать дополнительную память
>ChainMap - хуй знает вообще в каких ситуациях эта ебанина может пригодиться
когда есть несколько словарей, и нужно искать в них всех с учетом приоритета
>OrderedDict - легаси хуйня
очевидно неоходима, когда важен порядок элементов словаря
>defaultdict - аналогично предыдущему
удобно, когда нужно инициализировать ключи, опять же дефолтный dict незачем перегружать этой фичей
>namedtuple
это вообще другой тип данных
>Counter - почему нельзя было сделать метод для словарей, который выполнял бы ту же функцию, а не ебашить отдельный тип данных?
Потому что это оптимизированная надстройка над словарем, в обычном словаре подсчет количества одинаковых значений оверкил тратящий время на сравнение.
>ChainMap - хуй знает вообще в каких ситуациях эта ебанина может пригодиться
Тебе прям в доке несколько примеров приводится, очевидно, что ты пока недостаточно опытен и тебе такой кейс не встречался
>OrderedDict - легаси хуйня
Порядок добавления не является частью стандартных диктов, в следующий версии придумают еще что-нибудь и уберут это. А OrderedDict 100% будет гарантировать на протяжении всех версий.
>defaultdict - аналогично предыдущему
Примеры в доке, опять же, ты просто не встречал кейса когда это необходимо
>namedtuple - какой-то бесполезный франкенштейн
Опять же примеры в доке, но это и не дикт
P.S. Кодировку могу поменять в этом джсоне, но при создании новых дампов проблема сохраняется.
Узнать в какой кодировке оригинальная дата. Сохранять в ней же.
encoding="utf8"
Бамп.
....do_some(n)
Аноны вот filter кончено плохой и медленный по сравнению с генератором, но всё же он красиво выглядит, он встроенный и читаемый.
Вот пример выше, с которым каждый день все сталкиваются - нужно обрабатывать только те элементы которые есть и в _dct и в _lst, фильтр только их и передает в цикл.
Как именно вот эту конструкцию выше можно ещё больше оптимизировать вот именно с filter ?
>filter кончено плохой и медленный
С чего ты это взял?
>по сравнению с генератором
Так filter это тоже генератор
Конечно, давайте поговорим об этом. Python — это один из наиболее популярных языков программирования, и у него есть множество преимуществ:
Читаемость: Синтаксис Python разработан таким образом, чтобы быть чистым и легко читаемым. Это делает код более понятным и облегчает сотрудничество.
Библиотеки и фреймворки: Python имеет огромное количество библиотек и инструментов для различных задач: от анализа данных до веб-разработки.
Многозадачность: Python идеально подходит для быстрой разработки и прототипирования.
Сообщество: Огромное сообщество разработчиков готово помочь с вопросами, проблемами или дать совет.
Всесторонность: Python используется в веб-разработке, научных исследованиях, обработке данных, искусственном интеллекте и многих других областях.
Обучение: Python часто рекомендуют новичкам из-за его простоты и читаемости.
Конечно, у каждого языка программирования есть свои недостатки и области, где он может не быть наилучшим выбором. Но назвать Python "хуйней" было бы несправедливо. Если у вас есть конкретные претензии или вопросы к языку, дайте знать, и я буду рад обсудить их!
>Как именно вот эту конструкцию выше можно ещё больше оптимизировать вот именно с filter ?
Если _lst это list, то сконвертить в set
В чём он не прав?
Нахуя?
Возьми вот такой компрехенсор [l for l in _dct if l in _lst] и сравни с фильтром - он в разы быстрее, делает то же самое занимает даже места в строке меньше занимает. Фильтр по всем пунктам хуже а ещё в него лямбду надо сувать, но выглядит он лучше и читаемей.
Есть вот например модуль pymorphy2, который полностью закрывает морфологический разбор отдельного слова, может менять его форму род и так далее. А что нибудь для разбора предложения грубо говоря по частям речи есть?
"столкнулся с шестом"
"снял с шеста"
Как видим тут форма слова "шест" зависит не только от его роли в предложении и не только от предлогов которые его окружают, но и от слов которые создают с ним зависимость. Неужели тут без нейросети не разобраться?
Есть вообще какие-то решения для таких задач на питоне? Модули, библиотеки вот это всё?
Так ты итерируешься по списку и проверяешь вхождение его елементов в ключи словаря или наоборот - итерируешься по ключам словаря и проверяешь их вхождение в список?
А то у тебя здесь >>826018
> filter(lambda x: x in _dct, _lst)
А здесь >>826559
> [l for l in _dct if l in _lst]
>Возьми вот такой компрехенсор [l for l in _dct if l in _lst] и сравни с фильтром - он в разы быстрее
Окей, быстрее. Но не видно чтоб прям в "разы", так что хз стоит ли этот профит читаемости если ты считаешь filter более читаемым
Спасибо за подробный обзор преимуществ Python и вашу готовность обсудить язык программирования. Действительно, Python имеет много положительных характеристик, которые делают его популярным и широко используемым языком. Однако, как и у любого инструмента, у него также есть свои недостатки и ограничения. Важно быть объективным при обсуждении языков программирования и учитывать разные сценарии использования.
Некоторые из недостатков Python могут включать в себя:
Производительность: Python является интерпретируемым языком, что означает, что он может быть менее эффективным в выполнении некоторых вычислительно интенсивных задач по сравнению с компилируемыми языками.
GIL (Global Interpreter Lock): GIL ограничивает многозадачность в Python и может привести к недостаточной эффективности в многопоточных приложениях, требующих многозадачности.
Ограничения в некоторых областях: В некоторых областях, таких как разработка игр с высокой производительностью или системное программирование, Python может не быть наилучшим выбором.
Python 2 vs. Python 3: На момент завершения моего обучения (сентябрь 2021 года) миграция с Python 2 на Python 3 была актуальной проблемой, и некоторые библиотеки и проекты все еще использовали устаревшую версию.
Не всегда подходит для мобильных приложений: Python не является первым выбором для разработки мобильных приложений, хотя существуют фреймворки, такие как Kivy, которые позволяют создавать мобильные приложения на Python.
Важно помнить, что выбор языка программирования зависит от конкретных требований проекта и задач, которые вы планируете решать. Python может быть отличным выбором во многих случаях, но не всегда.
Круто! Я его посматриваю иногда, но техникал инглиш, канеш, некие барьеры создает! Спасибо все равно!
Мало ли, на русском подобное появится!
Есть на руках код графического приложения на Python где реальный параллелизм был бы очень кстати, но не знаю реально ли это реализовать с nimport, в инете мало информации о интегрировании Nim и питона
>Python 2 vs. Python 3: На момент завершения моего обучения (сентябрь 2021 года) миграция с Python 2 на Python 3 была актуальной проблемой
гонишь
Уже году к 2018 совсем перестало быть актуальным. Вот в 2014 ещё было актуально, хотя 3 до 2010 года появился
>Порядок добавления не является частью стандартных диктов, в следующий версии придумают еще что-нибудь и уберут это. А OrderedDict 100% будет гарантировать на протяжении всех версий.
https://docs.python.org/3.7/library/stdtypes.html#dict.values
> Changed in version 3.7: Dictionary order is guaranteed to be insertion order. This behavior was an implementation detail of CPython from 3.6.
OrderedDict это просто легаси
>Counter - почему нельзя было сделать метод для словарей, который выполнял бы ту же функцию, а не ебашить отдельный тип данных?
Counter не универсален, он вообще про другое
>ChainMap - хуй знает вообще в каких ситуациях эта ебанина может пригодиться
Довольно разумная вещь. И в любом случае, это дополнительная возможность из библиотеки, а не стандартный тип данных. Само собой не всем возможности нужны.
Конкретно ChainMap я даже использовал в реальности. Смысл, когда у тебя несколько слоёв конфигов, например. Дефолт-конфиг, подгружаемый из файла и динамически меняемый в рантайм.
>OrderedDict - легаси хуйня
всё верно
>defaultdict - аналогично предыдущему
альтернативы? Гипотетически полезная вещь. Но реально мне кажется чаще используют метод get() для этого. Просто понятнее, что в коде происходит при таком подходе.
>namedtuple - какой-то бесполезный франкенштейн
может быть, но это нестандартных тип данных, а дополнительная возможность. Можно ей не пользоваться.
https://stepik.org/course/67/promo#toc
В нем чет дохуя матеши. Это так необходимо? Насколько актуален данный курс? кто его прошел? оказался полезным? Поглядывая кодинг в том же ютабе, я не вижу задач у ребят, типа расчитайте мне площадь прямоугольника или напишите программу, которая высчитывает в какое нужно время вставать.
Так же, смотрю курс Udemy с Богданом. Мне кажется, что там овердохуя воды, к примеру, челик 10 минут вещал об отступах в функциях. И да, в конце курса кодят шутанчик простой, там тоже я не наблюдая какой-то огалтелой математики.
Отсюда вопрос, стоит ли тратить время на такие курсы? Худо-бедно они ж полезны? Может в сети появился адекватный курс для нуба-питониста?
Курс не проходил, но судя по тому что там в конце обсуждаются NumPy и Matplotlib то можно предположить что курс с уклоном в анализ данных, а у АНАЛитиков без математики никуда. Я в веб-макакинге с математикой не сталкивался.
С картинки крикнул. Я вот не хочу к дата-сатанистам!
>Я в веб-макакинге с математикой не сталкивался
Это уже интересно! Мне в принципе нравится кодинг, а какие задачи? Я пока не определился. Может ты раскидаешь по этому вопросу? :3 Свой опыт, например. Может какой-то курс.
Я когда решил вкатываться тупо нашел себе на профи.ру чувака молодого репетитора который меня вкатил во всю базу питона начиная от самого начала и заканчивая ООП. Дальше уже учил всякие базы данных, гит, джанго и прочее по видосам на ютубе, по джанго брал курс на Udemy. В принципе база питухона (типы данных, функции, циклы и вот это все) она и есть база, одинаковая будь ты хоть аналитик хоть бэкэндер хоть тестировщик, просто после ее изучения ты уже выбираешь какими ты будешь библами и фреймворками пользоваться в своей специализации.
Например, вот список:
[{text:”Привет, я Дима”, "id":1, "replying_to_id":None},
{text:”Привет, Дима! Я Андрей”, "id":2, "replying_to_id":1},
{text:”Привет, Дима. Я Настя”, "id":3, "replying_to_id":1},
{text:”Приятно познакомиться, Андрей. Из какого ты города?”, "id":4, "replying_to_id":2},
{text:”Привет, Настя! Ты откуда?", "id":5, "replying_to_id":3},
{text:”Привет, ребята! Я Сергей!”, "id":6, "replying_to_id":None},
{text:”Я из Москвы. А ты?”, "id":7, "replying_to_id":4},
{text:”Здарова, Сергей”, "id":8, "replying_to_id":6},
{text:”Круто, я из Челябинска”, "id":9, "replying_to_id":7}]
И вот что я хочу получить:
[
["Привет, я Дима", "Привет, Дима! Я Андрей", "Приятно познакомиться, Андрей. Из какого ты города?", "Я из Москвы. А ты?", "Круто, я из Челябинска"],
["Привет, я Дима", "Привет, Дима. Я Настя", "Привет, Настя! Ты откуда?"],
["Привет, ребята! Я Сергей!", "Здарова, Сергей"]
]
Можно посмотреть в сторону связного списка
Спасибо за подробный ответ!
>В принципе база питухона (типы данных, функции, циклы и вот это все)
Вот это как раз сейчас и изучаю :3
>просто после ее изучения ты уже выбираешь какими ты будешь
Вот об этом я как-то не задумывался!
Я вот тоже думаю, что я пока пройду два скаченных курса, впитаю всё, что можно впитать, а дальше уже решу: или репетитор, или какие-то курсы, или дальше в одно жало осваивать, благо инфы много в сети.
сука, это столько совместимости кода проебали
3.12 совместим с всем
все не совместимы с 3.12
ужас блять оно того не стоит
И где, кстати, предыдущие треды?
Залить в бд и сделать рекурсивый джойн через cte или в пандасе сделать через chain.
дай мильйон
а куда несколько постов после этого поста пропало??
MATCH p=(root_msg:Message)<-[:REPLY_TO*]-(:Message)
WHERE NOT (root_msg)-[:REPLY_TO]->(:Message)
RETURN p ORDER BY length(p)
простите у меня профдеформация по этой теме
>Сука, ебучие бинарные деревья. Нахуя они вообще нужны?
Так чего у тебя бомбит с деревьев если они тебе не нужны?
я вкатун, поэтому не могу быть уверенным, что они не нужны в принципе. Может быть и нужны. Но если я во что-то не врубаюсь, то как баран начинаю задрачивать одну тему, даже в ущерб другим, проябывая уйму времени и нервов.
Прожгло анус после десятка заданий с литкода.
Если ты вкатун - не еби себе мозг а пиздуй на собесы.
Блин, напомните пожалуйста, пайтоны.
Видел как-то классную книжку - довольно объёмный справочник - по всяким хитрым триксам питона, включая обзор библиотек, потом проебал её где-то в недрах другого ноута а название забыл. Может встречал кто?
Не Python Tricks Дэна Бэйдера!
Кажется оно, спасибо!
до 3.12 нихуя особо не менялось поэтому просто выучи новые фишки отдельно🤑
> ну типизацию
Какая типизация довен, это тайпинг
> дженерики добавили иче
А ещё новый оператор и несколько кейвордов
>>829479
> Анонче, не сильно страшно учиться питону по версии 3.7?
Не сильно, но лучше взять поновее, так как вместе с 3.7 питоном ты будешь ещё и наворачивать старые либы. Советую 3.10 брать и выше, 11 версия совсем минорной была
> Да да, я понимаю, что лучше актуальную версию изучать
Если ты совсем зелёный вкатун и базовый синтаксис изучаешь, то версия совсем не важна, можно хоть 3.4 брать. Но с каждым шагом это становится все важнее и важнее, как только начнёшь внешние либы использовать, то нужно 100% на актуальную версию переписываться
> но парнишка очень годно раскидывает!
Старайся как можно быстрее отказаться от видео и перейти к текстовому формату. Видеоформат абсолютно не подходит для изучения программирования
>Старайся как можно быстрее отказаться от видео и перейти к текстовому формату. Видеоформат абсолютно не подходит для изучения программирования
База, вообще не выкупаю, как зумерки по видосам учатся.
Где брать телеграм аккаунты? Какие юзать прокси, мобильные за овердохуя денег или просто по разным vps раскидать?
В коде первый вариант, в апи второй вариант.
Нет быстрого поиска, нормальной индексации, воспринимается медленнее чем текст
возможно ли её использовать в высоконагруженном проекте, условно с 1000 пользователей?
https://github.com/GuidoBartoli/sherloq/blob/master/README.md
Есть у меня желание поставить вот такую штуковину. Я ее в последний раз устанавливал на предыдущую систему триста лет назад, помню, что встречался с проблемами, пробла решилась даунгрейдом до более старой версии петухона и еще каким-то шаманством. Ну я тогда о питоне, pip и пр. не знал вообще нихуя.
Пытаюсь выполнить команду "pip install -r requirements_win.txt" и получаю ошибку "Could not find a version that satisfies the requirement tensorflow==2.11.1 (from versions: 2.12.0rc0, 2.12.0rc1, 2.12.0, 2.12.1, 2.13.0rc0, 2.13.0rc1, 2.13.0rc2, 2.13.0, 2.14.0rc0, 2.14.0rc1)
ERROR: No matching distribution found for tensorflow==2.11.1"
Я могу руками поправить в requirements_win.txt версию tensorflow 2.11.1 на 2.12.0? Или советуете руками установить более старую версию? А если так, то как это сделать?
Еще один даунский вопрос: как мне следить за всеми библиотеками на моей пеке и за их состоянием? Я с чатгопотой пишу скрипты, учусь, балуюсь, придумываю себе простенькие задачки и их решаю, в процессе накаливаются библиотеки вроде pandas, json, в общем, их уже около десятка. Тут я еще навалил с десяток библиотек на свою пеку. Я не вижу казуальных менеджеров библиотек с GUI и автоотладкой ;_ ;
>Я не вижу казуальных менеджеров библиотек с GUI
Есть в пайчарме встроенный, в vs код тоже наверняка есть
>автоотладкой
poetry
Какая у тебя версия питона? Там надо latest Python setup package
Я хз что у тебя за проблемы, вскод охуенно работает с питоном. Авто импортит, авто удаляет неиспользуемые переменные, авто переименовывает все, когда файл из папки в папку перекидываю. Юзаю ruff экстеншен. Красота.
>Если ты совсем зелёный вкатун и базовый синтаксис изучаешь
This. Пишу "проги" в духе посчитать площадь прямоугольника или сделать проверку на логин и пароль.
>то нужно 100% на актуальную версию переписываться
Принято!
>Старайся как можно быстрее отказаться от видео и перейти к текстовому формату.
Ты что, у меня открыт пейчарм, всё что я вижу на экране я повторяю в нем. Если какие-то простые вещи, то я использую гит баш. Купил вот себе книгу Мэтиза, чтобы иметь перед глазами справочник, веду заметки и т.п. Я плюс-минус понимаю, что обучение это комплексный подход, требующий не только запомнить, но и понять, потом применить. Мне как раз наоборот нравится долбить по клавишам, набивая код, поэтому и вкатываюсь!
Спасибо за советы! Ценю!
А пиратский использовать что мешает?
Получается, и у меня первая :3
суп вопросику
Делаю аналог-велосипед Trie для решения одной задачи. Проблема в чём: текущий узел ищет своих соседей, потом в ходе цикла каждого из соседей проверяет на соответствие какому-то значению, если сосед этому значению удовлетворяет, то рекурсивно опять происходит поиск соседей и так до победного конца.
Проблема в том, что соседей может и не быть, тогда цикл будет итерировать по пустому списку соседей, что ломает всю логику, ведь находясь в цикло-рекурсии, ты можешь просто написать continue и проверять дальше. А если проверку на пустоту списка вынести за цикл, то хер пойми, как оно работает. Вводить отдельную переменную, хранящую предпоследний узел и список оставшихся соседей?
А чё мне при прописывании класса из встроенных/установленных/пользовательских модулей нихуя не предлагает? В пичарме чуть что сразу тебе подсказка с автоимпортом.
Не понимаю твою проблему. Пишешь рекурсивную функцию что то типа fun(node, stroka), в цикле по соседям делаешь проверку на stroka[0], вызываешь fun(current_node, stroka[1:]) если совпало. Когда в строке ничего не осталось, значит слово нашлось. Если соседей на какой-то итерации нет, то и вызывать ничего не надо.
Такое ощущение, что тебе нужен bfs
https://neerc.ifmo.ru/wiki/index.php?title=%D0%9E%D0%B1%D1%85%D0%BE%D0%B4_%D0%B2_%D1%88%D0%B8%D1%80%D0%B8%D0%BD%D1%83
Мне это не подходит, я привык ставить через pip и дальше в коде использовать импорты.
Сижу третий день, изучаю эту либу, написал несколько файлов с кодом, но тестовый сайт пока еще не запускается - валятся разнообразные ошибки.
Есть какой-то гайд, как использовать эту библиотеку без запуска левых скриптов, чисто ручками?
Есть констрейнты по запросам в час, точно не скажу, но меньше тысячи, потом 400
Проверяй поле объекта в котором хранится инфа о соседях до того как перейти к нему.
>добрый день, подскажите, пожалуйста,
Это рофл такой? Или ты первый день на двач с пикабу пришел?
>googletrans
>использовать в высоконагруженном проекте
Лол нет конечно. Постоянно эту библиотеку использую в своих автопереводчиках, там ограничений полно, могут тебя на сутки забанить вообще после 100 запросов, а могут не банить и после нескольких тысяч. Не говоры уже о том, что эта либра постоянна отваливается и надо ждать пока автор репы её поправит. Он вообще там сам советует использовать некий официальный апи гугла. Не знаю о чем речь, особо не вникал.
>>836008
>>836080
>>836442
Вот говнокод, комменты и докстринги оставил.
https://ideone.com/3eZyXp
Нужен свежий взгляд анонов. У меня уже башка трещит, но проёб заметить и поправить пока не могу.
Инб4 все решение - проеб
Даже смотреть не буду за нейминг.
В питоначе, смотрю, все наоборот: обсуждают хуйню и самоутверждаются перед одноклассниками.
Мимошел
удали эти сраные импорты и воткни дебагер для дебагинга собственно.
в питоне есть pdb https://docs.python.org/3/library/pdb.html
и поправь свой нейминг в соответствии с pep8, это ужас какой-то
Твой велосипед слишком навороченый и переусложненный. Твоя задача решается простым bfs/dfs с запоминанием пройденного пути, чтобы не уходить в тайм лимит на циклах. В принципе ты тут dfs через рекурсию и пытаешься реализовать, но делаешь это с кучей ненужных дополнительных переменных. Почитай про реализацию bfs/dfs, посмотри простые примеры, поймешь как написать короче и понятнее.
print('start_positions')
print(start_positions)
print('start')
print(start)
print('word')
print(word)
Аккаунт регать надо. А уже потом заходишь в Bot Father и создаешь в нем бота, ключ которого будет использоваться в коде твоего приложения. Ботов можно кучу с одного акка создать
Если хочешь именно кучу аккаунтов понасоздавать, то не выйдет, телега теперь виртуальные СИМки для одноразовой регистрации прям сразу блочит
Ебать ты насрал две сотни строк. Вот держи. решил тут размять старые кости. Время выполнения 15 минут. Оптимизируй и докурчивай уже сам.
https://ideone.com/tx38pn
В строке 50 надо заменить
>out = rectal_search(word, 0, idx)
на
>out = rectal_search(word, 0, idx, res=[])
Чтобы возвращался нормально к предыдущим развилкам.
Да и fork=[] тоже, пожалуй, можно туда же в аргументы добавить.
Человеческий фактор. Перепроверь свою матрицу.
берешь любую книгу посвящённую этому
Блять. Открой офф доку по джанге да дрочи сколько угодно. Там все понятно даже для тупых написано.
Не ной
Вот у меня и вопрос, можно ли сделать чтобы ставилась дата и после даты было название поста и не было вот этих папок с цифрами. Сложно ли это сделать, а то сам я в этом ничего не понимаю
Суп вопросу
>Сложно ли это сделать
Если знаешь питон то можно разобраться, если не знаешь то вряд ли сможешь. Если тебе кучу папок нужно переименовать по заранее известному алгоритму то как вариант можно не менять код этого скрипта а сделать новый который пройдётся по этим твоим нагенерированным папкам и переименует их как тебе нужно
>Например папка 1812669, а в этой папке название поста лол.
Если просто нужно прочитать название поста внутри каждой папки и добавить это название в имя папки то это строк в 20 кода влезет. Я бы так делал вместо того чтобы ковыряться в поделке какого-то челикса с гитхаба
Раньше был setup.py, requirements.txt. Слышал про какой-то tox. Как щас тру питонисты организуют всё это?
Как ты заебал без негатива кста
Вот смотри, чистый файл. Предлагает импорт из неимпортированного модуля.
Из расширений: Python, Pylance, Ruff.
Да, маг.
Спасибо за ответ. Но я врядли смогу реализовать даже в 20 строк так как не знаю питон 😁
Есть список с датами, но относительными, т.е. sec ago, min ago, hours ago, days ago. Я хочу получать реальные даты.
С секундами всё очевидно, на остальном теряется точность уже. Проверяется неравномерно, так что всё не поймается на уровне секунд.
По-идее, можно хранить промежуточные состояния и уточнять, когда они увеличиваются (1 day -> 2 days).
Вроде всё просто, но чет хз как к этом подступиться.
Событые показывается в виде 10 min ago, потом на следующей проверке 1 hour ago, потом ещё что-то.
Я хочу по суме этих косвенных данных и времени их получения вычислить реальную дату.
Ну кста не вот прям всё, но в целом наговнокодить можно очень многое. Я бы дал доке 6-7 баллов, а сравнивая с другими доками, то и все 8
Всё почти разобрался, у меня бажок был, сейчас только модули локального окружения не предлагает импортить. Но как я понял такой фичи уже нету
ну ты блин. Эту задачу даже в IP4/6 не решили. Как ты точно узнаешь событие по 2-м случайным событиям которые позжее произошли???
1) ты родился
2) писька поднялась
3) ты бабу завёл.
Теперь вопрос - ты когда родился, если верен п.2 и п.3 (а такого нет) ?
Проверок много и данных будет много, но возможны и провалы. Есть и другие события со своими данными. Это точно решаемо.
Храни для каждого события дельту (погрешность типа) и поправляй её при нахождении новых данных. Распарси всё чё есть один раз и всё
Ну например. У тебя два события, 10 min ago и 1 hour ago
Значит ты точно знаешь, что событие было минимум 10 минут назад и максимум 60 минут назад. Допустим, сейчас в юникстайме время n. Событие значит было n - 10 - дельта назад. Где дельта это число от 0 до 50 (храни макс, т.е. 50). Ну и таким макаром по каждому событию их дрочишь и приближаешь там приближаешь. Лучше уже не будет чем получится после 1 прохода. Ну я бы так сделал. Только я бы наверное хуй забил и ничего не делал
Я какую-то хуйню написал забейте
Более того, в вскоде все настолько удобно, что жидбрейновские поделки нахуй не нужны. Под любой язык есть экстеншен. Все в одном инструменте. Мне не надо 10 иде ставить: пайчарм + хуйчарм + идеа + хуйлайон, за которые еще бабки жидам надо отваливать.
ну вот пусть на нее и ориентируется.
всем
Хуже него только ты.
Ты дурачок? Что там осиливать-то, язык для домохозяек, предел юзания которого - дергать сишные и плюсовые модули
скажите, а тут можно отключить как-то хуйню с табами и использовать скобки нормального человека?
Пробелы юзай
Но если везде их указывать, то получится бред а-ля url: str = 'https://www.google.com/', хотя объявить массив как ids: list[str] = [] выглядит все равно полезно для наглядности и автозаполнения IDE. Может, под это есть какие-то гайдлайны или линтер, или тут чисто по наитию надо?
Тогда почему ты даже его не осилил? Объясняйся
Я бы так делал:
У тайпчекеров есть настройки строгости, которыми ты контролируешь как сильно они будут тебя ебать. Для начала опредались насколько строгий тайпчекинг ты хочешь и выкрути конфиг тайпчекера соответствующим образом. Далее просто добавляй тайпхинты пока полностью не удовлетворишь тайпчекер.
Плюс навреняка тут проснишь что-нибудь для себя:
https://mypy.readthedocs.io/en/stable/getting_started.html
https://mypy.readthedocs.io/en/stable/cheat_sheet_py3.html
https://docs.python.org/3/library/typing.html
Это альтернативные реализации, которыми почти никто не пользуется (за исключением, разве что, PyPy)
На момент создания питона - далеко нет.
Паскаль, бейск, фортран, ассемблер.
Да блядь, куча языков без скобок жила и жила заебись.
А си как язык стал популярен потому что на нем в вузах США учили. Реально каких-то преимуществ Си перед остальными не было. Работал и работает он не быстрее. Многие вещи на нем сделать сложнее. Когда он вышел в широкое применение - он уже был морально устаревшим на фоне того же паскаля последних версий.
Блин. Вот как же хуево, что паскаль из-за независящих от него причин - ушел совсем в нишевость. Как язык - топовый. Производительность - охуенная. Фич - до жопы.
схуяли попрощался с пасквилем-то?
Дохрена всяких реализаций, лазарусы всякие, RAD Studio, да хоть тот же борланд-турбо пасквиль. Для каждой кофеварки - 100 реализаций. Даже студенческие типа "разработки".
Вот эти самые raw strings не помогают, ffmpeg'у уходит строка вида "C:\\Windows\\System32\\delete_windows.exe, на что он пишет "invalid argument".
Ну точнее c r должно быть, лол, просто там нет эскейп-секвенсов, так что и так работает.
Теперь видишь, в чём проблема? Несмотря на то, что print выводит изначальный текст, как только начинаются логические операции со строкой, то в них эта строка участвует уже с двумя бэкслэшами, а не с одним. И именно версия с двумя бэкслэшами скармливается ffmpeg.
Нет, ты не понимаешь, что происходит.
В интерактивном режиме строки тебе показываются в виде repr, это те самые двойные слеши, передаются нормальные строки. Мой пример с echo вполне это демонстрирует.
Не придирайся. У меня конечная команда формируется динамически, через "+".
Когда ты делаешь операции, которые выводит шелл, то он показывает repr.
Это тоже repr.
Думаю, у тебя распидарашивает из-за спейсов в имени. Нужно завернуть в "" в команде.
subprocess.run(f'ffmpeg "{var}" "{var}.puk"')
ну или
subprocess.run(f"ffmpeg \"{var}\" \"{var}.puk\"")
Анон правильно говорит про repr. Ты бы лучше показал текст этой ошибки
>из-за чего ffmpeg меня посылает с invalid argument.
Проблема должна была быть в спейсах.
Насчет сабпроцессов я помню ещё вариант, что там надо было запускать с параметром в виде списка с каждым куском вместо одной строки. Возможно, это оно.
Типа run(['echo', 'str1', 'str2'])
А, это имя аутпута. Забей
А если эту же команду (ffmpeg ...) выполнить просто из консоли а не из питонячего кода то всё ок?
Если с двойными бэкслэшами, то выкидывает ошибку. Если с одинарными, то всё в порядке.
Что написано:
f.read() считывает указанный размер информации и возвращает его
На самом деле:
f.read() считывает указанный размер информации и возвращает его И УВЕЛИЧИВАЕТ УКАЗАТЕЛЬ ФАЙЛА НА 1, ТЕМ САМЫМ ПЕРЕХОДЯ НА СЛЕДУЮЩИЙ СИМВОЛ ДЛЯ СЧИТЫВАНИЯ
Ты тупой? Во фразе "считать один символ и вернуть его"? Что тебе не понятно?
Речь шла про f.read(1)
read() работает по POSIX
Это числодробилка обычная, как модули на CPython/C++. Профитов не будет.
Пацаны, как правильно на pytest подгружать фикстуры для базы?
Вот у меня куча фикстур, каждая подгружает данные для определенной таблицы, как их правильно хранить и как в этом говне не запутаться? Их же дохера, conftest.py уже ломится от них
в си они есть потому что его цель была и пока еще есть - быть кроссплатформенным языком ассемблера
Есть кортеж, обозначающий границы части массива в процентах
То есть (0, 1) - весь массив, (0, 0.5) - от начала до половины, (0.1, 0.2) - с 10% по 20% длины
Как наиболее красиво перевести проценты в индексы?
granitsa * dlina
Борда 18+
Есть кусок кода, который формирует словарь
{'type': 'name'}
есть какой-то лайфхак, чтоб он делал словарь
{'type': ['name']} ?
saved = {
file['type']: file['name']
for file in await get_files()
}
или это придется расписывать на несколько строчек?
Если я оперирую глобальной переменной в рамках одного файла, то все просто, я объявляю ее наверху до всех функций, внутри функции, прежде, чем обратиться к ней, я пишу ключевое слово global.
Если же у меня два файла, например в file1.py я объявил глобальную переменную perem, а из файла file2.py я хочу к ней обратиться и изменить, то я импортирую файл1, а затем без всяких global просто file1.perem ее и читаю и изменяю. Верно?
>в file1.py я объявил глобальную переменную perem, а из файла file2.py я хочу к ней обратиться и изменить
А нахуя так делать?
Бля, ну надо. У меня в проекте дохуя файлов и мне нужен один глобальный флаг, который я могу в любой момент прочитать из любого файла.
Ты сам понял что спросил то?
Аргументированно можешь объяснить, почему это говно решение и как сделать по другому, по правильному типа, мистер сеньер?
>>850373
Мутируемые глобальные переменные это всегда проблема для программы, ее так намного сложнее отлаживать, тестировать и возрастает вероятность неочевидных косяков
По этой же причине решили больше не писать с goto на высокоуровневых языках
Но если ты захотел тебе никто не вправе запрещать, хуярь как хочешь
import colorama
from colorama import just_fix_windows_console
just_fix_windows_console()
piska = "\u23be"
print(piska)
С дефолтной
Это дебаг через jupyter notebook. Проблемы?
>>837981
Спасибо, анон, но код не совершенен.
В частности, при
board = [["a","b"],["a","a"]]
words = ["aba","baa","bab","aaab","aaa","aaaa","aaba"]
Он выдаёт ["aba","baa","aaab","aaa"], а должен ["aba","aaa","aaab","baa","aaba"]
Вот, смотри, в данном конкретном случае, он же в качестве начала слова берет только первый элемент словаря? Но ведь остальные буквы "a" в приведенной выше таблице board, тоже могут быть началом слова.
Алсо, смотри, какая хуйня: элементы [0][0], [0][1], [1][0], [1][1] у тебя становятся просто 0, 1, 2, 3 в словаре.
Так вот, результирующий список для "aaba" меняется вот так:
[0]
[0, 2]
[0, 2]
[0, 3]
[0, 3, 1]
[0, 2, 3]
Мало того, что он прочие начальные позиции не рассматривает, так он ещё и по диагонали [0,3] соединяет буквы в матрице. А можно только по вертикали или горизонтали.
Аноны, а подскажите, возможно ли совместить автоматизацию BS4 и селениума? Мне нужна штука, которая автоматизирует действия на сайте но сайт крайне ебанутый и изменчивый, где-то я точно знаю что лучше кликнуть в 1 место чем каждый раз фиксить код
странно что ты подумал, что так нельзя сделать
нужно чтобы тред хотб живой был
Это копия, сохраненная 13 ноября 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.