Это копия, сохраненная 18 февраля 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Предыдущий >>1532134 (OP)
ЧАВО: 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/ (нужно знать ангельский или уметь пользоваться переводчиком)
Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём - брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
Данный гайд все ещё актуальный, по пунктам и плану изучения все хорошо. Ничего лучшего начинающим питонистам предложить пока не можем.
Я так понимаю, что вместо праймари можно иметь комбинацию из сочетания n секондени.
Но вот на вопрос "нужен ли" можешь ответить только ты сам.
Я бы пилил праймери и указывал внешний.
Не важно O:O или O:M
Так, на всякий
У меня аппка на flask в проде на Gunicorn+Nginx, лежит на VPS, что вертится на убунте
Обновляю содержимое по git pull
Бля
Есть способ обновлять деплой без остановки и перезапуска серваков?
Как это правильно делают здоровые люди?
Спасибо, еще вопрос:
Я могу как нибудь конвертировать свой .py файл в экзешник, чтобы я смог открыть его на пека без питоновских библиотек, айдиешек и прочего?
https://github.com/albertosottile/py2exe
Далеко не для всех версий работает
Поддерживает не все сторонние пакеты
И, в целом, питон в .exe так себе идея, плавали
Ну это самый простой вариант. Минимальный даунтайм, вообще это целая проблема и решения там не самые простые. Тебе вряд-ли такое нужно, ты же не нетфликс хостишь.
Отдельно имей бд, отдельно бэк, отдельно Селери(если есть), перезапускатнся то что изменилось и всё.
П.с. можешь руками это делать, а можешь авто-билд сделать и поднятунть длкерхаб + чекать состояние имэджа и рулить на серв новые версии автоматом.
Спасибо, буду мануалы курить.
Селери пока нет, но скоро будет.
Распиливать на кучу машин дороговато.
За один вынос базы +3-6к аренды.
Ну да, поэтому на одной машине просто несколько контейнеров.
Да.
Нет.
Как открыть проект?
Давно не брал я клюшку в руки, лет 5 не программировал вообще, до этого в школе и колледже немножко так C вплоть до игр с указателями и рисования всякой триде-фигни с монотонными текстурками во феймбуффере. В универе на заочке читают курс погромирования на гвидопыхе, вся кафедра информационной безопасности, на которую это возложено, либо питонисты либо Rustоманы.
Сука блядь!
Где мои указатели? Где реализация работы цикла for не через жопу? Где EOF? Хули argc и argv отсутствуют в стандартной библиотеке?
Я конечно практику уже сдал на первой же лабораторной. Но сука, как вы на этом говноязыке программируете, не охуевая от его мразотности?
На одного тебя, выросшего на сишке, приходится пара десятков таких, кто вообще никогда не кодил. И как показывает практика, питон с нуля учить намного легче, чем си, а научить студентов чему-то надо. Вот и дают питон.
> Где мои указатели?
Ссылки и объекты.
> Где реализация работы цикла for не через жопу?
range() и enumerate(). А для остального - while. Да, я тоже поначалу плевался, а затем понял, что это тоже достаточно удобно.
> Где EOF?
Скрыт за более высокоуровневыми механизмами.
> argv
sys.argv
> argc
len(sys.argv)
Потому что ты дурачек двачер, высирающий тонну бесмысленного текста.
Принимай язык весь, а не сравнивай.
алсо, интересует такой вопрос: вот я скрапю страницу, где на ней есть h1, span, strong, li, р. и все это мне надо заскрапить. при всем этом скрапится только h1. в чем может быть трабл?
вот код https://ideone.com/eUDaOw если что
парсер-кун
from pandas import Series
a = Series([['49182'], ['51666'], ['52507'], ['51589'], ['51408'], ['50701']])
b = Series([['59'], ['65'], ['51'], ['41'], ['51'], ['55']])
a.map(lambda x: x[0])
b.map(lambda x: x[0])
result = a/b
А, там же еще набор string'ов во внутренних списках висит, а не integer'ы. Тогда к лямбде надо еще банальную хуйню добавить:
a.map(lambda x: float(x[0]))
Сап, на каком уровне нужно знать именно джангу что бы пойти на фриланс или же устроиться джуном-джангистом?
Сейчас знаю основы работы джанги с бд, модели, аутентификацию, запросы, как работают урлы и вьюшки, основы хтмл и css что бы легкие шаблоны делать, но я только недавно начал учить джангу, надеюсь через 2-3 месяца смогу устроиться джуном.
Файндолл возвращает список, а не объект. В следующий раз, чтобы понять в чём проблема, выводи хотя бы ошибки.
>Где мои указатели?
Не нужны. В 90+% случаев в C указатели используются как ссылки на объекты, либо совсем какой-то олд-стайл кодирование, что нынче дурной стиль.
>>51319
>А для остального - while. Да, я тоже поначалу плевался, а затем понял, что это тоже достаточно удобно.
Не хватает очень сильно оператора :=, что появился в 3.8, не хватает цикла do-while, который приходится заменять на while(True) ... if xxx break или ещё на какую-нибудь кривость. Мелочи, но неприятно.
>>51249
>Хули argc и argv отсутствуют в стандартной библиотеке?
Они есть, тебе уже ответили. Кроме того, в стандартной библиотеке есть модуль argparse, который тебе очень продвинутую обработку аргументов позволяет делать.
Чем, кстати, очень хорош питон, так это своей стандартной библиотекой, где все бытовые вещи хорошо и стройно поддержаны. Это выгодно отличает его от платформ вроде node.js или от того же C++.
так а как мне тогда получить данные со сттраницы если у меня несколько спанов?
>>51457
тут нна самом деле от региона оч сильно зависит, анонче. если в дс или дс2 то возможно, если что то другое - врядли. я ттри месяца учил и пилил проектики, четвертый месяц везде слал резюме и названивал прося взять стажером даже просто за бесплатно. в итоге слали нахуй. в итоге пошел учить пхп - взяли через неделю на 500$. зайди в пхпттред, там хуева туча таких когда я начинал было еще 4 человека кроме меня с такой же проблемой питонисты-джангисты которые уже %колвовремени% пытаются устроиться и в иттоге в пхп перекатываются. как то так. в моем поволжье зажопье миллионике питонисты джуны вообще не нужны.. надеюсь у тебя получится
Primary key - unique index. Тебе не обязательно делать индекс в табличке, тебе не обязательно следить за уникальностью, но тут есть ряд вопросов:
1) Если колонка к которой тв цепляешься не будет уникальной, то будет ли вся таблица иметь смысл, как вспомогательная? На долгий select тебе может вернутся несколько строк, ты рассчитываешь на такой результат у вспомогательной табличке?
2) Ты можешь не делать колонку индексом, но тогда ты теряешь производительность при выборке и сортировке, зато немного можешь выиграть при изменение записей в таблице, хотя в постресе это проблема долго апдейта решена гениально приметивно: старая строка уделяется и вставляется новая.
В конечном итоге ты в теории можешь создать табличку без pk, скорее всего ни один диалект не запретит тебе этого, но это полностью лишено какого либо смысла, если тебе вдруг реально это по какой-то причине нужно, то возможно тебе нужны не таблицы-прицепы, а что-то другое?
Ебать рофлы конечно, странно что не указали опыт работы ещё 3 года за свои до 40к ))0
Интересно, почему в Новосибирске, который типо ИТ город все дела, всего пару вакансий пайтон джунов. Неужели все настолько плохо в россиюшке?
>Неужели все настолько плохо в россиюшке?
Россиюшка состоит из ДС-ов, по мелочи Екат и Казань, в остальном отсоссиюшка.
Вакансия то для студента.
Вчерашнего или даже действующего.
Который в приоритет поставит учебу, а не работу.
1. Сейчас новый год и не набирают никого. Летом будет не парочка, а 5-8.
2. Тут походу из-за большого количества студентов эти все вакансии быстро и закрываются.
3. Даша аи это местная достопримечательность, их вакансия висит круглый год. Те, кто ходит к ним на собесы рассказывают, что там происходит что-то уровня "тебя садят за комп, на нём ide открыта с плюсовым кодом, код сумасшедше хуевый, вплоть до названий переменных peremennaya1, тебе нужно разобраться, что этот код делает и какие-то куски приписать".
Ещё интересно, что когда Даша аи только появилось, кто-то вскрыл, что весь их аи работал на ифах, и работал он так первые года пол их существования.
>>51578
Ты работаешь джуном, но не можешь вывести ошибку, чтобы понять, что делаешь не так? Файнд возвращает объект, .text() это метод этого объекта, Файндолл возвращает список таких объектов. К списку ты этот метод не можешь применить. Тебе надо пройти по всему этому списку и каждый объект обработать.
>>51661
Ты думаешь в екб и казани ситуация реально лучше, чем в нск?
>Даша аи это местная достопримечательность
>Ещё интересно, что когда Даша аи только появилось, кто-то вскрыл, что весь их аи работал на ифах, и работал он так первые года пол их существования.
Ахаха, да там сразу понятно, что конченные ебанаты сидят. Щас бы диплом по ит профессии в россии требовать, знаю я как в том же НГТУ программированию учат, это вообще рофл.
https://stepik.org/course/Программирование-на-Python-67/
Разобраны все основы
Бесплатно
Живое комьюнити
После него хоть куда в питоне стартуй
Толсто.
У тебя никогда не было такого, что ты примерно представляешь, что возвращает функция, и какие атрибуты у этого значения, и тебе этого вроде бы достаточно, но при этом компилятор заставляет тебя указывать тип, и ты вынужден вспоминать, как он называется? В динамически типизированных языках пытаются это учесть, вычисляя тип на ходу. В статических - вводят вывод типов.
Годная тема, для люителей КТ
Нет, не было, auto быстро пишется. Не хватает семантической строгости. Ну видимо это чисто мои заморочки. Ладно, спасибо за ответ
Там уроков меньше.Если посмотреть на sololearn, то там 9 блоков от 7, до 10 уроков.А на том сайте 3 блока от 6 до 12 уроков.
Хз, мне норм.
Просто логично используй присвоение значений объекту, не пихай в него всё подряд. Используй ООП.
Алсо в питоне тоже "с ходу" понятно что произойдёт, если не индус накострячил.
>>51661
>Россиюшка состоит из ДС-ов, по мелочи Екат и Казань, в остальном отсоссиюшка.
Кстати, у меня вопрос. А реально ли в Минске/Тбилиси вкатиться на пайтон джуна?
Это города где недорого жить + легко перекатиться с нашим паспортом. Поэтому и спрашиваю, может кто знает.
Я гонял сололерн и прошел этот курс.
В одном блоке этого курса больше пользы, чем во всем курсе сололерна.
Тут какие основные плюсы.
- Все основы рассказаны.
- Есть задания, автоматически проверяемые. И не залупа по типу вставь 2 запятые малаца. Творческие довольно, как для новичка.
- После сдачи правильного решения тебе открываются решения других пользователей и их обсуждение (!)
Когда промудохолся пару часов со скриптом и таки выдал кривое решение, очень полезно посмотреть как эту задачу можно было решить проще и логичней.
Наверняка есть какой-нибудь Curses для питона.
Если консоль юниксовая, можно передвинуть курсор через \033[x;yH и перезаписать пробелами.
Ну а если нужно изменить ту же строку, в которой курсор, достаточно вывести \r и опять же забить пробелами.
А весь экран очистить - вызвать программу cls или clear.
А у меня другой вопрос. Есть функции написанные не мной, они что-то пишут в консоль. Можно ли их как-то вызвать, чтобы они ничего не написали? Может какой-нибудь with no_print() as print: можно написать
os.system('clr'). Или временно stdout переназначить.
Вобщем, если Питон 3.8 отказывается устанавливаться в Win7 ссылаясь на недостаточное обновление системы, то это значит, что нужжно установить пакет обновлений - KB2533623
или
https://www.microsoft.com/ru-RU/download/details.aspx?id=26764
на сколько мне известно, это обновление kernel32
Накати ltsc - специально для таких клоунов как ты кто боится что весь мир узнает про их дрочку на гей-прон.
> бессмысленный зонд
сейчас бы работать на бессмысленном глючном архаизме который толком не поддерживается. Иди нахуй
>Накати ltsc
В ней просто нет магазина и приложений оттуда, в плане зондирования она такая же как обычный тырпрайз.
>сейчас бы работать на бессмысленном глючном архаизме который толком не поддерживается
Внезапно, десятилетняя система хотя бы работает как надо, а вот десят_очка как раз любит "глючить".
Плавно хочу вкатиться в ваш богоподобный ЯП (или бек или ds, т.к. шарю в математике), но времени мало-около 10 часов в неделю.
Очень не люблю смотреть видосы или вебинары, поэтому думаю про курсы от практикума яндекса.Может ктото проходил оные?
Прошу не ссать на меня за то, что я ленивый и не хочу сам. Сам могу, но свободного времени слишком мало.
>Внезапно, десятилетняя система хотя бы работает как надо, а вот десят_очка как раз любит "глючить".
Ахуительные истории полоумного ретрограда. Десятка в разы стабильнее протухшго говна, и.. Блять, у тебя даже питон не устанавливается, а ты что-то про "просто работает" рассказываешь, клоун?
>В ней просто нет магазина и приложений оттуда, в плане зондирования она такая же как обычный тырпрайз.
Ну так отключи их блять
А большой ли шанс устроиться на работу в ИТ, если ты допустим подходишь под вакансию, проходишь собес, но у тебя нет этот ебаного военника? Он же щас вроде нужен, что бы оффициально устроиться..
Могут и с приписным взять. Конечно, должна быть отсрочка. Но если бегаешь, шансы малы.
Пиздец, как в этой россии жить и работать, зп и так маленькие, вакансий очень мало, ещё и долбоебы с этой юзлесс армией. По сути пойти проебать год вникуда, потерять навыки и потом заново начинать учить что-то, это же бред. В такой тильт вгоняет конечно..
Человек загружает пик, программа показывает квадратик фиксированного размера, который можно разместить в нужном месте. Квадрат обрезает пикчу и сохраняет ее в таком виде.
Какие инструменты, библиотеки понадобятся? Я вообще ньюфаг, но разобраться думаю смогу. Калькуляторы писать неинтересно.
Это наверное на клиенте реализуется на жаваскрипте, а на бекенд передается уже готовая бинарная картинка.
>ретрограда
Мань, у меня на том же ПК стоит, внезапно, десятка.
>Блять, у тебя даже питон не устанавливается
Ты с разными людьми говоришь, шиз. У меня везде всё устанавливается.
>Ну так отключи их блять
Ммм, пердолинг, про который адепты винды говорят, что его нет.
лол. Нет. Сменил 4 работы. От мини-галерки в регионе до it-гиганта в дс. Всем было насрать на бумажку. Единственное, на каждом собесе у меня спрашивали - планирую ли я вообще в армию уходить, и есть ли у меня соображения как косить. Ответов "ну лол, куча же юрфирм существует, да и живу не по прописки. В армию не хочу, проблем не возникает" всегда хватало
>Сменил 4 работы. От мини-галерки в регионе до it-гиганта в дс
Странно, погуглил, почекал тостер. Говорят устроиться на работу с приписным, да, можно. Но типо когда устраиваешься о тебе отправляют данные в военком и за тобой уже легко прийти, ведь ты в офисе этом работаешь, так и забирают
> как в этой россии жить и работать
Уехать куда-нибудь в глушь и сидеть там до 27 лет и смотреть в одну точку. А затем норм нет.
Или обзавестись "негодностью".
Или найти где-нибудь 200 кусков и затем кое-куда обратиться.
Работящие погромисты, можете расписать, каким списком скиллов должен обладать пайтон-джуниор? Предположительно - веб разраб, вряд ли ещё куда удастся вкатиться без опыта и с посредственным знанием математики. Знаю, что нужны flask/jango, sql, интересно как раз, на каком уровне я должен знать их? Что я должен уметь написать? Или какие именно топики изучить?
Тяночку вам для привлечения внимания
1. Просто откоси. Скорее всего у тебя что-нибудь есть -- натяни. Если нет -- имитируй что-нибудь, давление например, или щитовидку, гайд есть. Просто полежи в дурке.
2. Каждый призыв проходи комиссию, потом когда дадут повестку, подавай в суд. Суд проиграешь в любом случае, подаёшь на апелляцию, её проиграешь тоже, но за время всей хуйни призыв кончится. На суды можно не ходить.
В конторах типо призыванет так таскают людей, если не могут у них ничего найти.
0. Надо правильно писать названия фреймворков.
1. Надо иметь хорошее представление об основах питона.
2.1 Фласк/Джанго + аиохттп. ОРМки. Миграции(нахуя это и зачем придумано вообще). Очереди. Кеш. Выполнение отложенных задач. По СКЛ хватит базовых знаний уровня селекты/инсерты/апдейты/делиты + типы данных и связи между таблицами. Нелохо знать и уметь в джоины(вроде легко, но многие не понимают).
2.2 Уметь в докерфайлы и композы. Если не написать самому с нуля что-то сложное, то хоть уметь понять что там описано и как, приблизительно.
3. В идеале ты должен уметь сам задеплоить свой проект. Начать с гита и пустой репы, продолжить созданием проекта, подключением БД и зависимостей, потому все это выкатить на сервак(хоть руками), там так же настроить БД+nginx/apache+uwsgi/gunicorn+приложение.
Это называется "широта образования". IT специалист должен знать много на уровне "примерно", что это, как это работает и как с этим обращаться. А задача профильных специалистов уже в тонкостях ориентировать, в сложных настройках, как решать неочевидные проблемы и т.п.
Поставь знак равенства между твоей моделью данных и структурой БД. Ты создал таблицу атрибутов объекта. Теперь ответь на вопрос: каков критерий уникальности атрибута? Обычно это и есть первичный ключ.
Сразу предостерегу: я встречал много людей с коровьей лепёшкой вместо мозгов. На вопрос критерия уникальности они давали уверенный ответ, а спустя время уточняли, что в редких условиях значение синуса может достигать двух атрибуты могут быть не уникальными
Только вот эта широта заебала увеличиваться, а ценообразование за скилл наоборот. Английский как само собой разумеющееся, куча, языков фреймворков. Недавно вакансию читал обоссывался. В дополнительных плюсах было указано знание линукс на уровне пользователя, а потом в нескольких пунктах нехилый такой стек администрирования. Чото хуйня какая-то происходит и виноваты те кто на эти вакансии соглашаются.
В постгресе так примитивно решена совсем другая проблема -- MVCC. Мало того, она не удаляется, а помечается как удалённая, но никуда не девается. В результате в таблице накапливаются мёртные души записи, которые удаляются механизмом vacuum
На деле все может сильно отличаться. Возможно половина требований взяты с потолка.
Откровенно говоря джун - это выпускник вуза, откуда у него опыт докера, гита, миграций и прочей ебанины?
Ты ещё скажи скажи, что он в одно лицо должен писать проекты и поддерживать стенды и прочие виртуалки - и всё за зарплату джуна.
Искать адекватный.
По иному никак.
Проблема в том, что айти - в тренде и желающих там работать много. Приходится конкурировать и чем -то превосходить соперников.
Кстати забавно когда джуном начинаешь пилить с 0 архитектуру, сразу понимаешь что попал не в самую адекватную компанию.
Ещё забавнее, когда разработанная тобой джуном рахитектура оказывается намного более жизнеспособной, чем приложения "ведущих специалистов" местного разлива, а местные "ведущие специалисты" на проверку оказываются джунами с огромным стажем работы
True story в любой гос конторе
Так я из гос. конторы. Это максимальный пиздец, в большинстве отделов, куча народу хуярит говнокод который не сможет работать в проде, тупо упадёт из за особенностей ос.
Окей, давай ты тогда не будешь изучать гит и докер, а будешь сидеть со своей коркой и ждать вакансий, где всей этой хуйни не нужно, я тебя целиком поддерживаю
Братан, я понимаю тебя. Я сразу продавил Debian, так как знал, какой дикий гемор я отхвачу под виндами. Отхватывал кстати -- оказывается, под виндами в именах файлов двоеточие использовать нельзя
Что до "хуярит говнокод" -- после гос. конторы я припёрся на галеру. Думал, вот ща мне расскажут, как правильно программировать. Что я сейчас побуду нормальным джуном и поучусь. Сукаблять, там такие же пидоры, которые хуярят говнокод. Это история о том, как я никогда не был джуном :(
Можно ли передать комбобоксу значение кортежа или списка?
И вообще стоит ли это делать? Или лучше в UI захардкодить эти данные?
З.Ы. я правильно понимаю, что для передачи данных комбобоксу нужна отдельная функция?
>Можно ли передать комбобоксу значение кортежа или списка?
a = (1,2,3,4)
for i in a:
self.yourComboBox.addItem(str(i))
Именно циклом?
Сразу self.yourComboBox.addItem(a) - нельзя?
И вопрос ещё один: вот есть файл ui.py с комбобоксом self.mycomboBox = QtWidgets.QComboBox(self.mygroupBox)
Теперь мне в другом файле, например, main.py надо передать эти значения.
Это будет что-то типа:
from ui import*
a = (1,2,3,4)
class mywindow(QtWidgets.QMainWindow):
...
--def():
----for i in a:
------self.yourComboBox.addItem(str(i))
> Сразу self.yourComboBox.addItem(a) - нельзя?
a = (1,2,3,4)
a = [str(i) for i in a] # привести элементы в str
self.chooseTable.addItems(a)
Чет тупанул, забыл про addItems
Советую тебе книгу-справочник прохоренок-дронов pyqt5
>И вопрос ещё один
Когда генеришь себе ui в qtDesigner экспортишь его из .ui в .py тулзой pyuic5 и потом уже в своем файле импортишь класс Ui_MainWindow и добавляешь наследование в свой класс
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QTableWidgetItem
from ui_mainwindow import Ui_MainWindow
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
....def __init__(self, parent=None):
........super(MainWindow, self).__init__()
........a = (1,2,3,4)
........a = [str(i) for i in a]
........self.chooseTable.addItems(a)
if __name__ == "__main__":
....import sys
....app = QtWidgets.QApplication(sys.argv)
....mainWindow = MainWindow()
....mainWindow.show()
....sys.exit(app.exec_())
Почему такое не работает?
TypeError: 'Series' objects are mutable, thus they cannot be hashed
при этом и
data.groupby((pd.cut(data['numbers'],np.arange(0,80,5)))['b'].count()
работает
и
data.groupby(data['A'])['B'].count()
Боевые картинки подъехали.
Я тебе выкатил требования человека которого можно без страха назвать коллегой и допустить к выполнению задач.
Что именно из списка это "много"?
Почитать доки докера/рэбита/рэдиса/селери это много? Или по гайдам с сайта DO залить проект на серв и настроить минимально(не для хайлоада мифического же)? Ну извени, это бэк, это тебе пригодится.
От стажера, кстати, требуют чтения доков, первые н-недель/месяцев.
Можете на пальцах объяснить, как работает и что делает метод __init__?
Я и по укусу питона не понял, и из объяснений гугла не особо дошло на тяжелую голову. Совсем не доходит его суть
Лол, книга не особо пока помогла - сам разобрался.
Но всё равно спасибо.
И ещё, при присваивании списка комбобоксу сразу отображается первое значение списка.
Можно как-то сделать, чтобы поначалу отображалось дефолтное значение?
Ну да. Пробелы нельзя, юникод нельзя, спецсимволы нельзя, больше N символов нельзя, вообще ничего кроме латиницы и цифр нельзя, да и у тех есть исключения. Будто в 1980 живём.
http://pythonicway.com/education/python-oop-themes/33-python-abstract-class
https://otus.ru/nest/post/677/
>Таким образом, используя концепцию абстрактных классов, мы можем улучшить качество архитектуры приложения, уменьшить объем работы и при этом, обеспечить легкость дальнейшей поддержки кода
выглядит как интерфейс в с#, кроме возможности использовать слоты особой разницы между типами классов не увидел.
Интерфейс это другое и предназначение у него тоже другое. Абстрактный класс это основа всех будущих производных классов, своего рода макет в котором ты что то реализуешь сразу, а что то описываешь поверхностно без реализации, для того чтобы можно было сразу понять что к чему, посмотрев на него, без нелбходимости прыгать по классам. Без абстрактных классов тебе пришлось бы копипастить один и тотже код много раз. Обычным классом его не заменишь, потому что в обычном классе не млжет быть абстрактных методов.
Также они реализуют идею полиморфизма, когда ты указываешь в методе аргумент в виде абстрактного класса и имеешь возможность передавать в этот метод все производные классы.
>в обычном классе не млжет быть абстрактных методов.
чем отличается абстрактный класс от класса, где в методе вызывается NotImplementedError?
>Также они реализуют идею полиморфизма, когда ты указываешь в методе аргумент в виде абстрактного класса и имеешь возможность передавать в этот метод все производные классы.
Это и есть интерфейс в том виде, как его используют
Тем, что на этапе компиляции, тебе не дадут наследовать абстрактный класс не реализовав все абстрактные методы. Тем, что передав в метод потомка абстрактного класса ты знаешь, что у него реализованы все методы этого класса, в случае если метод выбрасывает not implemented, то тебе легче будет найти в каком именно классе это делается, в случае если у тебя в основе not implemented, то этим классом может быть любой потомок. При этом видя обычный класс ты не можешь сказать, что он предназначен для наследования, видя абстрактный класс, ты сразу понимаешь, что это основа других классов и у него по крайней мере 1 потомок.
Интерфейсы используется для связи между иерархиями классов, т. е. если у тебя есть два класса, которые наследуются от разных классов и эти классы не являются родственными, но при этом у них есть что то общее, то это как раз случай для использования интерфейса.
Спасибо, перепишу теперь со своего костыльного класса на абстрактный.
>передав в метод потомка абстрактного класса
В питоне же это автоматически нигде не проверяется, тебе придется или подразумевать по-джентельменски или проверять контракт isinstance(arg, AbstractClass).
Это уже вопрос урезанного ООП в питоне.
Мне нужнно из них составить распределение Гаусса - т.е. чтобы мне прям нарисовало диаграмму - какой процент от выборки какое число составляет - как на пикрелейтеде.
Как мне это сделать?
*скобки
Тебе же пишет, где ошибка. Ты перенес строку после =, на это оно и ругается. Добавь пробел, бэкслеш и затем переноси.
Ты перенес строчку, не указав питону на это. В конце добавь просто \
Питухон у тебя за щёчкой - ну-ка сглотни.
Ответ неправильный. Ты используешь свой грязный язык, сучка.
Ну и хуле ты тут забыл? Не опускайся до нашего уровня, упивайся дальше своими шарпами с жсами в соответствующих тредах.
Можно, конечно. Вот:
x = 10
cur = con.cursor()
cur.execute("select * from mytable where id = ?", [x])
Не корми.
Цели у неё такие: дать график по точкам, и указать её функцию. Это я знаю как сделать.
У меня проблема с графиком. На чём лучше строить график в питоне? На питон turtle? Поясните вообще на что выводить лучше всего график. Спасибо заранее.
спасибо огромное.
Я на питоне тоже пишу.
Это C#, лучший язык всех времён и народов, который вотпрямзавтра вытеснит все остальные языки. А всё потому, что стал опенсорсом.
почему форумы погромистов такие токсичные? всё время на эти форумах друг друга дерьмом поливают за малейше не так сказанное слово.
Это не моя ересь, а тех, кто постоянно набегает во все треды и пишет, что С# всех переиграет. Заебали. Из нормального сообщества превратились в секту фанатиков где-то на уровне Rust.
комплексы
Так оно и будет. Раст будет использоваться там где нужна производительность и низкоуровневость, а в остальном будет С#
Тут кто-то высказывал мнение, что в технари в принципе идут люди, которых травили, и поэтому они тратили время на умственное развитие, а не на общение. Но хз, ИРЛ токсичных технарей наблюдаю редко. Это скорее двач такой. Да и на лоре вон атмосфера другая.
>токсичны айтишники
Потому что сидят на двачах. Ширма анонимности выставляет на показ всю человеческую грязь.
говоришь так, будто Ерохины не бывают токсичными
Ты что, ведь любой код на этом прекраснейшем языке, каким бы он ни был - это лучший пример того, как правильно писать программы, хоть печатай и в рамочку вставляй! Воистину, язык богов! А остальные должны преклониться!
ну, вы поняли этих шарподаунов
Показывай свой шедевр.
лично мне хватило дойти до строки с $""
>одинакового в обеих ветвях, причём ещё до деления одинакового.
Вру, код разный, это у меня от оформления глаза рябит.
>c#-мартышка пытается самоутверждаться у python-бояр
А ты забавный. Иди ковыряй своё тухлое легаси, дурачок, не мешай нормальным людям итт.
Этот даун просто так не съебёт. Его нужно молча репортить.
людям свойственная идеализация объектов, это их механизм защиты
>форумы погромистов такие токсичные?
А ты там хотя бы раз был? Они нормальные. Это только сосач такой.
Да это пиздец какой то. Находишь модуль, устанавливаешь - он не устанавливается. НАХУЯ ОН ТАМ?
Постите рабочее сами.
Потому что ограничений на загрузку вот и заливают все свои лабы.
Все работает, но на -4 элементе питон почему то ругается, пишет "pop index out of range". Почему он out of range если там еще за ним 2 элемента есть?
https://pastebin.com/kajAcPmx
Замени все индексы в pop() на -1
После первого pop у тебя на 1 элемент меньше в списке
В итоге на pop(-4) ты обращаешься не к исходному списку, но 4 элементу с конца, а к списку без 3 последних элементов, так ещё и к элементу по индексу len(list) - 4
Ты список меняешь же своими попами. И на последней итерации у тебя всего 3 элемента в списке, а ты хочешь 4ый взять.
Надеюсь, это был не тралинг...
это ты про лор?
Нахуй их заменять на -1, если можно просто без индекса указывать и будет тоже самое?
Много что, связанного с наукой. Это не обязательно ML.
Главное, чтобы уникальный.
Если в одном потоке, то без разницы, можно хоть один курсор тащить через всё приложение. Если в разных - то да, нужно коннектиться с нуля.
А я-то надеялся, что по ссылке будет разбор внутренней структуры разных форматов изображений. Эх.
Как это сделать?
>Linux
да, согласен. прыщеблядикс-сисадмин это самое мерзкое существо из всего АЙТИ. Хуже мразей просто не бывает
>C++
тоже согласен. но там токсика поменьше чем у пингвинов всё ж.
>>55627
да нет, сосачевски pr на фоне этих лоров это просто венец миролюбия. я здесь будучи такой ньюфаней такие вопросы идиотские задаю порой, так коряво всё объясняю и люди мне отвечают и помогают. на каком-нибудь форуме по яп, меня бы быстро засрали в духе "ЭТО ТАК НЕ НАЗЫВАЮТ ГОВОРИ НОРМАЛЬНО, ЭТО ВОПРОС ИДИОТСКИЙ ЗАЧЕМ ТЫ ВООБЩЕ НА ЭТОТ ФОРУМ ПРИШЁЛ ИДИ В ГУГЛ"
> лор
Там какие-то сверхразумы сидят. Обсуждают ебически сложные темы, и если показываешь хоть чуть-чуть непонимания, тебя сразу же обливают желчью. Знают вообще всё, будто сами это всё придумали. Но вообще ничего не рассказывают новичкам.
>Обсуждают ебически сложные темы
дальше названия которых не понимают и никогда их не использовали
ты хорошо сейчас дал определние чсвшникм в айти. реально такое чсв, прям. хотя я и сам вайтишник(нет, у меня другая специальность, вайти изучаю на сучай если меня выпизднут с работы).
алсо, но кто бы что не говорил но самая токсичная мразь в айти это линуксоиды, они даже на дваче токсят, эти линукс треды в b просто могут довести меня до нервных припадков если я их просто буду читать в ридонли. поэтому как только вижу эти высеры сразу скрываю. а слова типа "линус торвальд, опен сорс" давно стали ругательными для меня. вчера в питон треде вроде здесь увидел опен сорс, сразу линуксоблядков вспомнил.
>на каком-нибудь форуме по яп, меня бы быстро засрали в духе "ЭТО ТАК НЕ НАЗЫВАЮТ ГОВОРИ НОРМАЛЬНО, ЭТО ВОПРОС ИДИОТСКИЙ ЗАЧЕМ ТЫ ВООБЩЕ НА ЭТОТ ФОРУМ ПРИШЁЛ ИДИ В ГУГЛ"
Когда я задавал вопросы на форумах вроде киберфорума, ещё будучи студентом, то мне всегда там отвечали нормально. Какого-то неадеквата или оскорблений не видел, это не в интересах людей вести себя желчно, потому что тогда на форум будет заходить и помогать меньше людей.
Лор больше похож на анонимную борду, где можно нести любой бред, чем там и на сосаче и занимаются.
>самая токсичная мразь в айти это линуксоиды
>высеры
>линуксоблядков
Да нет, самые токсичные - это как раз хейтерки вроде тебя.
а ещё хуже всего что эти идиоты пихают это дерьмо везде где могут под лозунгом "это самое лучшее для дома". я помню у меня на работе одна тётя срака была и попросила она местного сисадмина переустановить ей шиндовс. через неделю она у меня спросила могу ли я шиндовс переустановить. я сказал, ну да.
короче, приносит ноут, а там линукс стоит. я в ахуе уже подозревая как он там оказался спрашиваю у неё давно она им пользуется. а она говорит мне "да задротнейма попросила а он мне голову заморочил и вот эту программу поставил ничего в ней не понимаю, всё неудобное поставь мне виндос как было". охуеть конечно чем этот дегенерат думал когда 50 летней женщине ставил эту хуету...
Значит ты озлобленных не видел. Или линуксоидов.
/b/ токсичен и без линукса, и без айти вообще. Заходил недавно в б, начал скрывать треды и скрыл вообще всё. Понял, что здесь ещё норм, и закрыл.
В линуксоиды, наверное, идут не от хорошей жизни. Действительно, нормальные люди не будут всерьёз это использовать дома. А ведь находятся и такие, кто ставит Gentoo на десктоп и несёт сектантский бред в духе "тонкая конфигурация". Но это всё неважно, тут не /s/.
Двачую за линуксойдов, озлобленные персонажи, плюются кислотой при малейшем упоминании пердолинга с линуксом. А линь, на секундочку, состоит из пердолинга от и до. Сегодня мне один неадекватный персонаж в s доказывал с пеной у рта что он на атлоне64 будет благодаря линуксу смотреть видео на ютубе в 1080р 60фпс, а на адекватные аргументы против этого заявления всем линуксобляди всем тредом на меня накинулись. Клиника блять.
дак а в чём моя токсичность? Я человеку сказал чтобы он время не тратил, т.к. в результате это окончится ничем, привёл даже примеры на собственной практике. Это факты на опыте, в чём токсичность? В том что я сообщаю неудобные факты в линукс треде?
>в чём моя токсичность
В оскорблениях и агрессии. Ты написал анону своё мнение и всё, а называть несогласных с тобой дебилами, шизиками и сектантами - неразумно и бессмысленно, насколько бы прав ты не был. Это ничего не докажет и только порождает ту самую токсичность.
Судя по вакансиям моего города питонист может пойти только нахуй. Тебе бы тоже не помешало чекнуть востребованность.
Самые обиженные - это красноглазики. Иначе они такими бы и не стали. У нил линукс вместо жизни, этакий эскапизм.
>быдло из дс с типичными понтами о понтах
>похуй кто о чем пишет
>быдло из дс занято своим статусом быдла из дс
Ладно извини.
Самые обиженные - это хейтеры красноглазиков. Иначе они такими бы и не стали. У них хейт линукса вместо жизни, этакий эскапизм.
https://habr.com/ru/post/481782
мимо олд треда
Если ты про меня (чел посоветовавший не тратить время на тормозной линукс на некроте) - то это моё третье сообщение в этом треде, включая вчерашние два. Линуксобляди неадекватны. И правда как нигеры, которым везде расизм мерещится.
>>56146
Да, ты прав, грубо отвечал. Видимо, это влияние линуксотреда - попал в загон прокажённых и тут же заразился.Нет, на самом деле мне стыдно - но я достаточно токсичный. Заходил намедни в /ra, там аноны без негатива ответили на мои детские вопросы и всё расписали, благодаря чему я без проблем собрал микроконтроллер под свои цели, мне тогда стало вдвойне стыдно за собственную токсичность
Найс проекции. Это не мне мерещится токсичность линухов.
Сап, я новичок в джанге, помогите понять что делает get_initial и для чего он нужен?
Я погуглил, нашел пару ресурсов на англ, хоть прочитать и могу, но я все равно не особо понимаю зачем он. Понял то,что он должен возвращать словарь с дефолтными значениями для формы, но ведь в самой форме можно задать initial=x. Смысла от этого метода?
https://pastebin.com/S7SzdDgt код
Если и троллинг то ненамеренный, концепция гетеров/сетеров во всех языках не отличается.
>Видимо, это влияние линуксотреда
Нет, это личная раздражительность при общении на острую лично для тебя тему, когда кто-то с тобой не согласен. Такое есть почти у всех, только темы разные. Тут только тренироваться оставаться спокойным, например, осознавая, что переходя на оскорбления, польза от разговора идёт в ноль и начинается пустая трата времени и нервов.
оу щет. а чем ты до 30-ти лет занимался? я думал ты в радиэлектронике ньюфаня только
Я панк и всю жизнь занимался тем чем хотелось. Сейчас хочется кодить и микроконтроллеры собирать.
ты только на собеседовании не пиздани такой хуйни что ты панк и занимаешься тем чем хочешь. т.к. это просто показатель твоей инфантильности и детскости, в 30 лет причислять себя к каким-то неформалам и не уметь доводить дела до конца. "занимаюсь тем чем хочу" значит "я не умею доводить начатое до конца и заниматься чем либо долго". удачи.
Выглядит интересно, стоит глядеть как будет развиваться дальше и не закинется ли как ссаник.
Как-то не верится, что оно раза в 4 быстрее, чем aiohttp
Асинхронность ебани, вместо реквестов просто возьми клиент от aiohttp. Но тебя скорее всего забанят
Круто, да. Начни с теории, ты полез туда, куда не надо и так как не надо.
Послушай анона и ебани или мультиплточку(каждый поток через свою проксю, шоб не прибавили), или асинк(тоже желательно с прокси, ну или тайминг подбери).
Алсо, вообще ты можешь изучить нормально и последовательно всё. Начать с асинхронности в питоне. Видос из шапки годный + у Олега молчанова подробно серия видосов. Заодно там же будет и скачка картинок клиентом aiohttp в последнем. Потом тема обхода бана от сервера, например можно использовать тор как прокси, можешь это или сам нагуглить, или в ньюфаготреде где-то есть мои посты про это, там просто с кодом я кому-то расписывал.
все нормальные курсы бесплатные, курсы за деньги это для тех кому нужна мотивация в виде "ну я же это типо деньги потратил, жалко будет не пройти курс"
Курсы и документация несравнимые вещи вообще, для разных целей. Как учебники и энциклопедии.
Пробовал и импотировать эту ссаную черепаху и импортировать её внутри другого класса, и кидл ссаный файл с заданием в корневую папку этого тартла ебаного но всё равно эта ебаная хуета не желает унаследователь методы обоссаной злоебучей черепахи. Молю хелп, я охуеваю несказанно с этой залупы.
> высер
Ну так скипни. Нормальными средствами унаследовать класс от модуля нельзя.
абу, сука, я заебался обходить бан за "обход"
да не могу, я скипать характер не тот. Спасибо, я понял что авторы этой книги ёбаной пидорасы и к моменту когда я дойду до конца этой злоебучей поганой книги у меня не останется никаких нервных клеток. Ну какой мудак эти задачи идиотские писал, сука блядь.
В чем отличия от Quart?
vibora классная, НО автор сдох и последнее обновление было 2 года назад.
Есть фанатский ремейк https://github.com/gennitria/apodo, но он тоже больше мертв чем жив :(
Очередной асинхронный веб фреймворк, которые как после дождя плодились какое-то время
Я нормален?
Пиздос, я уже 2 книги про пайтон прочитал, особое внимание уделял главам где про классы и ооп говорили, по отдельности всё понятно было, как что, а как это всё вместе применить нихуя не доходило
ООП придумали для управления сложностью, и на простых примерах из учеников естественно не понятно нахуя он нужен. Надо самому попытаться сделать что-то более-менее большое и сложное.
ТЗ накидал такое, есть одна жд-дорога через пункты A, B, C, D, E по которой ездят три поезда на 20 мест каждый (пусть по достижении последнего пункта поезд магическим образом оказывается в начале) с интервалом в 4 часа, весь путь занимает 12 часов, временем остановок можно пренебречь. Зарезервировать место можно из любой точки кроме последней только в последующие на пути. Интересуют примерно такие вопросы.
Как хранить данные о резервации? В виде какого-нибудь хитрого графа или можно обойтись реляционным представлением? Каждое место на каждой станции отдельной записью? Нужно тогда же сначала построить маршрут, допустим из пункта А в С, нужно же проверить доступность одного места на каждом пункте?
В общем, подскажите литературу где могут объяснить подобное или самому все придется придумывать?
Полтора года работаю, но обычно занимался последнее время процессингом/стримингом данных на подсосе и не особо занимался архитектурными вопросами.
ООП нужен для упрощения кода, оптимизации. Вот для чего, то есть ооп это по сути универсальный код, который можно использовать несколько раз, а не копировать его там и вот это всё. Ну и ооп помогает работать с графическими объектами.
если я не прав поправьте.
ньюфаня уволился из пятёрочки и решил войти в айти
Ну я пришёл к тому, что это не совсем так. Функцию тоже можно использовать миллион раз. Просто функция не имеет свойств и атрибутов. Запустил функцию в лупе например, и чтобы её потом закрыть - надо использовать глобальные переменные. Чтобы связать между собой несколько функций - надо использовать глобальные переменные. В этом нет ничего сложноо на самом деле, просто и понятно. В итоге моей софтинке на 1000 строк образовалось штук 20 функций и к части из них пришлось пилить вступление из штук 10 глобальных переменных - вышла пикрелейтед хуита.
А объект класса может сообщать своё состояние, сообщать свои внутренние переменные, может принимать арументы и позволяет обойтись без глобальных переменных - просто так выходит что если код сложный - то проще между собой связать разные элементы кода.
Мимо-нюфаня-который-пришёл-к-ооп
def thread(my_func):
def wrapper(args, *kwargs):
my_thread = threading.Thread(target=my_func, args=args, kwargs=kwargs)
my_thread.start()
return wrapper
@thread
А как делать, если функция которую нужно запустить в отдельном треде находится внутри класса? Описывать враппер внутрри класса?
Зачем говнокодить то? Доки совсем лень посмотреть? https://doc.qt.io/qtforpython/PySide2/QtWidgets/QComboBox.html
Метод setCurrentIndex. Задай значение -1 и будет тебе пустое поле.
self.my_combobox.addItems(my_list)
Для пустой строки в начале:
self.my_combobox.setCurrentIndex(-1)
Въеби конечно, я не против. Только нахер он там сдался.
Ты можешь передавать в функцию один единственный параметр - какую-то структуру данных, в которой все переменные и состояние держать. Собственно так питон и работает, просто передаётся структура первым параметром в метод. Так поступали, когда ещё улассы языками не поддерживались, смотри файловые операции fopen/fread и т.п. в Си.
Это лишь малая часть от ООП, не основная. Ключевая суть в наследовании и возможности переопределения методов, виртуальные функции и т п., что без поддержки в языке уже красиво не сделаешь.
Что сложного не писать у себя в коде имя format для твоего шаблона, а назвать его format_ или fmt?.. рука отвалится?
особенно ахуенно когда например переопределяется ф-я вроде hash и вместо нее оказывается даже не int значение, а кортеж, содержащий строки
>Ты можешь передавать в функцию один единственный параметр - какую-то структуру данных, в которой все переменные и состояние держать.
Как ты передашь в запущенную функцию сигнал на выключение? Как узнаешь её состояние?
Нет, это не то. Иконку приложения то я уменю устанавливать, а надо контекстное меню подменить
Почему не работает celery? Делаю все как в офф. документации, но когда добавляю в tasks.py свое приложение
from celery import app
.task() не работает
nuitka и puinstaller. Последний может генерировать экзешку без всего. Нютка собирает экзешку в окружении библиотек.
Тоже не оно. Обе ссылки описывают как запилить контекстное меню для формы, а мне надо именно подмену дефолтного контекстного меню, которое пикрил
По простому можешь писать состояния в dict() и сохранять-загружать его с помощью пакета pickle
Если операции посложнее нужны, можешь юзать sqlalchemy с минимальным количеством таблиц
Логику как хош обрабатывай.
Функции, классы вот это всё
Дваждую
Пишу свою хуйню на aiogram, интернеты говорят, что надо юзать FSM при разработке, storages там всякие и тд. Так вот в чем вопрос: в данном случае FSM это по аналогии как redux в реакте? То есть просто инструмент для управления состояниями? И еще вопрос, по сути главный: если все как я сказал, то как и куда оно сохраняет данные? Делается ли это всё асинхронно, то есть не проебу ли я данные юзера, если в этот момент что то сделает другой юзер?
Ну или так
Nuitka - https://nuitka.net/
Делаешь stanalone пает своей проги по инструкции,
правда, придется указать в ключах команды пути к некоторым библиотекам ручками.
С threading не прокатит. А так собирал проект с PyQt5, QML, numpy - без проблем
pyinstaller работает с threading и может включать весь пакет в экзешку, внешних библиотек не видно.
Круть! Надо попробовать..
Nuitka вроде все собирает, но приложение с QtWidgets
и формами QML виснет(((
Потому что неверно сконфигурировал Селери, вангую.
Ну я и тем и тем пользовался... Точно конвертил нюткой приложение с элементами QtWidgets, проблем небыло. Но нютка - это папка с кучей файлов внутри, и всё это даже для элементарной приложухи - некрасиво в общем. А пайинсталлер одинокую экзешку делает, максимум к ней pyqt5core.dll подкинуть надо. Красиво
Я FBS юзаю, полет нормальный.
Да нет же, видишь, анон, это для компонентов применяется, как и в предыдущих ссылках. Не оно... В общем ладно, забей. Уже решил по-друому интерфейс скомпоновать, и менюшка дополнительная стала не нужна. Хотя если инфа нужная найдется - интересно было бы всё-таки научиться.
Неа. Еслиб шарил - не спрашивал бы...
import mysql.connector
import npyscreen
class App(npyscreen.StandardApp):
def onStart(self):
self.addForm("MAIN", MainForm, name = "Программа работает с базой данных")
class MainForm(npyscreen.ActionFormMinimal):
def create(self):
self.grid = self.add(npyscreen.GridColTitles)
self.grid.values= []
mydb = mysql.connector.connect(host="127.0.0.1",
port ="3311",
user="root",
password="root",
charset='utf8',
database = "mydb")
query = "SELECT title_eng, title_rus, year FROM film"
mycursor = mydb.cursor()
mycursor.execute(query)
for row in mycursor:
grid_row = []
for cell in row:
grid_row.append(cell)
self.grid.values.append(grid_row)
def on_ok(self):
self.parentApp.setNextForm(None)
my_app = App()
my_app.run()
То есть, результатом выполнения кода должен стать аккуратный вывод некоторых полей из таблицы бд на экран. И так оно и происходит, но лишь на долю секунды, а за тем пикрил. Гуглил, но так и не понял что нужно сделать.
import mysql.connector
import npyscreen
class App(npyscreen.StandardApp):
def onStart(self):
self.addForm("MAIN", MainForm, name = "Программа работает с базой данных")
class MainForm(npyscreen.ActionFormMinimal):
def create(self):
self.grid = self.add(npyscreen.GridColTitles)
self.grid.values= []
mydb = mysql.connector.connect(host="127.0.0.1",
port ="3311",
user="root",
password="root",
charset='utf8',
database = "mydb")
query = "SELECT title_eng, title_rus, year FROM film"
mycursor = mydb.cursor()
mycursor.execute(query)
for row in mycursor:
grid_row = []
for cell in row:
grid_row.append(cell)
self.grid.values.append(grid_row)
def on_ok(self):
self.parentApp.setNextForm(None)
my_app = App()
my_app.run()
То есть, результатом выполнения кода должен стать аккуратный вывод некоторых полей из таблицы бд на экран. И так оно и происходит, но лишь на долю секунды, а за тем пикрил. Гуглил, но так и не понял что нужно сделать.
Запусти с питоном 3.7
Вот мои потуги: https://ideone.com/KnfoIX
Усвоил!
Аргумент передается туда же куда и массив
Да, это на уровне сискола создаётся. У самого была такая проблема, на самом QT можно поменять если на сипп писать, но в pyqt так и не обнаружил как сделать
Начал учить Шарп, понял что вакансии - сплошной asp.net.
Перекатываюсь в питон, учу синтаксис, хочу в будущем делать софт для обработки данных секвенаторов и прочей генетики (если не сосну).
Я правильно понимаю, что аналогов Struct нет, максимум Tuple?
Properties тоже не завезли?
И сразу понял, что читал жопой, похоже properties есть.
Бакалавр, естественнонаучник.
Пока базовый синтаксис по сололерн, потом буду курить мануалы с офф сайта, потом буду практиковаться на Hackerrank и Rosalind.
А дальше - разобраться, какой стек нужен и дрочить либы-фреймворки из него.
Тут ещё какой-то курс на степике рекомендовали, надо будет посмотреть.
https://stepik.org/course/4852/promo
https://stepik.org/course/76/promo
https://stepik.org/course/524/promo
https://stepik.org/course/2152/promo
https://stepik.org/course/3356/promo
Я вот такие курсы по статистике и питону обнаружил на степике
> Как подключить базу экселя к питону
Есть куча библиотек для чтения/записи. В том же pandas есть read_excel и to_excel.
> как создать визуальное приложение? Ну как форм в делфи например
Tkinter/PyQt/веб-интерфейс
Да ваще, как можно этим голангом пользоваться, когда есть такая прекрасная нода.
https://habr.com/ru/post/337098/
Более чем и на пару тыщ, но все зависит от того, какие данные будешь гонять и хранить.
Мимобэкэндерподмобилку
Есть celery
Для него есть задача на polling одного ресурса. Допустим раз в 5 секунд получать значение, записывать в бд, и выполнить запрос записав на этот ресурс другие данные.
Собственно не могу сообразить как лучше обеспечить надежность выполнения этой хуйни, т.к. ошибки могут быть как при первом запросе, так и при ответе, например.
1. Можно написать один толстый таск который будет делать это всё внутри одного себя
2. Можно сделать chain в celery, и каждая подзадача будет выполняться после предыдущей
Как правильнее? Надежность в этом случае очень важна.
Бля, анимация, передвижение фигур - это мобильная головная боль.
Твоя задача выбрать данные которые ты хочешь передавать и правильно организовать их передачу и обработку(ну и хранение, видимо).
Вангую что тебе надо глдеть в сторону сокетов "долгоиграющих", соответственно чекай торнадо.
Если будут еще вопросы - спрашивай.
Я бы сделал один толстый таск(это не значит что была бы одна жирная функция). Но я никогда не юзал "chain в celery".
Как по мне - главное обмажься аналитикой и логами. Ну и пиши в "защитном стиле"(или как там эта хуйня называется, когда куча проверок и трай/эксептов).
+ не забудь про тесты.
А ты почитай про сокеты там и там и думаю поймешь разницу(начни с торнадо, там фишка его кнокретно написана)
Да, я так и написал. Вот думаю стоит ли разбивать дальше. С другой стороны не вижу причин использовать chain как-то вообще, но зачем-то он нужен.
Да, видимо надо поработать над try-except, и логами. С тестами всё сложнее, но тоже можно что-нибудь придумать.
>Есть функции написанные не мной, они что-то пишут в консоль
Логи? Адекватные люди пишут что-то на подобие либы logging, чтоб отключать/выключать их без помощи танцев с бубном
> надо поработать над try-except
Только не завали ими весь код - ибо пиздец.
> логами
Про flower не забудь.
> С тестами всё сложнее
Таки да, но божественные моки никто не запрещает тебе юзать.
Бекенд уровня поменьше энтерпрайзовского, либо датасаенс всякий. Ещё всякая автоматизация, тесты, админская скриптота и т д.
Сейчас набегут про дохуя питонистов
За двоеточие конечно. В имени файла - никаких спецсимволов кроме нижнего подчеркивания и точки.
нормальная вроде книжка
прохоренок дронов
python3 самое необходимое
есть на телеграмм канале
библиотека программиста
там много что
>нормальная вроде книжка
>прохоренок дронов
она настолько сухая, что крайне тяжело восприниматся. Как энциклопедию читать. Я её так и не осилил
Странно, что не осилил. Книжка-то сухая конечно, но потому что без лишнего. Я наоборот Лутца не осилил.
ну я к прохорёнку ещё вернусь, но это пиздец. Он берёт просто например какой-то модуль питона, и просто начинает перечислять его возможности. Не объясняет что, зачем, просто перечисляет возможности.
Учить интересно когда тебе ставят какие-то задачи, а потом рассказывают как их решать - а тут прям тупо энциклопедия. Мало того что не интересно, так ещё и запоминается хуёво
Главное что б асинк/авэйт был, как по мне. Он там есть?
Все остальные новшества можно глянуть по докам питона, благо там к каждому методу есть небольшой "change log" уровня "а эта хуйня добавлена в версии 3.x".
https://riverbankcomputing.com/pipermail/pyqt/2014-January/033561.html
Обычную строку попробуй.
Я на пхп пишу, но немного приглядываюсь к другим технологиям. Сейчас немного nodejs изучаю, штука интересная, но чет совсем мало в процентном соотношении вакансий.
Мне интересны всякие консольные приложения, парсеры и прочее подобное. Ну и конечно же бэкенд.
Как много работы на питоне в этом плане в РФ? Хочется чего то более гибкого чем пхп. А нода все таки похоже очень нишевая штука.
https://devman.org/
Что думаете? Имеет ли смысл? Особенно если в целом хотел бы в анализ данных, но с другой стороны лишним же не будет, опять же. Или лучше чем набитые шишки нет ничего, с другой стороны можно и хуй как всегда забить в процессе
https://dvmn.org/modules/meeting-python/
>Без скучной теории — сразу к практике. Давайте выведем в терминал рисунок из букв и символов, а потом покрасим его в зелёный. Звучит непросто, но вы справитесь, даже если совсем новичок.
Я это явно сделать не могу, но при этом
>строки и вывод в консоль
переменные
вызов функций, написание своих функций
вызов методов, извлечение атрибутов
подключение модулей
циклы (for), условия (if)
чтение/запись в файл
про это знаю, хз
Хотя глянул остальные - те уже не все смогу, ну может если гугл задрочить на пару суток только
Это не питон, а escape sequences. Работают только в юниксных эмуляторах терминалов. Под виндой ничего не получится.
>PEP8 запрещает camel case
>Стандартная либа unittest юзает camelCase для методов всех своих классов
Гениально блять. Просто гениально нахуй
>PEP8
ПЕП8 был написан 20 лет назад. Половина двощеров ещё не родилась тогда. В жопу его и с metod_cherez_podcherkivanie, и с 79 символами на строку и ещё с некоторой морально устаревшей или не прижившейся хуйнёй.
Если буду на собесе выебываться и пиздеть, что PEP8 устарел, сильно разъебут?..
Как для метода класса запилить аннотацию аргументов самим же именем этого класса?
Вот есть у меня класс Piska, у него есть некий метод Piska.reform, который принимает int значение index, а также obj, который должен быть экземпляром этого самого класса Piska. На скрине это и видно, только вот незадача: ебучий код в принципе не компилится, т.к. класс Piska еще не до конца определен к этому моменту и Питон выдает NameError
не автоматическая, а просто обычные приложухи для flaska через aouth для сайтов, скачал, поставил, айди с токеном настроил и запустил
Лол. Надо попробовать в IDEA.
Быстрее всего смотреть видео на ютубе. Но сам понимаешь, это только на первое время.
Ты неправильно спрашиваешь.
Тебе просто не нужно устраиваться в компанию, где помешаны на ПЕП8, бежать от таких надо.
Ты должен просто принять, что в каждой компании могут быть свои стандарты оформления кода, чтобы всем удобно было. Они могут быть на базе ПЕП8. Тебе надо просто сказать, что тебе нравятся другие стандарты, но ты будешь работать по тем, которые приняты.
посмотри уроки олег молчанов на ютубе
параллельно читай книжку
питон3: самое необходимое
прохоренок дронов
Запилить борду желающих, думаю нет, но вот если у тебя есть желание сделать что-то другое(или принять участие в разработке), то оставь свою почту.
> Как много работы на питоне в этом плане в РФ?
Зайди на хэдхантер, вбей в поиск python, Django, Flask, смотри сколько вакансий
Сравнивай с похепе да нодой
Вот тебе и ответ
rauth есть из готовых решений
Он простой но кастрированный, не умеет нормально работать с refresh token
Лучше напиши сам пост геты через стандартную либу request
мимо свой пет на flask и машинном обучении
Нахрен мне html-парсер? Я что просто не могу подгрузить сырой html-текст со страницы методами стандартных либ?
urllib или requests же.
У тебя странное отношение к пепу8. Это же не свод законов, а рекомендации. В самом пепе8 явно написано, что если УЖЕ делаете не так как в рекомендациях, то лучшее придерживаться своего стиля. А вот если что-то новое делаешь, то лучше делать по рекомендациям - всем же только удобнее будет.
В вебе работы на пхп больше всего в любом случае. В бэкэнде на ноде примерно столько же вакансий, как и на питоне, в 2-4 раза меньше, чем на пхп. Зато питон везде используется, от всякой сисадминщины, до оберток на нейросети. С другой стороны js зато ещё на фронте используется, и любая веб вакансия требует его знать.
Ну и да, хз какие тебе нужны консольные приложения, но парсеры можно ебашить на чём угодно, хоть на самом js прямо в браузере
Только говорить что питон у сисадминов популярен и в нейронках это лол. Как будто знание синтаксиса решает и все то и дело прыгают из программистов в саентистов и девопсов. Ты пока в новую предметную область перекатишься десять языков изучишь.
Ну да, а где я говорил, что питона хватит, чтобы в девопсы вкатиться? ЯП это инструмент, и как и с любым инструментом, можно взять и перечислить, где он используется. Непонятно короче, с чем ты споришь.
Я либо тупой либо в либе нельзя такой файл отправлять. Либа vk_api. Написано в ней: "photos (str or list) – путь к изображению(ям) или file-like объект(ы)"
я имею image который <PIL.Image.Image image mode=RGB size=300x300 at 0000>
Создаю переменную с буфером(?)
image_content = BytesIO()
потом сохраняю туда содержимое объекта PIL.Image
image.save(image_content, format = 'JPEG')
в image_content теперь лежит тот же файл что если бы я его сохранил просто указав название
Но оправляя его в вк я получаю в лицо тряпкой.
Пока писал, разобрался. Не перематывал буфер в начало .seek(0), собственно я этого и не знал, теперь знаю.
Спасибо за ответ.
https://nostarch.com/automatestuff2
Чота пока не, поищу ещё дома вечером. Да и как то напрягать анонов купить книгу не хочется)
> Да и как то напрягать анонов купить книгу не хочется)
Оформлю на работе как обучающую литературу и все ок будет.
Нет, конечно. Это только начало.
Doing god's work, anon. Чаю тебе.
https://anonymousfiles.io/3CBCoy1o/ - pdf
https://anonymousfiles.io/jlauaOZW/ - epub
https://anonymousfiles.io/GvOxX0Dd/ - emobi
Залейте кто на Я.д и гугл.диск из шапки.
Они там ещё на олимпиадном программировании помешаны. Если у тебя цифорки на кодфорсес 1600+ то на тебя лично их тимлид надрачивать будет сидеть
Лол у меня там одноклассник бывший работает. Параллельно с учебой офц. Вроде не жаловался, но и я особо не спрашивал
Какие вопросы вам задавали на собеседовании на джуниора?
Я вот недавно устроился. Вопросов почти не задавали, я просто подробно рассказал как свою петпрогу сделал, что использовал, какие проблемы возникали и как я их решал.
Основы пистона из доки спрашивают ну и если были петпроекты(а они должны быть) то за них.
Да, разъебут и пошлют нахуй дауна выебистого.
Тебе уже ответили за пеп8.
А выебываться в принципе не стоит.
Блин, плюсую, как провести аннотацию вроде:
class A:
....def __init__(self, some_obj:A):
........pass
Видел онлайн-тесты-сертификаты на знания языков. Вреди вопросов были и такие "Какая максимальная длина строки кода допускается по ПЕП, 78, 79 или 80 символов". Неправильно отвечаешь - минус в статистику ответов.
Для меня ебанатство полное, но реально существуют люди, которые считают, что если ты не знаешь или не хочешь придерживаться таких стандартов - то ты полное говно.
Для меня этот пеп8 одна из самых мерзких сторон питона. Другие языки не навязывают правила оформления, хотя традиции какие-то есть.
Пиздец.
В js тоже что-то есть.
Так щас пойду, заранее просто реквестирую.
зачем?
Ваш запрос был отправлен в штаб-квартиру питона в Голландии, ожидайте ответа в течение 30 рабочих дней.
ты перепил шоли ночью?
Ээээм, powershell и wsl давно поддерживают.
Есть смысл в другой библиотеке?
Странно. У меня летает
А почему нет? Qt и в африке Qt, какая разница, на питоне или нет?
Сам открывал? Официальный сайт полон кучи устаревших примеров, а по пиздоновским байндингам вообще нихуя нет.
> Другие языки не навязывают правила оформления, хотя традиции какие-то есть.
Как рекомендации могут навязывать что-то?
Насколько питон-бэкэндеру нужно уметь верстать? Нормально, что я в пет проекте просто возьму шаблон из свободного доступа и под себя адаптирую?
Вопрос отменяется, в свободном доступе такой кал с тонной джиквери и бутстрапа, что мне не хочется это тащить
Смотря как себя будешь позиционировать на собесах.
Если скажешь что еще и верстать не против - заставят учить ангуляр/реакт/ссанину еще какую и будешь как фулл стэк ебашить за зп бэкэндера.
Если же скажешь что фулл бэк, а хтмл в глаза не видел никогда, тот тут два момента:
1. список вакансий для тебя немного сокращается и ибо в нормальных местах такие вещи разделены.
2. ты должен неплохо владеть стэком бэка, в частности обожать РЕСТ и понимать все принципы.
>с хорошим вкусом
Кхе, ну это ты ещё не видел какой у меня фронт получается...
Ладно, на самом деле он минималистичный, поэтому его испортить трудно. Так как я пилю сайт магазина, то дизайном ориентируюсь на амазоновский сайт, тёмные фоны с жёлтыми/оранжевыми кнопками в зависимости от важности кнопки.
>>62970
Спасибо. На самом деле не хочется учить вот эту всю жиес штуку, я пока что даже не понимаю, нахуя джиквери тащат вместо функции на 5 строчек. Но, наверное, это было бы мне полезнее, потому что потом больше возможностей для фриланса.
анон, а как дела обстоят с фрилансом с джангой? есть ли не сложные проекты для старта?
о себе - мидл за бугром, жава бекенд. рассматриваю вариант доп заработка с фриланса. выучить питон + джанго не проблема, вопрос скорее в возможностях на рынке
какая должна быть архитектура сервисов на питоне? Простой пример - есть в телеграме мморпг одна, в ней есть и хранение данных игроков, и всякие события и их обработка мультиплеерные, и менюшки с донатом всякие. Хотел бы замутить что-то подобное, но я понятия не имею, какую структуру должен иметь проект. Питон сам знаю хорошо, решаю с помощью него всякие повседневные задачки читай пишу скрипты . Подскажи, двач, чего надо курить, чтобы изучить этот вопрос.
Интересует в первую очередь под иос
Ну вот когда я делаю фронт для одного своего сайта то нормально, но если представить, что мне нужно будет по 8 часов в день подгонять фронты для какой-нибудь дрисни под картинки со всратым уебским дизайном, то начинает подташнивать.
Хотя есть же люди, которым норм, вон Олег молчанов вроде говорил, что много верстает по работе, хз.
Под иос Свифт учи конечно. Киви это так, поиграться - ничего приличного ты на нем не сделаешь, максимум лабу в универе.
Ну вот я бы на твоём месте ещё раз подумал, стоит ли говорить хоть кому-то, кроме мамки, что ты немного умеешь в жс/хтмл.
Делают, чому ни?
Глянь Твиттер киви, они репостят периодически проекты разные, среди них есть и вполне годные.
Но опять таки, смотря что ты собрался делать, если игрушку то лучше нативное что-то брать, а не конструкторы эти, если же формочки/кнопочки то хули нет?
Возьми лист бумаги и начинай рисовать отдельные логические блоки твоего приложения, дели вначале по бизнесу, потом бизнес по состовляющим для разработки.
Я так обычно делаю, и тут уже похуй на то что ты юзаешь, хоть раст.
Спасибо. А как понять, какие данные хранить в каком виде? Например, инвентарь тот же самый. Это только с опытом приходит?
Думаю хватит и киви.
Ну вообще да.
Ещё вариант - гуглить и смотреть как делали люди до тебя.
Мне первое что приходит в голову - json какой, для инвентаря
Хотя вот подумал, лучше вместо ЖСОНа сразу пилить связь О2М и не ебать голову.
print(int("3"+"4")
почему 34 мы же конвертировали его в int и там +
Да ты урод
-load XXE37D6BDC88G153
Надо строку вытащить из файла и вставить в буфер обмена и повесить на какую-нибудь кнопку или сочетание.
Как такое сделать?
Гуглить за работу с буфером религия не позволяет? А вставку из буфера как системно повесить на одну кнопку тоже не загуглишь?
Почти наверняка это можно сделать без питона, а готовой прогой. Подробнее тебе расскажут в /s/.
Не знаю зачем я в принципе с тобой переписываюсь после увиденного
>Гуглить за
Ты же очередной знаток из пятерочки, который вместо помощи пишет: "гыгыг погугли епта нах!"
Пишет
>Гуглить за
Называет кого-то дегенератом. Продолжай дальше изливать свою проекционную токсичность на окружающих. Мне с тобой все понятно, но ты пиши.
Ты сначала складывает строки, потом полученную строку конвертируешь в int
Сначала получается строка "34", потом конвертируется в Int.
Это копия, сохраненная 18 февраля 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.