24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы: https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации https://dumpz.org/ - можно постить листинги, не требует регистрации https://pastebin.com/ - для листингов, регистрация не обязательна https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться ####################################### Вопросы-ответы: А стоит ли читать Лутца, том номер N? Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем - решать тебе, книга вредна не будет, то ты можешь её просто не дочитать и забросить.
Стоит ли читать %книга_нейм%, если там питон версии 2.х? - Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х
А что ещё можно читать? - Питон сам по себе очень хорошо задокументирован, и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html
Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом? - очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4
А как учить джангу? Нахожу только книги по джанге 1.х - У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой, из официальной документации.
В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать - Вот, пожалуйста, та же самая программа, но переработанная под язык Python http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём - брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
Как во фласке загрузку каждого нового файла делать на отдельную кнопку? Пишу в форме images = MultipleFileField('Добавить изображения') . Но нельзя загрузить несколько сообщений по одному, только разом выделить несколько, что, очевидно, неудобная хуйня.
>>1532152 Сам то понял что спросил? В форме на фронте у тебя может быть 100500 этих кнопок, но если post запрос один, они все равно все скопом загрузятся. На беке при обработке запроса можешь получить все эти файлы из словаря данных запроса. Типа requests.data.files
>>1532134 (OP) Апну вопрос с прошлого треда, а то там только в рофл ответили и тред утонул.
Что нужно знать, что бы пайтон программистом зарабатывать хотя бы 400-500$ в месяц?
Учу месяца 3, знаю сам пайтон, sql (на уровне создания/удаления таблиц и разных селектов), гит, основные библиотеки, bs4, регулярки и немного джанго, только учу. Что нужно сюда добавить?
>>1532471 >РАБоту Альтернативные варианты - фриланс и свой проект. В первом придется конкурировать с охуевшими индусами, во втором надо либо родить действительно годную идею и качественно ее реализовать, либо быть больше чем программистом чтобы пролезть в жопу без мыла переполненную нишу.
>>1532463 Алгоритмы и структуры данных, много джанго, фласк, aiohttp и понимание асинхронности. Ну и конечно парочку крупных проектов самописных, работающих, чтобы можно было показать.
>>1532489 Чел, я перекатился в тестировщики из-за того, что не мог найти работу на питоне. Как раз думал, буду в свободное время импрувить свои знания и позже перекачусь в разрабы. Ну чо-т хуй знает, где это "свободное время" брать. Если только ты не на 8 часов идёшь устраиваться. Да и вообще после такой монотонной работы очень быстро заёбываешься и под вечер уже нихуя не хочется делать, а только аутировать за ютубом.
>>1532563 попробуй помимо вздрочнуть жабку и катись в веб, там вакансий вагон вечно, а если дохуя умный то кресты какие нибудь и машоб смежные языки глянь шо я те могу сказать
Предположим, у меня есть множество элементов в списке, элементы такие:
234!111^283
Мне нужно вытянуть то, что находится между восклицательным знаком и ^ (т.е в данном примере вывод будет 111 Как это сделать? через регулярки гуглил, но ничего не нашел, сплит тоже хуйня какая-то, работает только с одним символом. Вроде простая задача, но пиздец, не знаю что делать
>>1532637 404 означает что адрес не найден, поэтому проверь свой urls.py или что там у тебя. У тебя тупо до этой функции дело не доходит. Также для 200 кода достаточно просто пустую строку передать, необязательно явно писать статус. Для 405 есть ещё метод HttpResponseNotAllowed если ты в джангу играешь.
>>1532668 Мы вас - дотнетовских пидорах, обоссываем с причмокивание, не сией тащить виндоблядские либы в пистон, сука. Интересно при каких обстоятельствах тебе вообще понадобилось подключать платформозависимые либы.
>>1534315 Ты уже читаешь каждую строку циклом for lines in text, следовательно, каждая строка у тебя содержится в lines. Но потом ты вместо ее использования еще вызываешь text.readLine(), это передвигает указатель еще на одну строку вперед. Замени text.readLine() на lines и все будет ок
>>1532134 (OP) Вот ответьте по чесноку и максимально непредвзято. Есть ли смысл пытаться вебмакаки на питоне? Мне все-таки джс более специализирован для этого. Не надо споров и срача, просто ответьте те, кому есть с чем сравнить и кто имеет опыт. Спасибо.
Делаю свой небольшой проект, подскажите, что использовать для того, что бы сделать скриншот экрана, только я бы хотел реализовать это следующим образом: 1. Запускается скрипт 2. По нажатии горячих клавиш можно было выделить какое-то пространство на экране и делается скрин этого пространства. 3. Скрин улетает в скрипт на дальнейшую обработку.
Как в pytest юзать __debug__ константу? Если запускать python -O -m pytest, то он отключает ассерты. Мне надо быстро включать-выключать заглушки типа. if __debug__: print(f'val = ') Какие ещё варианты есть?
>>1536099 Всо, я нагуглил, там по другому видимо в новой версии сделали: >>> import struct >>> data =struct.pack(b'>i4sh', 7, b'spam', 8) >>> data Но разъяснения мне все равно не помешают
>>1536131 В какой новой? Эта походу ебала для питона 2, ты ошибся книжкой лет на n-цать. Во втором питоне строки были в аски, в третьем они в юникоде. Это функция уже вообще не акутальна, как и книжка, которую тв читаешь, никто уже давно не юзает 2.х пистон, все ждут, когда он уже наконец сдохнут.
>>1536142 так книга вроде на 3.0 рассчитана (так в гайде по изучению сказано, да и в самой книге до этого писали тип в устаревшей 2.х так, а в 3.0 так)
>>1536145 Я не смог осилить этого душного мудака - Лутца, но это нисколько не помешало мне в изучении пистона, даже тот пример, скрин которого ты кинул не актуален, ибо все используют with с файлом. Этот мудак просто кучу времени проманал на второй пистон, а потом решил, что редакция на скорую руку принесёт ему ещё шейкелей, впрочем судя по всему он и не ошибся. Посмотри на официальном сайте нововведени (хоть краткие) по версиям с 3.0, а потом посмотри на эту морально устаревшую книженку.
>>1536223 Ну насчёт скорости я бы поспорил, на мой взгляд смотреть видосы на 2-2.5x куда продуктивнее, чем читать книжки, да и запоминается лучше, хотя это всё субъективно, конечно
>>1536253 Ну это зависит от лектора, зачастую туда берут каких-то слоупоков с 1 словом в 2 секунды, видимо из культурной столицы, вот таких действительно тяжко смотреть на х1 скорости.
Пилю прохладную. Решил изучать 2-й 3-й или 4-й язык. У меня был опыт работы с крестами, скажу больше это был даже продакшн опыт, но меня кресты сильно покоробили, осознание этого пришло после выпездывания с работы, я их возненавидел и через все это вкатился в питон, как самою популярную альтернативу крестам, тогда ещё пистон был без типов и корутин вменяемых, а возможно их даже не было и с генераторами, в целом я считаю, что мне повезло и вырвался из ублюдский оков, уверен, что те, кто вкатился в пистон после сей будут целиком и полностью со мной солидарны. Хочу начать изучать второй язык, не беру в расчёт плюсы и шар, которые закопаны где-то в чертогах разума, и надеюсь никогда не настанет тот момент, когда придётся их раскапывать, самые очевидные претенденты голанг и раст, альтернатив тут практически и нет, с учетом того, что раст - плюсы не максималках, начал смотреть в сторону го, но сука, как же там плохо с документацией, посмотрел примеры кода тут - https://gobyexample.com/ и что-то совсем уныло стало, это прям какая-то угрюмую гремучая смесь типизированных языков со сборщиком мусора и скриптовой анархии, кстати да, видно откуда пиздят щепотки сахара в пистоне. Есть ли тут такие же аноны, как и я, которым язык в основном нужен не для бэкенда, а го в целом больше на него заточен, которые также всеми фибрами хейтят си и плюсы, давайте будем честны, шарп - вообще не язык, а подзалупный творожок мелкомягких и в целом очень нелепая подделка явы, которые хотят или хотели бы узичать и практиковать альтернативу пистону, и которые выбирают или выбирали другой язык, не могли бы вы посоветовать что-то? Лично я все на текущий момент все же склоняюсь у расту, хотя с учетом всего описанного выше, возможно это плохой вариант лично для меня.
>>1536253 Что ты несёшь? На одной странице средней книги информации больше, чем в нескольких минутах "видосиков", и читаешь ты быстрее, если не дефектный. Или это знаменитая зумерская нелюбовь к книгам?
>>1536399 лол. шарп хороший язык, гораздо лучше жабы, говорю это как разраб на шарпе пересевший с жабы. И если раньше шарп и был слизан, то сейчас уже жава слизывает с шарпа. Нельзя ли хотя как-то аргументировать свое мнение по поводу шарпа, а то от вашего коммента гавной воняет
Анончики, как вкатиться в написание бота для ммошки ? играю в игрушку, есть нужда, выполнять простые действия, типа бить нужных мобов, бегать туда сюда например. Не знаю с чего начать в принципе, опыта программирования особо нет.
>>1536478 Если элементарный фарм в клетке - можешь время от времени программно нажимать ТАБ для переключения на другого моба, соответственно скиллы и анализировать отдельные фрагменты экрана, если в этом есть нужда.
Ребятки, объясните в общих чертах, как так получается. Вот есть один сайт, и для работы с его API можно регать ключи (бесплатные). Которые разумеется имеют ограничения на число использований.
Окей, но на github лежит Питоний скрипт, который дает работать с этим сайтом без ограничений, и без использования API ключа вовсе!!! Скриптик реализован на многопоточности, но я пока мало знаю об этом.
Объясните в общих чертах, как многопоточность может обойти защиту сайта?! Ведь насколько я понимаю, к примеру, IP у каждого потока будет одинаковый? Типа сайт изи должен спалить что это один и тот же Васян его бомбардирует, и заблочить.Че то вообще не догоняю.
>>1536478 Есть программы-кликеры с возможностью анализа, по цвету, определенного пикселя, я бы для начала в их сторону глянул. Пилил на таком авторыбалку для АА
>>1536849 Именно программирование на Пайтон точно не пойдет, это как бы продолжение изучаем Пайтон, вообще советую пройти курс cs50(лютая годнота для 0, там и сайтики научат делать) или 6.0001 тут как-бы введение в программирование через Пайтон дефолтный первый семестр в вузе (но от мит)
>>1536413 Не исключаю, что моя информация уже устарела, сужу по состоянию на 5+ лет, к тому же я ненавижу дот нет и все, что с ним связано, я сейчас работаю с пистоном, но хотелось бы разнообразить немного жизнь и начать изучать новый язык, ибо мы вряд ли в ближайшее время слезем со стабильной 3.6 версии, новые фичи не хочу даже смотреть, чтобы не горевать о гипотетической утрате. В бытовухе использую 3.7. И вообще все что я сейчас высрал особо не относится к вопросу заданному. Скорее всего честный ответ - у меня предвзятое отношение ко всем продуктам и детищам мелкомягких, хотя использую винду чаще лини дома.
>>1536503 Все просто, они не используют апи сайта, который накладывает ограничения, я посылают реквесты голые парсят ответы, тут модно словить баг по айпи, впрочем если сайт не предусмотрел возможность абуза путём встраивания 100500 связанных яваскриптов и аякса, то скорое всего им плевать.
Да нет вроде, 14 версия на носу. Не может же оракл взять и перелопатить свой язык и сделать из него конфетину типа шарпа и котлина, они ведь обратную совместимость опломают к хуям
>>1535647 о, я внезапно увидел. А в чём проблема? Под дотнет есть готовая либа для подключения к MSI Afterburner, а без неё я хуй знает как это сделать, только через костыль в лице Remote Server. Хуль ты выёбываешься?
>>1536413 Чувак шарп изначально разрабатывался с целью сделать язык как джава только лучше. С таким подходом и финансированием сложно было не достичь этой цели. Но даже тут они объебались: закрытый исходный код, отсутствие кроссплатформенности, заточеность под винду - все эти факторы довольно сильно отталкивают от языка. Вдобавок сам язык охуеть как перегружен, сколько там способов запустить задачу асинхронно, сколько вариаций анонимных функций, сколько вариаций LINQ (2), такое ощущение что у авторов не было четкого плана и они тащили в язык всё что вздумается.
Но все эти недостатки меркнут в сравнении с главным - у шарпа мертвое коммьюнити, в язык контрибьютит только майкрософт, у языка до сих пор нет ни одного масштабного фреймворка (типа джанги), который был бы разработан коммьюнити, 90% библиотек написаны майкрософтом. Надеюсь тебе не нужно объяснять почему это хуево. Также можно даже посмотреть количество репозиториев на гитхабе с количеством звезд больше 5к (спойлер: C# там на дне, даже после всяких Golang'ов и Rust'ов).
Как итог, мы можем видеть, что C# всё-таки нашёл свою нишу: разработка desktop-приложений под винду и тырпрайз разработка, но в хайлод его уже не пустили. Конечно, некоторые недостатки сейчас активно исправляются (.NET Core + открытие исходников), но вряд ли это уже поможет, C# слишком verbose для 2019, хайп ООП уже давно прошёл и сейчас снова в моде хороший структурированный код без абстрактных фабрик абстрактных фабрик.
Помогите справиться с форматированием. Есть код https://pastebin.com/frv37hXr нужно в финале получить [[ nan nan nan nan nan 50.00 nan nan nan nan nan] [ nan nan nan 44.55 nan 50.00 nan 56.12 nan nan nan] [ nan 39.69 nan 44.55 nan 50.00 nan 56.12 nan 62.99 nan] [ nan 39.69 nan 44.55 nan 50.00 nan 56.12 nan 62.99 nan] [ nan 39.69 nan 44.55 nan 50.00 nan 56.12 nan 62.99 nan] [ nan 39.69 nan 44.55 nan 50.00 nan 56.12 nan 62.99 nan]] (это триномиальное дерево по-идее) Не пойму как эту формулу поменять newtree[i,N+(2*j-i)-i] = tree[i,j] Или там в другом месте ошибка? Причем я сам считаю например при i=0, j=1 получится newtree[0,7] = tree[0,1] где tree[0,1] =56.12 а мне nan выдает.
>>1532231 Уточню: нужно чтобы в поле manytomany по умолчанию были все объекты типа, на который оно ссылается. Если в default поставить Model.objects.all(), то makemigrations крашится
Здарова, программаны. Есть такой кусок программы: last_id = int(data['last_id']) chat = chats.find_one({'id': chat_id}, {'_id': 0, 'id': 1, 'messages': 1}) new_messages = [] for mesg in chat['messages']: if (int(mesg['id']) > last_id): new_messages.append(mesg) chat['messages'] = new_messages return json_util.dumps(chat) Есть один объект mesg, он выглядит вот так: {"id": "1575546898", "author": "1", "time": "2019-12-05 14:54:58", "content": "asdf"} И на нем выдется ошибка if (int(mesg['id']) > last_id): TypeError: string indices must be integers
Поле "id" получено следующим образом: timestamp = int(time.time()) # ... message = json_util.dumps({'id': str(timestamp), 'author': user['id'], 'time': str(datetime.fromtimestamp(timestamp)), 'content': content}) Потом это запушено в БД.
При этом на объекте типа {'id': '7', 'author': '1', 'time': '2019-10-10 8:03:20.162908', 'content': 'My English is very well'} Всё работает.
Пробовал int(float()) делать, ничего не изменилось. Даже просто распечатать через print(mesg['id']) или print(str(mesg['id'])) не получается. ЧЯДНТ?
вот в ООП на питоне там + это __add__ * это __mul__ а можно ли знаки < >(сравнения) задароть для класса чтобы они научились сравнивать его? как оно будт называться?
>>1537754 Ты реально веришь что дот нет запускают где-то кроме видны? Советую не тешь себя пустыми надеждами, я жду того момента, когда адекватные разрабы и на шинде откажутся от этой хуйни, впрочем их адекватность и так под вопросом, если они его юзают.
И вообще чо в треде по пистону, свободному от вони мелкомягких столько защитников их дерьма, вам что своих тредов мало, начинаете своей залупой везде и всюду оффтопить?
Ну ты озвуч для начала свои критерии безопасности. Никто не пишит на шарпе и дот нетом под платформы отличные от винды. У мак оси свои языки и апи. У линухи из коробки удёт питон с сишным компилятором, да и те кто уже давно слезли с иглы мелко мягких посмеются только тебе в лицо, когда ты им предложишь писать на говне с закрытыми исходниками.
>>1538605 Тут можно провести аналогию с деревенщиной, который может и уехал из деревни, но деревня уже него не уедет никогда. Земля пухом всем тем, кто юзает дот нет залупку не на винде. Я, когда впервые услышал, что мелко мягкие портируют свою хуергу на линь, посмеялся, но оказывается нашлись жизики, которые готовы абсолютно повсюду искать говно и жрать его взахлеб.
>>1538605 Не сегфолтящееся и, желательно, со сборкой мусора. Десктоп на питоне не пишут, он слишком медленный для этого. Гуй в линуксе как писали на сях и плюсах, так и будут. И так и будут существовать программы, которые внезапно прерываются из-за переполнения буфера. Зато кроссплатформа, да. Которая никому не нужна, гнушные программы за пределами линукса используют редко. Что ещё остаётся? Нода тормозит, джава не прижилась, делфи мерты.
>>1538619 Да не знаю, привык что ид может быть и не числом, так и сделал. Тут он задается таймстемпом, так что какая разница, к инту его преобразовывать или к строке. Место, где надо сравнивать идшники по номеру всего одно.
>>1538635 Что угодно более-менее сложное. Браузер, IDE, офисные пакеты. Отдельные элементы можно написать на питоне, но гуй - достаточно требовательная вещь, там и плюсы не всегда справляются. Если знаешь подобные проги, где интерфейс и основная логика на питоне, приведи пример, плез
>>1538639 Не делай через timestamp. Очень маловероятно, но возможно, что два вызова для генерация ID попадут на этот короткий участок времени. Можно сделать проверку перед вставкой. Чтобы ускорить поиск, можно организовать хеш-таблицу или вообще b-tree... Вжух, и получилась СУБД.
>>1538675 Не могу, шарп нигде, кроме винды, не нужен. Да и на винде его нужность под сомнением, просто другого, можно сказать, нет. А может, и есть, просто я не туда смотрю. В общем, хочется увидеть кроссплатформенную и конкурентоспособную (безопасную и достаточно быструю) замену шарпу.
>>1538684 Я понимаю, что это модно ссылаться на убогие потоки в питоне, но ещё бы это было к месту, речь вроде не про числодроьилки, а про гуй, в котором люди нажимают мышкой по кнопочкам.
>>1538683 Это имеет смысл. Лучше, просто какую-то рандомную строку использовать, а для сортировки использовать время всё же. Правда, это в два раза увеличит количество обращений к БД.
>>1538704 На плюсах можно проебаться и не заметить проблему. Да, можно быть действительно хорошим кодером, но всё равно иногда допускать трудноуловимые и неявные ошибки там, где джава, питон и шарп просто кинули бы исключение, которое всегда можно поймать и показать ошибку пользователю.
>>1538721 >123 - некорректные идентификатор, вначале нужна буква или _. Ну пусть будет def huita(): Не суть. >open() используется неправильно, эта функция возвращает объект с указателем на файл, а не содержимое файла. За точность не скажу, у меня сейчас нет рабочего файла под рукой, но оно работает. В качестве имитации потока json'ов - цикл, построчно извлекающий данные из файла и отсылающий их как json'ы.
Так вот, когда я флаг ручками прописываю в другом месте - всё нормально, а когда пытаюсь отослать json 'ом, поставив перед циклом, выдаёт сраную ошибку с http (да, в примере выше http должен быть 1 раз, опечатка).
Флаг - именно строка. Подозреваю, что либо я неправильно его отсылаю, либо на стороне сервера этот флаг надо "распаковывать" через json.dumps/json.load
<script src="https://ideone.com/e.js/E9Tbg3" type="text/javascript" ></script> Ребят помогите, решаю задачу на кодирование количества букв в формат буква и число. Типа "aaa" в 3а Непонимаю почему а цикле for буквы некоторые не записываются. Даю кусочек кода как пример
>>1538849 В моем коде смысл в том что строка преобразовывается в список, потом идет проверка по наличию буквы, например "а", потом счетчик добавляет +1 на каждом итерации, если находит " а". Далее идет удаление из массива первой буквы. Непонимаю почему последние буквы "а" не работают, не удаляются и не засчитываются в счетчик.
Антон, Зачем ты учишь питон? Я перешол на питон после того как GregTechмод на майнкрафт надоел, изучаю чтоб запонить свободное время, которого 24/7 365дней в году. Не чувствую что проебываю время, когда учу. Якобы чем-то полезным занимаюсь.
>>1538994 Для скриптов, скрапинга, для понимания основ программирования после баловства с однострочниками и шелом, статистики, визуализации, в перспективе мостик перехода на кресты.
>>1538849 Эту именно, сука, эту задачу в тредах обсасывали 1000 раз. Посмотри в предыдущем или на 1-2 треда назад. Там готовый код в нескольких вариациях со всеми пояснениями.
1.Как можно сделать копию установленного на машине питона со всеми пакетами, если на целевой машине нет интернета, т.е. через пип нельзя? 2. Подскажите либу для создания простых анимаций (уровня змейки со старых мобилок)
>>1539688 > 1.Как можно сделать копию установленного на машине питона со всеми пакетами, если на целевой машине нет интернета, т.е. через пип нельзя? Папка lib вроде, в корне питона.
Сап, /pr/, начал вкатываться в программирование и сам python, решаю всякие задачки и сейчас столкнулся с вопросом. Не понимаю почему в данном участке кода элемент с индексом 0 принимает значение 0 после цикла? https://pastebin.com/6Mt1TVNC
>>1539720 Проблема в 4ой строке. А вообще, что это блять за код? Что за циклы с одной итерацией? В чем ёбаный смысл этой программы? Если ты учишься программировать, учись, пожалуйста, нормально, а не хуйню вот такую вытворяй. Это же блять даже на анонимной борде стыдно показывать.
Укус питона или Лерн зе хард вей? И стоит ли проходить онлайн курсы с проверкой решений или учиться по книжкам и не выебываться? Начал практикум яндекса, вроде много контента в курсе, но 85к я уж точно не буду платить.
>>1539724 Я может туплю, но у тебя в классе же нет переменной end_airport. Соответственно он никогда не будет найден. По идее у тебя должно быть поле foreignkey для связи с моделью аэропортов. И из этой связи уже можно вытаскивать все нужные данные. То есть метод get_airport будет не нужен.
>>1540069 Я все-таки учил год плюсы в универе, надеюсь не совсем дебил для сложного пути. Тогда вопрос такой: стоит ли потратить 30 ойро на полный курс? https://learncodethehardway.org/python/
>>1540285 Ты каждый раз сохраняешь в a значение текущего члена ряда, а в следующий раз не вычисляешь его с нуля, а домножаешь на нужные значения, чтобы получить его. К примеру, зачем вычислять с нуля факториал 5, если уже есть результат вычисления факториала 3, который можно просто домножить на 4 и 5, чтобы получить нужное значение. Со степенями аналогично.
Как сделать так? d = {a:b} k = int(input()) v = str(input()) if d[k] is None: d[k] = v else: ''' преобразуем текущее b в список и добавляем к нему v ''' Т.е. после else мы должны получить d = {a:[b, v]}
dictionary = {a:b, c:d} k = int(input('Введите k ')) v = str(input('Введите v ')) print('Словарь в начале программы: ',dictionary) if 4==5: print('ты в адеквате?') else: newlist=list(dictionary[a]) newlist.append(v) dictionary[a]=newlist
print('Словарь в конце программы: ',dictionary)
Вывод: Введите k 3 Введите v v Словарь в начале программы: {1: 'b', 2: 'd'} Словарь в конце программы: {1: ['b', 'v'], 2: 'd'}
Нужна приложуха для мобилы, поставил и потыкал палкой, есть для него visual editor? Жаву не люблю и андроид студио? Или все таки альтернатив нет? Есть кто был перед таким выбором?
>>1540672 Но так но хочецца к этой жаве лезть. Реакт - nodejs, flutter - дарт ваще. kivyMD вон, material design добавляет йобаный андроид линукс, ууу сука
Анон, где можно посмотреть какое направление сейчас больше ценится? Хочу вкатиться на минимум чтобы просто на еду зарабтать, ситуация в жизни сейчас сложная. На реальную работу идти не могу
>>1540810 >Какими вводными Твоими. > Хочу вкатиться на минимум чтобы просто на еду зарабтать Сейчас какой-нибудь сцаный тестировщик может получать 20-25k с дохуя требований и сменной работой в том числе в ночь. В погромировании требования стали гораздо выше, я, например, уже не надеюсь вкотиться учу для себя. >На реальную работу идти не могу Это и есть реальная работа. Забудь о маняфантазиях мамкиных фрилансеров с 300kk/s в /b/.
>>1540815 > На реальную работу идти не могу > Это и есть реальная работа. Забудь о маняфантазиях мамкиных фрилансеров с 300kk/s в /b/. Имел ввиду что не могу надолго выходить из дома. Фантазий о 300к/с у меня не имею, просто не знаю что сейчас востребованно.
>>1540953 Рынок фриланса сильно отличается от обычного. Здесь преобладают не долгосрочные проекты, а задачи вида "сделал и забыл". Распарсить сайт, прогуглить по списку пару тысяч запросов, сделать кому-то лабу или курсач, сделать сайт-визитку "под ключ". Если в области IT, проще всего учить пхп и вордпресс. На питоне обычно бывает парсинг сайтов и лабы.
>>1538733 Мудила выходит на связь последний раз. Сервер в потоке принимает json'ы. Надо сделать проверку на первый json. Можно ли счётчик вынести за эту функцию? А то она каждый раз дёргается, судя по всему, и внутренний счётчик обнуляется.
>>1541006 Да, нужно вынести. В теле функции объявить эту переменную как global, чтобы питон не создал локальную переменную с таким же названием. Этот будет глобальная переменная, что есть плохо, и в реальном сервере лучше хранить счётчик в базе данных.
Как вариант, можно вместо счётчика сделать другой флаг (не тот, который передаёшь, а тот, который будет на сервере), и этот флаг будет признаком, был уже первый json, или нет. Изначально этот флаг будет False, а при получении json сравнивать этот флаг с False, и если равен, устанавливать в True. Этот json будет первым. Для дальнейших json сравнение не выполнится, и их можно обрабатывать по-другому. Как-то так: was_first = False # глобальная переменная def func(): ..global was_first ..if not was_first: ....was_first = True ....# здесь действия с первым json ..else: ....# здесь действия с остальными json
>>1532134 (OP) Как то в треде мне советовали вкатиться в тестировку, и параллельно с этим учить пайтон, что бы потом стать Python junior.
Как я понимаю это QA, сейчас я знаю сам python, основы select'a в sql, немного джанги и так по мелочи
На hh вбил QA PYTHON и всего 1 вакансия без опыта лол, хотя я живу в Новосибирске (1.5кк) и всего 1 вакансия? Что я делаю не так? И подскажите как вкатиться в QA можно сейчас
>>1541397 1, Ты тян/трап? 2, Без опыта в основном нужны ручные тестировщики, а не дикие. 3, Ты либо тестироващик со знанием питона, либо питонист. 4, Для не ручного тестирования еще изучи Селениум.
Не знаю никаких языков программирования, решил вкатиться в питон (неделю назад). Начал читать учебник на вики, параллельно проходя какой-то курс (хекслет вроде). Почему так сложно нахуй, как вы это так просто понимаете? Я просто прошёл половину курса 'для новичков' и прочёл где-то половину учебника (дошёл до функций), и пока кроме охуевания ничего не получил, пиздец, да мне кажется, что я уже половину всего забыл к хуям . Почему так нахуй, почему так сложно? В интернете куча макакичей, которые 'фуллстак шеб-разработчик, питон, фласк, хуяск, Аллах' в 20 лет. Я же натурально срусь, что нихуя кроме примеров из условного курса для даунов не смогу написать. Как мне стать таким же умным, как вы блеат?
Сап, двачик. Начал тут читать Neural Networking Project’s with Python - James Loy, и понял, что вообщ нихуя не понимаю что происходит и о чем речь, в начале говорилось, что у читателя должно уже быть представление о машинном обучении, чтобы изучат пособие, но я как обычно проигнорировал этот момент, но что-то сейчас не прокнуло и реально без подготовки низкая не понятно. И собственно пишу это все с одной простой целью - задать вопрос: что можно почитать по теме, чтобы было хоть какое-то понимание базиса или проблема именно в той книжке, которую я взял?
Поясните по хардкору. Всех тут наверное уже заебал, но всё-же. Потребовалось значит мне откуда то выуживать температуры ЦПУ и ГПУ, и подвернулась мне дотнет библиотека, которая подцепляется к MSI Afterburner который у меня всегда запущен. В общем я тут спрашивал уже, как её использовать можно, и в общем вчера вроде немного подразобрался с модулем Python net, накатал код пикрелейтед, который выдаёт нужные температуры hwm_entries - кортеж. Вопрос - тут всё нормально? Можно ли как то это сделать лучше? Например, нужные строки с температурой я ищу строковыми методами find, и if X in Y. Это норм, или лучше перелать под поиск регулярных выражений с RE? Что из этого будет работать быстрее?
>>1541952 но нужно ли мне это? Выражения не меняются. Вопрос в скорости обработки. Там вот такой кортеж в хвм_энтриес, из которого нужно раз в три секунды выудить нужные температуры. Вот как будет быстрее - с РЕ, или просто с поиском нужных строк по вхождению определенной части строки
>>1541958 >У тебя не те задачи, что б думать о скорости Да бля как не те, это софтина для игрового ПК, и она должна оказывать минимум влияния на игровую производительность
>>1541962 Я уже смотрел по совету в сторону wmi, и... Ну это какая-то хуита. Вот по твоей ссылке он предлагает: wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CriticalTripPoint, CurrentTemperature Это какая-то хуита, а не температура процессора. Это раз. Два - я хуй пойму как искать в этом WMI нужные мне данные, где там найти температуру по ядрам, где найти температуру ГПУ, если она вабще там есть. Вот там по ссылке команда: MSAcpi_ThermalZoneTemperature - откуда он её вабще берёт? В документации такого нет: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/cimwin32-wmi-providers В общем я не могу понять как найти что-то полезное в этом WMI
>>1541977 > В общем я не могу понять как найти что-то полезное в этом WMI Unfortunately wmic docs not provide valid data in all cases (e.g. most often it is needed to run code as admin) Если эта вся затея только для личного пользования, то тот вариант с AB вполне нормальный.
>>1541988 >Если эта вся затея только для личного пользования, то тот вариант с AB вполне нормальный. Ну, я выложу всё это для людей на бесплатной основе, думаю финальный результат моей задумки будет полезен очень многим. И, АБ у среднестатистического геймера в фоне висит по дефолту, так что это норм. К WMI я возможно ещё вернусь позже, но пока что он у меня прям отвращение вызывает, как какая-то помойка с неверными и ненужными данными. Как например, если зайти в диспетчер задач - там отображается неверная частота процессора она не учитывает разгон. Зачем и почему? А хуй его знает.
>>1541994 Софтину для управления корпусными вентиляторами через микроконтроллер.
А если серьезно, то: - раздели код на функции: сделай опросы в 2-х функциях опроса CPU/GPU, а управляющий код и вывод - снаружи (там где у тебя while, sleep, print) - узнай зачем нужен yield. Он как раз подходит для твоих функций опроса - забудь о скорости, ты ничем особо тут и не угробишь и не ускоришь
>>1541998 > И, АБ у среднестатистического геймера в фоне висит по дефолту Ни разу себе на ставил, потому что нахуй не нужен. Температура - спесси, фпс - нвидия экспириенс. Твое поделие использует возможности стороннего софта, что не есть хорошо. Если сможешь в свой установщик вкрутить нужные либы, или с чем там оно ебется - тогда хорошо.
>>1542002 >Купи реобас и не еби мозга. Он стоит дорого, не учитывает температур или делает это по медленным термопарам и нахуй не нужен. Да и в современных корпусах под него нет места.
>>1542001 Спасибо, сейчас осмыслю. Про yield знаю естественно, правда пока что для меня он выглядел как выкрутас ради выкрутаса, сейчас подумаю как можно применить.
>>1542007 Ясно. Решил наколхозить хуйню, на хуйне, для хуйни, работающую как хуйня, во время хуйни. Для реализации твоей идеи надо специальное железо и специальные спецификации, в компьютерах и нет. Необходимо каскадное регулирование, ПИД, знание автоматизации на железе которого нет. Ты занимаешься хренью, но дело житейское.
Корпуса сейчас более чем нормальные, спроектированные для обдува железа. Реобас с 3 каналами стоит не так уж и дорого, на каждый канал вешаешь по 2 вентиля. Ничего регулировать не нужно при правильно подобранном охлаждении для проца и видюхи. >Да бля как не те, это софтина для игрового ПК, и Проёб с TDP твоими методами не лечится.
>>1542017 >Ясно. Решил наколхозить хуйню, на хуйне, для хуйни, работающую как хуйня, во время хуйни. Для реализации твоей идеи надо специальное железо и специальные спецификации, в компьютерах и нет. Необходимо каскадное регулирование, ПИД, знание автоматизации на железе которого нет. Ты занимаешься хренью, но дело житейское. Ты чего взъелся? Для реализации моей идеи нужен микроконтроллер, он у меня есть, стоит от 300 до 400 рублей вместе с доставкой - это все затраты на железо, и реобас ты за эти деньги не возьмёшь. Уже написана часть для контроллера на MicroPython - он без проблем может рулить по PWM как 4-пин так и 3-пин вентиляторами, и вопрос реализации моей идеи со стороны железа - закрыт. Так же уже реализована часть, которая через ком порт передаёт на контроллер команды. Осталось вот только часть для пека дописать - опросник температур и окошки, ну вернее оно всё так же уже написано и функционирует как задуманно - просто оптимизировать, грамотно оформить, добавить всякие настройки и конфиг файлы.
>Корпуса сейчас более чем нормальные, спроектированные для обдува железа. Это когда слева стекло, а впереди глухая крышка? Не смеши. Но это офтопик
>Реобас с 3 каналами стоит не так уж и дорого, на каждый канал вешаешь по 2 вентиля. Ничего регулировать не нужно при правильно подобранном охлаждении для проца и видюхи. Ты предлагаешь накормить китайца купив говнобас и сидеть с фиксироваными оборотами вентиляторов? Зачем? Я люблю тишину, у меня вентиляторы вне игрового режима крутятся на 200-400 оборотах. В таком режиме они не могут обеспечить необходимого продува. Или ты мне предлагаешь их накрутить, чтобы в простое всё это свистело и пердело? Так почему бы этим всем не управлять в зависимости от температур, потому что ТЫ СКОЗАЛ ЧТО НИНУЖНА?
>>1542023 >Ты чего взъелся? Кратко объяснил тебе что за хуйню ты наворотил. Со своей колокольни 20 лет автоматизации вот этого вот всего, сборки компов, пердолинга со всякими fancontrol и прочими делами. >Это когда слева стекло, а впереди глухая крышка? Не смеши. Но это офтопик Это когда продуваемый корпус без стекла за 5-6k с реобасом и вентиляторами в комплекте. Без претензий на игровой комп, но и для игр более чем. >Ты предлагаешь накормить китайца купив говнобас и сидеть с фиксироваными оборотами вентиляторов Нет. Я предлогаю собирать сразу компьютер по уму, а обосравшись не маняврировать. >Так почему бы этим всем не управлять в зависимости от температур, Так бери и управляй специально-предназначенными для этого средствами. Потому что твоя хуйня собрана из говна и палок и не предназначена для регулирования. >потому что ТЫ СКОЗАЛ ЧТО НИНУЖНА? Потому что ты из колхозников любителей срать не снимая свитер, причем упорный и непреклонный в своём желании. Если нравится занимайся хуйнёй, я тебе уже об этом писал выше.
>>1542028 >Кратко объяснил тебе что за хуйню ты наворотил. Со своей колокольни 20 лет автоматизации вот этого вот всего, сборки компов, пердолинга со всякими fancontrol и прочими делами. Какую хуйню я на творил? Систему которая за 400 рублей решает все вопросы и работает без проблем? Ты там совсем ту-ту-ру-ру?
>Нет. Я предлогаю собирать сразу компьютер по уму, а обосравшись не маняврировать. По уму встроенные системы регулировки оборотов вентиляторов не учитывают нагрев ГПУ, и когда в игре ГПУ загружена на 100%, а ЦПУ не загружен - ГПУ выходит из комфортного диапазона температур, т.к. без нагрузки на ЦПУ корпусные вентиляторы не раскручиваются - так происходит при сборке "по уму". А моя дешманская система решает это недоразумение.
>Так бери и управляй специально-предназначенными для этого средствами. Потому что твоя хуйня собрана из говна и палок и не предназначена для регулирования. Это какими средствами? А как управлять корпусными вентиляторами с хуанана, где вабще нету регулируемых разъёмов кроме ЦПУшного? Или ты сейчас снова жиденько пёрднешь про говнобас? Что значит не предназначенными? ESP32 не может генерировать ШИМ сигнал? Не может, потому что ТЫ ЗОПРЕТИЛ? Шим сигнал не предназначен для управления вентиляторами? Не предназнначен, ПОТОМУШО ТЫ ТАК СКОЗАЛ? В чём твоя проблема?
>Потому что ты из колхозников любителей срать не снимая свитер, причем упорный и непреклонный в своём желании. Если нравится занимайся хуйнёй, я тебе уже об этом писал выше. Ты какой то кислотный дегенерат пукающий в лужу.
>>1542032 В эксплуатации его бы отпиздили за попытку нести такой бред. По поводу погромирования у меня никаких претензий нет. Условия задачи исключают чего дельное предложить.
>>1542023 > Для реализации моей идеи нужен микроконтроллер, он у меня есть, стоит от 300 до 400 рублей вместе с доставкой Кому придет в голову брать ещё какую-то железку и вручную накатывать на нее сие скрипт? Как микроконтроллер будет жрать софт AB? Это все уже походит на дипломную работу в шараге.
>>1542046 >Кому придет в голову брать ещё какую-то железку и вручную накатывать на нее сие скрипт? Тот, кому нужно управлять вентиляторами, и делать это по-уму, а не реобасом обороты вручную выставлять. Например китайские матплаты не предусматривают управление корпусными вентиляторами, и никакие матплаты не учитывают температуру ГПУ при управлении корпусными вентиляторами.
>Как микроконтроллер будет жрать софт AB? Я же уже писал - софт на компе получает инфу о температурах и при необходимости ускорить кейс_фанс отправляет через компорт команду. Микроконтроллер с другой стороны комп порта эту команду ждёт. Это очень просто, и уже сделано
>Это все уже походит на дипломную работу в шараге. Я делаю это для себя. В рамках обучения, конечно - но так же такая вещь мне самому нужна.
>>1542052 >кому нужно управлять вентиляторами, и делать это по-уму Ебанутый, иди уже купи себе сплитер(разветвитель, хаб) за 180-400 рублей. Заебал уже тут срать.
>>1532134 (OP) Сап, почему pycharm в проекте с джанго не подсвечивает синтаксис html, типо не понимает что такое {% block content %}{% endblock %} и не помогает дописывать? Это только в про версии можно или что?
Как это включить, если возможно конечно? В гугле чет ничего особо не понял
веб питонисты, расскажите за бест практис применения celery в ваших проектах, я что то не могу нагуглить ничего типа рассылка имейлов или деактивации триалов, это и так понятно что делается через шедулер от celery И дает ли вообще celery полноценный асинк, или это чисто выполнение долгой задачи на бэкэнде по расписанию?
>>1542082 Скачай про пайчарм и крякни. На шинду есть с серверами, тупа кладешь сервер себе на хард, дописываешь строчку и оно работает. На мак/линупс могу тоже подсказать где беру ключи, если тебе надо будет. VSCode хуево с джангой работает. Там постоянно начинает ебаться между собой js,html и django template, не советую, короче.
>>1542299 > за бест практис применения celery Не от того танцуешь. Бери свои практические задачи у думой, поможет ли тебе тут Целери или нет. Единственное что анон может рассказать это за свой опыт применения Целери. > дает ли вообще celery полноценный асинк Доки читай. > это чисто выполнение долгой задачи на бэкэнде по расписанию Не только лишь по расписанию. В основном да, выполнение долгоиграющих задач.
Нужна библиотека для получения ast по произвольной грамматике в бнф. Рассматривал antlr, но там насколько я понял какое-то шаманство с предварительной трансляцией грамматики в py файлы с помощью сторонней утилиты, хотелось бы иметь библиотеку которая справлялась бы без этого промежуточного шага.
>>1539785 Само собой, твоё решение - полная херня. В питоне есть уже готовое решение - Counter, если ты все же хочешь свой костыль делать, то делай это через словари, где ключи - буквы, а значения - количество элементов в строке. В твоя гипертрофированная задача вообще решается в две строчки:
>>1539654 Список это на самом деле двусвязная fifo очередь, самый эффективный способ удаления из неё, как и для всех очередей - pop(), который удалит последний добавленный элемент. Но если нудно уделить элемент с произвольной позиции, то нужно использовать remove(%a symbol%)
>>1539720 Почитай что такое итераторы, которые используются в for loop конструкции, у тебя в пиздец начинается в 4 строчке и продолжается до последней.
аноны, у меня есть список всех файлов в директории, как мне отобрать из него только с нужным расширением? Я написал вот так volume_files = [fl for fl in list_dir if list.dis.split('.')==2 and list_dir.split('.')[1]=='txt']
>>1540103 Я бы сказал, что это только минус, сам из плюсов перекатился, если посмотришь все ошибочные, костыльные и просто убогие решения задач в пистон тредах, то в большинстве случаях они будут от бивавших си кодеров, которые переходят на работе новый язык, но не могут отпустить старые и ублюдские принципы написания кода из сей и крестов.
>>1540982 Когда то тоже жил с влажными фантазиями о фрилансе, сейчас есть постоянная работа, пока пайджуна, так вот я мониторил рынок вспрыскивая и предложений, на самом деле довольно мало заказов на пых, а на вордпрессе они малооплачиыакмые были, года 3 назад в требник вообще Джанго был, хз как там сейчас, насколько мне известно туда до сих пор не завезли поддержку корутин, что может оттолкнуть даже заказчика, ибо он знает от кодеров, что асинк - легковесные потоки, которые сейчас в тренде.
В нем упорядочены ключи, соотвественно при итерации по ним после объявления порядок гарантируется, сейчас активно выпиливают orderdict из collections и заменяют его на обычный.
>>1543123 Это уже не изменится, эту фичу активно юзают многие, поскольку это реально удобно, если откатятся до предыдущей реализации (не вижу в этом смысла, они ведь писали, что нововведение дало только прирост к производительности), то это приведёт к появлению серьёзных багов во многих скриптах без убийства совместимости синтаксической. Мне кажется если они вдруг это сделают, то станут последними подонками и букашками в лице комьюнити.
Всем привет! Короче начал я читать этого вашего Лутца, и это конечно прикольно, но мне кажется что я забуду как там брать срез строки с конца до середины в обратном порядке шиворот блять навыворот, если не буду заниматься практикой. Что можете посоветовать? С чего начать практиковаться? Мб калькулятор с лексическим анализатором? Или вообще нет разницы, бери да пиши?
>>1543473 >>1543480 >>1543494 Просто когда я читал "Принципы и практика использования C++" Страуструпа, там в первых же главах уже объясняется как писать калькулятор с лексическим анализатором (бнф все дела). А Лутц это тупо документация (по крайней мере пока). Может сразу начать читать Программирование на Python Лутца? Вроде там практика
>>1543483 1. Пиздуешь на рутракер, кочаешь там Фёдорова Д.Ю. Его хватит на 1-3 недели для совсем тупых. 2. Потом приблизительно тоже самое в A BYTE OF PYTHON. После предыдущей книжульки тоже недолго. 3. Чтобы закреплять прочитанное https://euler.jakumo.org/problems.html 4. Можно начинать читать книги и доки под специализацию. Dive into python. Попробовать курсы, тот же Stepic. >>1543499 Тебе по пунктам выше ознакомиться с синтаксисом и брать книгу под специализацию по питону для проганья. Лутц пишет настолько размыто, что я его сколько ни брался ни разу не осилил. Помоему его книги полная залупа.
>>1543508 Для меня это скрапинг, pandas, big data, data science, streamlit... Мне похуй на джанги всякие. Ты должен определиться для чего учишь питон, а потом уже под задачу искать инструменты. Заучить всё сразу не получится. >>1543510 У него одна книга с разными названиями. Очень толково азы разжёвывает. >2019 - Федоров Д.Ю. - Программирование на языке высокого уровня Python. Глянь 2016 - Сузи Р.А - Язык программирования Python. Старайся читать разное, все по разному информацию воспринимают, мне некоторые авторы совсем не заходят, весь день проебался в итоге ничего не осилил, удругих вроде инфа таже, а в разы понятнее.
>>1543508 А я посоветую пикрил. Тут есть абсолютно про все нужное, про что обычно забивают во всяких байт оф Пайтон и прочих: сетевое программирование, работа с бд, регулярочки и прочее. Конечно, инфа есть немного устаревшая, например когда я пытался по сокетам код скопировать нихуя не заработало, но это только к лучшему - гугля и разбираясь сам, ты растешь как кодер. если надо, скину ссылку на мегу.
Привет, питонисты. В голову пришла идея для небольшого проекта на ~месяц, теперь я ищу человека, который сможет взять на себя серверную часть, регистрацию/логин клиенту, продуктовую админку для работы с клиентами на какой-нибудь джанге. Из меня питонист не очень, но распарсить сайтец смогу, все равно будет здорово если это ты сделаешь.
Что вы получите - почот и увожение. Денег у меня нет, поэтому платить нечем, но и от вас не понадобятся - аренда сервера и прочие небольшие расходы на мне. Если проект каким-то образом будет приносить деньги, хотя на первом этапе монетизации не намечается - прибыль делим по-братски.
Кто нужен - лучшим выбором будет замотивированный вкатывальщик, который уже получил навыки, но никак не найдет работу. Т.к в таком кейсе к профитам добавится проект в портфолио, некоторое понимание продуктовых процессов (пусть и в микро-тиме) + я могу в меру способностей поревьюить код и пояснить, если где чет хуево. Ну и репозиторий (закрытый) будет лежать на гитхабе, что позволит вам набить свой профиль зелеными кубиками, не коммитя десятую тудушку за месяц. Скучающий мидл тоже будет заебись, но только чтобы не ливнул через 2 дня.
Немного про меня - выгорающий фронтендер с несколькими годами прод-опыта, в т.ч в стартапе, частично могу в бэк. Сейчас прокачиваю скиллы продакта, поэтому возьму на себя эту часть.
Немного про проект - MVP (1-2 недели) связан с парсингом лендосов конкурентов, и предоставления инфы в удобном виде. ЦА - маркетологи и продакт менеджеры на первом этапе, на втором - смолл бизнес, который конкурирует за лидов через поисковики. Конкуренты - симиларвеб и тому подобные, но у нас другое.
Команда планируется из тебя, меня и фронтендера.
Заинтересованные - кидайте телегу на фейкомыло и можно пару слов о себе на [email protected]
Сап двач. Чоому так? Мне нужно округлить y до 3 знаков после запятой, делаю {0:.3f} format'ом, но выходят нули, а если без ,то нужные значения, но не округленные. шо не так?
есть ли какая-нибудь идеологическая разница между del arr и arr.pop(i)? кроме того, что 2 функция и возвращает i-тый элемент когда вообще стоит юзать del, я сколько прогал сам никогда ее не использовал, и не встречал ее в чужом коде на том же стековерфлоу или гитхабе, а тут поступил универ, один одногруппник, который никогда раньше не кодил, узнал про него и теперь засовывает везде, где только можно, особенно при работе с массивами.
Сап, программач, студент-неофит на связи. Помогите разобраться с с принципом работы потоков из threading. Моя проблема вот в чём: Пытаюсь написать скрипт, который будет брать из файла набор данных, пробрасывать их на некоторый сайт и вытаскивать результаты. Данных по идее будет много и это дело надо распараллелить. Мне посоветовали использовать паттерн producer-consumer, реализацию которого я подсмотрел тут: https://www.bogotobogo.com/python/Multithread/python_multithreading_Synchronization_Producer_Consumer_using_Queue.php
Вот кусок кода, с которым я работаю: https://pastebin.com/aVyx7Hhe забыл дописать в комментах - ql это очередь входных данных для producer'а, q это очередь заданий для consumer'а
Собственно, вопрос: Как правильно переписать классы ProducerThread и ConsumerThread, чтобы они передавали элементы из очередей в аргументы таргет-функций, которые я в них помещу при создании
>>1544369 Когда второй аргумент round положительный, округляется до нецелой части. Тебе же нужно округлить до целой, поэтому он должен быть отрицательный и, наверное, побольше (по модулю).
Суп питонач, не знаю больше где спросить, у самого пока не хватает опыта решить.
Есть задача на мониторинг удалённого устройства (по протоколу modbus, но не думаю, что это важно). Мониторинг -- 1 запрос в секунду Для этого будет использоваться celery В зависимости от полученных данных цикл на мониторинг должен останавливаться, а другая задача запускаться. Таких вилок может быть несколько.
Вот не знаю, как организовывать такие задачи в celery. Еще не работал с асинхронщиной. Может натолкнешь меня на нужную часть документации и\или статьи?
Только не говорите про asyncio, я с ним вообще не работал, на освоение на данный момент не хотелось бы тратить время.
>>1545011 Подумал, что в данном случае всю последовательность действий нужно либо записывать в chain, полный цикл взаимодействий с несколькими итерациями чтения и записи записывать в одну задачу (что, возможно, не самая лучшая практика)
Нужно возвести число в отрицательную степень по модулю. Число и модуль 10^100 порядка, степень < 50. Какие либы юзать? 1. У стандартной pow степень не может быть отрицательной, если есть модуль. 2. Decimal посылает нахуй. Ссылка на идеон по реквесту.
Задача: возвести число в степень по модулю. Юзаю Decimal: ctx.power(a, b, N) #a и N 10^100 порядка, > 0, объявлены как Decimal. b < 10, просто степень Ошибка decimal.InvalidOperation. Как фиксить? Код алсо по реквесту
Так, питонач. Есть данные с подданными. Как их лучше хранить? В sql-базе данных? В csv-файлах? И если понадобится их (данные и подданные) извлекать случайным образом, это можно будет сделать?
В который раз напоминаю вкатывальщикам на питухон, которые надеются влиться в веб парашу, особенно великовозрастные. Стоп, лучше не стоит вскрывать эту тему, работы нет и не будет.
>>1545011 >В зависимости от полученных данных цикл на мониторинг должен останавливаться, а другая задача запускаться. >Еще не работал с асинхронщиной. А зачем тебе делать асинхронным способом задачу, которая поставлена как синхронная?
Делай классическим способом, синхронно. Запрос-ответ, если ответ один, ждёшь до секунды и снова запрос, если другой ответ, запускаешь нужную задачу.
>>1532134 (OP) Бляя, помогите, вроде сделал уже все что нужно, но джанго все равно не хочет работать.
После python manage.py migrate выходит ошибка:
django.db.utils.OperationalError: (2019, "Can't initialize character set utf8mb (path: C:\\Program Files\\MySQL\\MySQL Server 6.1\\share\\charsets\\)")
Но у меня только mysql server 8.0, и путь к нему C:\Program Files\MySQL\MySQL Server 8.0\share\charsets . Почему оно ищет 8.0 вообще не понимаю.
Нагуглил то, что написано на пике, изменил my.ini, добавил туда эти кодировки, но все равно не помогло.
>>1546126 Пиздец, вот так днем захожу, думаю сейчас буду разбираться с бд и джанго, ура нахуй.
Потом бах, не встает mysqlclient из за того что винда x64, гуглишь, фиксишь. Потом ещё одна ошибка, надо гуглить менять my.ini, потом ещё в index.xml что то добавлять, потом опять ошибка и приходится ещё гуглить и менять в mysql метод шифрования, что бы блять был identified with mysql_native_password, все начинает работать, но уже так заебался + конец дня, гг
Привет, питоны. Вкатываюсь относительно недавно, поэтому интересна какая-нибудь конфа по Питону. Знает ли кто такие? Желательно, что бы там сидели не совсем душные сениоры с 400к в наносекунду.
Решаю ctf. Там сервер создаёт куки, в которой упакованный в pickle словарь, в котором нужно поменять одно значение и hmac строка тоже в этом словаре, которая мешает это сделать. Пытаюсь заменить эту строку на объект кастомного класса, который всегда возвращает тру при сравнении чтобы проверка на равенство прошла не зная секретной строки с сервера. Пикл нормально это дампает. Но в другом модуле он не может это загрузить т.к. там такой класс не определён. Хотя в интернете просто объявляют класс с переопределённым методом __reduce__ и пихают туда пэйлоуд. И у них всё работает не смотря на то, что на сервере такого класса нет. Но у них второй питон. Я на третьем пробовал и так тоже не получилось. я даже брал код из примера и дампил его на одной консоле, а загрушал в другой и не работало с третьим питоном. Как заставить пикл работать с кастомными классами?
>>1532134 (OP) Кто-нибудь читал сицп на питоне по ссылке из шапки? Эта книга поможет мне, если у меня главная проблема в продумывании архитектуры? Я каждый раз когда что-то прогаю, пишу простейшую функцию одну, а потом к ней прилепляю каждый раз кусками дальше логику, потом когда оформилось всё уже делю на функции или классы. А потом я попытался в домашнее TDD и у меня полный пиздец, нихуя не могу даже продумать куски, постоянно приходится залезать и переделывать тесты и всё такое.
>>1547024 > сицп > проблема в продумывании архитектуры Я канечно книгу не читал, но ты уверен, что она вообще об этом? ИМХО с архитектурой тебе поможет только практика.
Я пиздец походу тупой... Есть тут те, кто сидит на codewars? Думал попробую, может чему научусь, ага. Просят решить задачку, код работает неправильно и надо выяснить почему def multiple(a,b): a*b Ну я и дописал print и взял условие в скобки. Хуй там, не то. Я вообще не пойму че им надо
>>1545656 Ещё один вопрос: каждая из строк таблицы может иметь подтаблицу с вариациями. Как это лучше оформить: куча мелких подтаблиц привязанных к конкретной строке или одна большая таблица со всеми вариациями?
>>1547092 >>1547124 Спасибо, ребят. Хуй с ним, завтра попробую снова. Хули инет только седня мобильный появился, до этого книжку ток читал и в интерпретаторе всякие задачки делал. Домашнего инета нет в этой деревне ебаной, так хоть с телефона щас чето новое попробую
>>1547131 > Питон > бэкендером Это троллинг такой? Или в ваших Палестинах железо уже бесплатно раздают, а люди стали такими терпеливыми, что запрос выполняющийся миллиард лет, они подождут?
Анон, почему так? Как я понял, в питоне все передаётся по ссылке, так? Тогда n изменился только потому что списки мутабельны, а a остался прежним потому что int - иммутабельный, я прав? Но тогда почему в new_n попал None?
>>1532134 (OP) Как запилить асинхронное логирование?.. Чтобы прога асинхронно осуществляла запись логов в файл (или вывод на экран), экономя производительность?
>>1547584 Не факт прямо, что это производительность увеличит. Общий подход в том, что есть задача, которая складирует логи в файл, печатает на экран или ещё чего. Создаётся очередь, в которую другие задачи кладут задания, а задача-логгер читает сообщения из очереди и делает свою работу.
Это и для асинхронных задач, и для потоков общий подход.
>>1547594 Пробовал сам пилить потоки с общей очередью - вышло хуево. Есть вариант привлекать второй Process, но это херня какая-то, асинхронщину логичнее запилить, есть какие либы дял асинхронных логеров? Или его можно даже самому на базе одного лишь asyncio запилить?
>>1543593 Я очень рад, что все больше людей начинают осознавать, что Лутц - уебан, наконец я не один буду его хейтить в тредах на мейлаче это переоцененное говно.
>>1544508 Все бы было хорошо, но к сожалению его невозможно закрыть, кто-то тут в треде писал, что надо ребутать систему, мне недоело через пару дней, а в целом редактор хороший, да.
>>1544342 del - команда для сборщика мусора, ее модно применить к любому объекту, pop - метод у класса, скорее всего последний оптимизирован и выполняется быстрее, но вообще для удаление элемента из листа, я думаю arr является таковым в твоём примере, есть метод remove.
>>1544347 Это хреновая реализация в целом, на текущий момент нет ни одной причины использовать старые потоки (имеет смысл смотреть в сторону корутин в твоём случае, либо процессов не в твоём случае). Но но теме вопроса, ты ведь передаёшь через аргументы таргет - объект, а именно имя функции, потом вероятнее всего тебе нужно вызывать эту функцию, ну и собственно в чем проблема вызвать ее с нужными аргументами из очереди? Если серьезно, советую бросить текущую реализацию, наверняка что-то такое есть на async.
Привет! Кто нибудь писал ботов для вк на vk_api, хотя этот модуль не принципиален. Не могу понять как организовать диалог, с привязкой к состояниям, для телеграма это красиво реализовано в python-telegram-bot. Подскажите кто нибудь как это сделать, если кто-то сталкивался.
>>1548145 >с привязкой к состояниям можешь пояснить, что ты подразумеваешь? Я просто занимался хернёй с ботами как для телеги, так и для ВК. У ВТентакле там жопа, конечно.
>>1548171 У python-telegram-bot есть класс Conversationhandler в котором есть аргументы entry_points (вхождение в диалог) states (описываются шаги этого диалога) и fallbacks (который завершает диалог) в пределах этого диалога все сообщения отлавливаются прописанными в этих аргументах хендлерами, и мы можем завадать на каждую нашу реплику назначать нужный нам хендлер, который будет проверять то что пришлет пользователь в ответ. Таким образом можно лупать одну функцию или наоборот перепрыгивать через какие то состояния, например: у нас есть 2 кнопки: "найти" и "зарегистрировать" из найти мы перепрыгнем в одну ветку диалога по другой - в другую, но этот функционал легко реализовать в вк с "payload" хоть и ебать как ахуенно передавать словарь в виде строки в виде словаря. Но вот если я спрошу пользователя о чем то в текстовом формате, я конкретно на нужный мне обработчик не смогу его отправить. Я ловлю в лонгпуле эвент с типом "MESSAGE_NEW" но в эту отборку провалятся все сообщения. Можно конечно каждый следующий шаг в этом диалоге ловить по номеру сообщения в диалоге с пользователем... Но похоже я чето перемудрил и вообще запутался. Для телеги я написал бота который собирает инфу и регистрирует заявку, может осуществлять поиск по этим заявкам, с ВК я не понимаю как реализовать вот сам этот принцип назначения из одной стадии паттерн который будет отлавливать следующую стадию.
>>1548185 Знаешь... Я в АПИ ВК особо сам не разобрался, там такая дичь, что я пользовался костылями. Приходилось лишние строчки кода писать. Лучше попробуй загуглить. На Хабре обязательно должен быть ответ. Даже не просто ответ, а целая инструкция по работе с АПИ.
>>1548366 Да это больше реализация самой логики чем АПИ. Искал везде примитивные боты "юзер прислал сообщение - юзер получил картинку" . В общем треде посоветовали на конечные автоматы посмотреть
>>1548368 Я реализовавал подобное с обычным словарем(в котором хранились виды состояний и действия) + кеш для хранения и быстрого доступа к актуальному состоянию юзера. Так делал бота для вк и аналогично для дискорда.
>>1548682 Сильно от вуза и кафедры зависит. Где-то можно тупо кодить хуиту, где-то придётся обмазываться матаном и диффурами. Попробуй какой-нибудь machine learning.
>>1548144 Мечтаю, что однажды ко мне придет домой Лутц и скажет "Я был очень плохим мальчиком-графоманом, плез, накажи меня!" и я распечатаю его очко, а он будет молить продолжать...
Задачка по питону на ночь или помогите решить домашку.
короч есть два списка словарей, задача создать функцию/луп да что угодно который найдет совпадения в values каждого dict в list1 со вторым списком values в словарях из list2. Объяснять я конечно не умею нормально, так что вот пример и примерно какой результат нужен
>>1549014 ой там ошибки вот так правильно сорян list1 = [{'a':[1,2,3]},{'b':[3,4,5]},{'c':[6,7,8]}] list2 = [{'a':[[1,2,3],[11,25,33]]},{'b':[[23,43,57],[22,4,5]]},{'c':[[9,10,65],[32,43,54]]}]
>>1548682 Интернет-магазин с загрузкой товаров в виде zip-архива, в котором лежат папки с картинками + csv, в котором сами товары, их категория и прочее. И, само собой, бд нужно какую-нибудь прикрутить.
Я тут всё думаю запилить десктоп программку. И оказывается есть разные библиотеки на питон, не только PyQt. Например PySimpleGui. В общем я тут внезапно решил что сделаю просто обычное джанго приложение, которое будет устанавливаться вместе со всем необходимым на комп и просто открывать браузер на локальную url. Это совсем трешово или нормальная тема? Уверен, такие приложения есть.
>>1549425 Собрался тащить аж целый вебсервер, чтобы приложение работало? В принципе, jupyter-notebook так и сделан, но решение выглядит каким-то странным.
>>1532134 (OP) Как сделать, что бы джанго принимал запрос с русскими символами? Например: { \"title\": \"Сыр \"Российский\"\", \"description\": \"Очень вкусный сыр.\", \"price\": 100 }
Запросы с латинскими обрабатывает отлично и все работает. Например: curl -v -H "Content-Type: application/json" -X POST -d "{\"title\":\"Cheese\", \"description\":\"Very nice cheese\", \"price\": 100}"
Что за бред, почему оракл не хочет принимать мою карточку, в поддержке пишут, мол, может вам лучше с корпоративной почты зарегаться, охуенно, а в амазоне с годовым триалом будет такая же хуета?
>>1549090 Да, через это. Ну приходит новое сообщение, берешь ИД автора сообщения и чекаешь его актуальный статус, затем чекаешь сообщение полученное у думоешь что и как делать с ним.
>>1549426 Не, мне кажется так себе проект на первый взгляд. Не очень популярный. Но самое плохое то что (по крайней мере в примере с vue) приходится писать в питоне на вью. Т.е. это дублирование какое-то. Немного сбивает с толку. Почему нельзя просто подключить Js и там всё делать как обычно? Наверно можно, но зачем тогда они сделали апи к vue в питоне? Видимо чтобы использовать данные с фронта в питоне, но стоит ли это того? Странно.
>>1549450 У оракла та акиция закончилась уже, на сколько я знаю. Но вообще у тебя скорее всего руснявая карта какая и он ее не хочет. Я пробовал альфа-банк и соснул, потом попробовал раффайзенбанк и вин.
>>1549472 Я, кстати, по гуглу где-то видел, что оракл хочет, чтобы всё было от одной страны, попробую ещё с яндекс почтой регануться, лол. Ладно, не буду больше срать в треде не по теме.
>>1549647 Пиздуй в академ У нас на маге в прошлом году 3 дебила с защиты слетело. Потому что 1й ебанько твой брат по крови не делал нихуя и даже научрука найти не смог, а это автоматом означает хождение нахуй, 2го завалил сам научник, сказав что такую хуйню что ему принесли, он подписывать не будет, а 3й сам в академ заранее ушел, т.к. понял что еблан
>>1549649 Благо тему я нашёл, научрук подпишет как миленькая Маге - магистратуре? у мну заоч бакалавр, здесь проще все, тему норм уже нашёл, осталось оформить все ето дерьмо И как завершилась стори с 3м челиком? смисол от академа, от диплома не убежишь
>>1549033 И насколько удобно это, загружать файлы и еще объяснять редактору как csv ердачить-редачить? Что технолоджи ты выдумал, где об этом почитать?
надо будет спарсить классическую хуйню с сайта в виде название статьи, статья, картинки в статье. аноны, где можно найти годную хуйню по разработке такой штуки с использоованием bs4?
Есть 2 питонокниги по датасаенс: "Анализ данных" и "Питон для сложных задач". Обе начинаются одинаково: среда IPython, numpy, scipy, patplotlib, pandas. Какую из них читать?..
>>1549762 >>1549766 Они небольшие прочи обе, и ты можешь читать то шо не знаешь, пропускать шо знаешь, убиваешь сразу двух метафорических зайцев одним воображаемым выстрелом
За счёт чего numpy работает с векторами намного эффективнее стандартного CPython? Оно разве проводит операции с ними на GPU? (если нет, то можно как-то запихать эти вычисления на GPU?..)
>>1549856 > За счёт чего numpy работает с векторами намного эффективнее За счет того что он написан на С и на куче низкоуровневых либ(не только Сишных, но и фортран и прочее), без особой прослойки. > можно как-то запихать эти вычисления на GPU? Вычисления можно, но не на чистом нампае. Гугли.
from bs4 import BeautifulSoup ModuleNotFoundError: No module named 'bs4' в чем может быть трабл? поставил его только что через терминал. алсо, его пайчармподключать не хочет и видает залупу в виде "You're trying to run a very old release of Beautiful Soup under Python 3. This will not work." что за прикол такой то?
>>1550127 да, только в самой системе у меня стоит bs4 >>1550127 а пайчарм пытается скачать зачем то 3 (?) но тащем то я проблему решил с этой хуйней. теперь вообще какая то чушь происходит. если запускаю через интерпритатор пайчарма выдает одни ошибки, а если через терминал то другие. в чем может быть проблема?
>>1550179 В настройках проекта в пайчарме выбери через какой интерпретатор запускать. В принципе там же, ты и загружать должен модули. Но вообще лучше разберись в venv. и нахуя тебе bs4 и пайчарм вместе? Ты парсить так заебешься, тебе надо научиться с Ipython notebook работать, это намного удобнее
>>1550173 > Моего кореша считай за просто так взяли в Джангиста. Ну надеюсь все это и правда не так сложно, учу уже месяца 3, надеюсь через 2-3 месяца вкачусь джуном-джангистом ))
>>1535965 >Скорее всего в твоём городе нет ни одной вакансии с питоном, даже если есть, то для пхп вакансий в десятки раз больше. А пхп учить просто стремно, это же совсем макака
>>1550188 в пайчарме стоит нужный интерпритатор как раз и нужные модули. >ты парсить так заебешься, тебе надо научиться с Ipython notebook работать, это намного удобнее а через него сильно лучше чтоли? и почему? он у меня там на домашней пеке стоит и я на нем чет делал, а на галере здесь такого нет
Суп аноны. У меня есть два списка, которые изначально получены из ксв файлов. Выглядят они вот так: [['49182'], ['51666'], ['52507'], ['51589'], ['51408'], ['50701']] [['59'], ['65'], ['51'], ['41'], ['51'], ['55']]
Мне нужно превратить их в простые списки и поделить друг на друга, т.е. a = [49182, 51666,....] b = [59, 65, ....] c = [833.6, 794.9, ....]
>>1550462 Я говорю вообще, а не конкретно про питон. В контексте питона мой пост - хуйня, тут от потоков только один толк - разделить потоки выполнения, например, в одном потоке ждать пользовательского ввода, а в другом что-нибудь делать в фоне. Асинхронщина хотя бы полезна при вводе-выводе. В процессах же сложнее организовать взаимодействие, но зато можно подсчитывать что-нибудь тяжёлое, и тут возможен какой-то прирост в скорости. По крайней мере, это всё насколько я, будучи нюфаней, понимаю.
trans = lambda x: list(map(int, str(x).replace('[', '').replace(']', '').replace('\'', '').replace(',', ' ').split()) a, b = trans(l1), trans(l2) c = [l1 / l2 for i in range(len(l1))]
>>1548169 Твой метод класса это по сути независимая функция, которую можно вынести в отдельный модуль, он никак не взаимодействует ни с классом, ни с инстансом. Проще говоря у тебя внутри метода не используется self. Жаль, что пайчарм ещё не дорос до понимания того, что self используется в декораторах, иногда приходится глушить инспекцию.
>>1534380 Можно узнать что за idle,может и не idle,не знаю как точно называется,но выглядит удобно,я про то что на скриншоте. Извиняюсь за не грамотность,я изучаю питон всего неделю.
Предыдущий
ЧАВО: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat актуальность примерно 2015 года
Книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem
Очень много книжек: https://drive.google.com/drive/folders/13YaFijvuH4dtv-PjUKVWLQ7ZIqXIfCLK
Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться
#######################################
Вопросы-ответы:
А стоит ли читать Лутца, том номер 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/ (нужно знать ангельский или уметь пользоваться переводчиком)
Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём - брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.