Вы видите копию треда, сохраненную 28 октября 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Предыдущий: >>2393267 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem
Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться
#######################################
ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года
Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.
— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х
— А что ещё можно читать?
Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html
— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0
— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4
— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.
— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется
— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.
— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
что за бред это?
Desctop development тоже неплохо
Чего почитать/посмотреть для старта. Там порекомендовали степик, нашел там курс от самого ресурса, и два связанных, базовых, курса к нему - course/575/promo course/67/promo и course/512/promo
Стоит тратить время, или есть что-то лучше?
Алсо, в шапке две ссылки на книги накрылись, самая первая и последняя на ЯД.
> 8052 This user has been placed on accounting hold
На первом аккаунте у анона - мастера книги судя по всему деньги кончились. Может анон захочет и сможет проплатить, ссылка оживёт.
А последняя яндекс-ссылка похоже уже совсем всё
>и два связанных, базовых, курса к нему
Эти какие-то совсем ниочёмные. Я бы советовал по книжке какой-нибудь программированию учиться, смысла в этих курсах никакого нет. Дофига книжек и лекций разных на ютубе.
Основной курс по тестированию смотрится содержательным, хотя скорее всего и в открытом доступе можно много найти. Я что-то по тестированию находил и читал. Но тема такая, что чтобы с этим нормально работать и нормально это изучать, в питоне надо более-менее свободно плавать.
Суть такая: у меня есть два неотсортированных (если это важно) словаря, типа таких:
{1: "hui", 3: "pizda", 2: "vzxcv", 62634: "fsfs", 4231: "fasfscv"} - в этом словаре элементов больше
{"vzxcv": "tri", "hui": "odin", "pizda": "dva"}
Мне нужно взять ключи из первого и подкинуть к ним значения из второго, если соответственно значения первого и ключи второго совпадают, короче получается как будто такой словарик, чтобы по итогу я получил:
{1: "odin", 2: "dva", 3: "tri", 62634: "fsfs", 4231: "fasfscv"}
Как такое провернуть?
Ну смотри, на примере двух словарей с одним элементом:
{1: "hui}
{"hui": "odin"}
Из этого нужно сделать {1: "odin"}.
Только в словаре элементов много, и они не отсортированы.
Дядя, по-моему он не то что тебе надо сделал. Там же получается словарь:
{1: 'odin', 3: 'dva', 2: 'tri', 62634: 'fsfs', 4231: 'fasfscv'}
Это же не то что тебе надо
Как выполнить эту задачу в лоб я думаю ты сам знаешь. Сделать её элегантно, мне кажется, не получится
Питон не может прочитать значения во втором словаре, и понять что там написано, для него это просто строки с набором символов. Соответственно, если порядок там у тебя даже не задом наперёд, а просто вразнобой то хуй ты их как автоматизированно присвоишь, только вручную
Типа
sсловарь_1[1] = словарь_2["hui"]
Но мб меня поправят
>>13186
https://ideone.com/r7ZuPe
По-моему, это всё же анон обосрался с сочинением примера, а мой результат как раз правильный, поэтому отличается. Или я что-то совсем не понимаю.
Анончик, в твоем решении перепутаны подстановки:
2: 'tri', 3: 'dva',
Надо-то
2: 'dva', 3: 'tri',
Да надо бы сразу скинуть как оно там есть, но там наверное какая-то секретная инфа
Просто глядя именно на пример с написанными тут словарями, не представляя, как оно там должно выглядеть в реальных словарях с которыми он работает, то должен получиться такой результат:
>{1: "odin", 2: "dva", 3: "tri", 62634: "fsfs", 4231: "fasfscv"}
С вот этими двумя словарями
>{1: "hui", 3: "pizda", 2: "vzxcv", 62634: "fsfs", 4231: "fasfscv"}
>{"vzxcv": "tri", "hui": "odin", "pizda": "dva"}
Такого результата нельзя добиться никак кроме как топорным методом
У тебя все правильно. В примере ошибка
Я не оп, но понял что ему надо - заменить значения первого словаря на значения из второго, если это самое значение из первого словаря является ключом во втором. Ты молодец
Написал бы но у вас все фломастеры засохли
Блядь, какой же я тупой. Да анон, ты прав, а я обосрался в примере, извини.
Сейчас попробовал поиграть с твоим однострочником, чтобы понять, как оно работает нихуя не понял. А как мне его поменять, чтобы например не добавлять элементы, для которых нет значения во втором списке? Ну типа
>{1: "hui", 3: "pizda", 2: "vzxcv", 62634: "fsfs", 4231: "fasfscv"}
>{"vzxcv": "dva", "hui": "odin", "pizda": "tri"}
>{1: "odin", 2: "dva", 3: "tri"}
Интуитивно кажется, что надо просто убрать часть с else, но мне тогда интерпретатор сообщает о неверном синтаксисе.
Иф передвигаешь в конец и без элс.
Вот страница,где собираю ссылки : https://sponsr.ru/hobbytalks
Вот как выглядит код кнопки: <a href="" id="show-more" class="btn btn-small mb25">Показать еще</a>
Ну и ков стадии придумывания если надо: https://pastebin.com/pqkWnq07
Открывай дебагер в браузере и смотри что происходит когда эту кнопку тыцаеш.
Скорее всего там жаваскрипт грузит какую-то херню с данными.
Если так то добавляешь еще один гет и парсишь json или что там пришло.
вкот
Очереди
Хочу вручную рендерить формы для создания моделей через
{% for field in form.visible_fields %}
Можно ли так сделать, чтобы в зависимости от типа поля, к нему применялся отдельный css-класс?
К примеру, если input="text", то применяется класс .nice-text-field. Если input="checkbox", то применяется класс .nice-checkbox-fields.
По началу хотел использовать готовые библиотеки вроде бутсрапа или джанго криспи формс, но сейчас стало интересно, возможно ли вообще это сделать?
Не сталкивался с необходимостью делать цветной текст в консоли
>винду
Вот здесь ты что-то не то делаешь. Другая версия винды?
Питон не сам красит, он использует ANSI-соманды, escape-коды, которые управляют терминалом, дают команду поменять цвет курсора или фона.
При этом они используют табличные цвета. Я к тому, что проблема скорее всего в терминале, а не питоне. В том терминале-консоле, который ты используешь, видимо другие табличные цвета. Надо настройки соответствующие смотреть.
Погугли может на тему "windows console color saturation".
Я виндой не пользуюсь, не знаю.
Например, есть цикл в функции:
def counter(list1):
__for i in list1:
____if condition1:
______continue:
____else:
______counter(list1)
Вопрос в чем - перед тем как вызвать рекурсию, мне надо удалить один элемент из list1.
Вопрос - на каждой итерации рекурсии элемент будет удаляться из оригинального list1? Или там создаются копии и они уже будут резаться?
Точно. Как все просто.
Будет, но ты обсерешься с итерацией во время мутации списка, так что скорее всего результат будет не тем, что ты ожидаешь.
Хорошо, посмотрю. Спасибо за развернутый ответ.
Я криптохуйло, решил потихоньку начать вкатываться в автоматизацию своей деятельности потому что это сочно и полезно.
https://www.codepile.net/pile/wBJWkMvE
Вот смотрите этот кусок кода в принципе делает то, что я хочу: генерирует етн адреса в нужном мне количестве, и выгружает пару { адрес : приватник} в файлик, с которым я дальше собираюсь работать.
Но у меня какое-то чувство что код просто даунский нереально, хотя и работает.
Выгрузка получается в формате https://www.codepile.net/pile/V6P2VXx3 (только значения разные в каждой строке настоящие)
Вопросы:
1)можно ли тут как-то получать дикт{адрес: ключ} минуя вот это разбиение на два листа и потом мердж их в словарь выглядит просто ебано как-то
2) Как красиво сделать жсон, чтобы не просто пара значений была, а, например:
[
{
addres: key_1
pkey: value_1
},
{
addres: key_2
pkey: value_2
},
....
]
Вопрос 2. https://www.codepile.net/pile/OX3WJrX3
вот тут я хочу в строку "to" : "single_test_reciver" в значение синглтестресивер из моего джосона распаковывать кей вэлью и таким образом прокидывать транзакции на столько адресов, сколько будет в джейсоне ( потому что это единственное, что будет отличаться между транзакцией на 1 адрес и на 10)
А эта хуйня начинает критовать и ругаться. Я уже и лист в тупл конвертил и пробовал только кеи из словаря пасовать, всё равно хуй.
Насрал пиздец но надеюсь кто-то подскажет я в питоне 5 дней убил на эту хуйню весь день сегодня
Поправка в последней ссылке: def send_in_polygon(*args)
Тут она никаких аргументов не просит, работает вот так def send_in_polygon()
А агрс это то, что я пытаюсь сделать.
Ты вообе нахуевертил там лишнего.
https://ideone.com/USJXWL
Алсо, жсон можно дампить прямо в файл, без конвертации в строку.
Это ж не то.
Должно быть:
0 : huy
1 : pizda
2 : jigurda
3 : govno
Т.е это вложенный цикл на 2 переменных и ты там все равно приходишь к копрехеншену какому-то на два значения, как я собрал в словарь. Но я понял мысль что словарь нах не нужен был.
Ооо ахуенно то что хотел. но значения все равно должны быть разные в парах вот так нагляднее наверное
https://www.codepile.net/pile/yDxo9ZWL
Т.е вот такое
acct : private_key
Да, спасибо. Только я все равно не осилил сматчить значения в парах без зипа. Но отформатировалось как надо
pairs = [{'addr': i, 'pkey': j } for i, j in zip(addreses, pkeys)]
Еще бы распокавать теперь эти адреса ебаные
Cпс
Придет со временем. Если хоть как-то решается, то уже неплохо.
Вот там прям лампочкой подсвечено, где ты обосрался.
А вообще, делай в один цикл, там два не нужно.
А в чём я там обосрался? Как ещё добавить это значение из колонки начальное сальдо?
Любое решение является решением. Если код выполняет задачу с заданными критериями, это является решением. Со временем научишься лучше, короткий код не панацея, главное чтоб он был удобным. Удобный значит легкий в понимании и гибкий в модификации.
Мне лично нравился саблайм текс 3, в момент запускается, не перегружен интерфейсом. Вот я и думаю, ставить третью или четвертую версию...
что делать если я на хую вертел оопешное паскудство
в и тоже время заебался пробрасывать всю хуйню во вложенные функции
прокидывать все говно в виде обжекта? или юзать жлобал?
На степике есть серия курсов "Поколение Python": для начинающих, продвинутых и профессионалов, обещают еще курс по ООП, паттернам и тестированию. Для ознакомления с Питоном самое то, рассматриваются базовые возможности языка. Практики достаточно много, благодаря чему хорошо закрепляется материал.
топ курсы? бесплатно?
Anal Drilling
Думал, если 10<x<20, то будет else срабатывать
А оно не срабатывает
А есть какая-то возможность заставить срабатывать else? Или как-то переписать такую логику?
Если if выдал True, то все связанные с ним elif'ы и else'ы будут скипнуты. Чтобы else выполнялся если 10 < x < 20, его нужно засунуть под первый if
Тоесть вот так
if num > 10:
if num > 20:
print('aaa')
else:
print('bbb')
Сосака спиздила мои пробелы, но ты всё равно понял кароч
Пикрилейтед.
Есть список списков, например.
[[1], [0, 2], [1], [4], [3]]
Здесь, каждый индекс элемента списка (подсписок) - вершина графа, а значение(я) - ребро(а) к прочим вершинам.
Как сделать так, чтобы все связанные вершины, в том числе через другие вершины, сформировалли группу?
Т.е. сейчас тут 2 группы 0-1-2 и 3-4.
Граф может быть весьма разветвлённый с сотнями вершин и кучей ребер. Сейчас простейший случай.
Спасибо, гляну.
не дрочи голову, накатывай графовые либы и ебись с ними, там уже все включено все просто и охуенно.
если тебе это сказал сделать ебанутый маразматичный дед из твоего пту - то шли его нахуй.
запускаю vue как фронтенд для django(rest) но почему-то все страницы дублируют контент(<template> как я понял) 3 раза. В чем может быть проблема и как решить?
> leetcode
ну и нахуя? ты понимаешь что это дрочь без задач?
который показывает что ты настолько тупой, что у тебя нет идей для пета, что ты готов абсолютно любой ненужной хуетой заниматься забесплатно
я бы из тебя сделал вечного джуна и наблюдал как ты жрешь говно годами
нейтральный горизонтальный рост, ага
Нормальная задача. На подумать, как вот это красиво и внятно реализовать, эффективно. Очень полезно для мозгов регулярно что-то прорешивать.
>накатывай графовые либы и ебись с ними, там уже все включено все просто и охуенно.
Очевидно, что ты никогда не работал ни с одной "графовой либой", ты чисто абстрактно рассуждаешь типа для всего есть решение.
Между тем как задача очень простая, если вершин умеренно много. Если скажем 100, то вообще самые примитивные решения быстро работают. Если десятки тысяч, то надо чуть вдумчиво решать.
прорешивай свое повышение до архитектора
или заводи пет полезный для общества, так чтобы он стрельнул в стартап
а сейчас ты просто тупой ебливый додик, который дрочит ради нихуя, чтобы хоть как то заюзать ннахуй неусравшиеся, уже угасающие, знания от ВО
если ты кусок джунского или мидового или сеньерского дерьма - и кроме унылых СКУЛЕПАСКУДНЫХ тикетов ничего не видишь в своей никчемной жизни - то эта хуета тебя не спасет от нескончаемой фрустрации.
ебало офни
Любой обход графа
На проекте челики почему-то решили что "докер нинужон" и для локального поднятия сервака ты должен сам ручками поднять базу, реббит и селери. Естественно каждый раз при обновлении мастер-ветки все зависимости в pipenv надо переустанавливать вручную чтобы быть увереным что они актуальны. с pip install -r requirements.txt это было элементарно, а как быть с pipenv?
Чаво? Ты про статическую и проверки с mypy?
Когда только начинал говнокодить, думал, что динамическая типизация охуенно, не надо лишний код писать. Когда подрос, понял, что иметь перед глазами тип очень удобно, так что пользуюсь просто аннотацией.
Хз, как-то не парюсь по этому поводу. Просто меньше строчек в коде, ну да чуть запутанней, но это наталкивает на написание самостоятельных и коротких функций.
Ошибки сложнее предсказывать, да. Для диктов приходится городить что-то типа if data and data.get("kok"). С другой стороны нагляднее, а не где-то в жопе с обработчиком эксепшонов.
Ну блять, мне не выбирать знаешь ли, сейчас ситуация в Рашке с работой в целом "не очень". Сейчас пилю свой докер-композ, предложу на встрече, если не зайдет уберу из гита и буду сам юзать. Но пока надо думат ькак быт ьс pipenv
> Как обосновали?
убунтошлюхи должны страдать, АРЧЕБ-ГИ СИДЯТ ОНЛИ НА БЛИДИНК ЕЖ, и обновляют все зависимости в самой ОС каждый вечер
чтобы потом через дыру дауны с ВО из стобальной помойки не слили весь юзербейс сука.
Приходилось когда-нибудь самому писать openapi.json для сваггера?
Что такое слои в докер-образе? Чем отличается command от entrypoint?
На проекте:
Пук, ну сваггера у нас пока нет, в общем можно конечно его добавить но чет руки не доходят, да и не нужон он в общем-то, сами ручками запросы гоняем.
Докер? А мы его чет не запилили тут. Ну ты руками базу там подними и все прочее, нормально же.
Зачем базу в докер? Его поднял один раз и всё. А всякие свагеры и опенапи кроме дыр в безопасности хз для чего, если это не галера на аутсорсе, а свой проект. Док в постмане.
И вообще, вопросы для сисадмина, а не разработчика. Так пусть платят как сисадмину (непомерно дохуя) и нагрузку соответствующую.
>Использовали в разработке контейнеризацию? Что можете сказать о докере?
>Мням мням пук-среньк нинужно
>Они ебанутые? Как обосновали?
Представь, что у тебя проект крутится на BSD. Вот и всё.
>>15771
>Докер? А мы его чет не запилили тут. Ну ты руками базу там подними и все прочее, нормально же.
Докер штука ограниченного применения, очень удобная для своих целей, но часто его пытаются притыкать всюду, где надо и не надо.
Например для быстрой установки чего-то на боевые сервера скорее будут Ansible использовать, чем докер-сборки.
Если тебе надо работать с базой, то скорее это должен быть отдельный сервер, отдельная машина. И для этого докер не нужен.
Это только для отладки или для мелких нагрузок разумно локально базы в докерах крутить. Чтобы быстро поднимать разные версии, переключаться с одной на другую и т.п.
Сам подумай, тебе не только сервер баз поднимать надо, но и сами данные подгружать. А для данных докер уже не очень предназначен.
> бек
> локальная разработка
Я даже питон не ставил в локалку, разработка на виртуалке убунты по ssh и гите сидит.
Пытаюсь запилить сохранение cypher-скрипта в xml файл.
Для этого я вручную заменяю неудобные символы внутри текста там где нужно, потом собираю xml-дерево, добавляю туда строку и сохраняю в файл. Однако, почему-то в финальном xml файле все символы типа ">" и "&" заменены на коды, из-за чего ломается формат скрипта. Как мне сохранить данные в xml без замены символов и сохранением структуру xml-тегов??
Листиг моего куска кода: https://dumpz.org/ard855sMF9Z9
Потому что чужой микросервис, которому я буду скармливать этот файл, жрёт текст внутри тега as is, и строка
> (A)-[:relation]->(B)
не скомпилируется в сайфер, в отличии от
> (A)-[:relation]->(B)
поэтому я не хочу заменять абсолютно все символы, а только лишь те, которые встречаются ранее вышеописанной строки.
Я бы тогда вообе не возился с реальным хмл, а крафтил его вручную, выглядит простенько.
Я не формошлеп, а бек это не только круды.
> выглядит простенько
Это я актуальный фрагмент только вырезал, там на самом деле по соседству ещё несколько вложенных иерархий с ПД, которые я офк доксить тут не стану.
Но в итоге накостылил себе решение, подставив вместо скрипта плейсхолдер, который после крафта структуры заменяю обычным str.replace() на мой текст как есть.
IEEE 754
просто выполняй задачу, а не дрочись
docker-compose этот ваш конечно удобный базару нет но как мне дебажить через Pycharm его? В частности celery worker. Есть какие-то туторы в инете но там хуета непонятная, либо ошибки падают либо тупо ничего не происходит (брейкпоинты игнорятся)
У меня Pycharm Professional если что
Несколько разных асинхронных задач (либо несколько тредов - пох вообще) останавливают свое исполнение на строчке вроде (в случае асинхронки тут будет await очевидно)
if Condition():
...
и собственно ждут наступления этого Condition, как только другой тред или другая асинхронная задача устанавливают его в true, задача продолжает исполняться дальше
тредпул пауз - ты блядь доку хоть открой чучело
Я кучу времени убил просто на то, чтобы в админке завести формочку для добавления пользователя, наконец смог откопать, что там нужно прописывать какие-то ФИЛДСЕТЫ НАХУЙ, чтобы появились поля
Вообщя вся эта админка выглядит как какой-то пиздец, макароны ебучие, в которых кодом описывается темплейт
Одна из самых сильных сторон Джанги это ее админка
Одна из самых ебучих сторон Джанги это ее админка
Используй или примитив Event, или очереди - Queue.
И то, и другое поддерживается как в многопотоке, так и в asyncio, но примитивы разные, конечно.
нахуй ты туда полез вообще?
для мелочи фласка
для йобы фастапи
для душных пидорасов формошлепов жанга
Записался на курсы за счёт конторы, разумеется, свои деньги меня б жаба задушила отдавать, а там штанга.
пиздец земля пухом тебе братишка
в следующий раз будешь знать как заниматься хуйней и пройобывать свой тайм и ресурсы компании на гречневые курсы
> там регексовая параша, нужно ждать душных низушных додиков которые любят играть в эту ебищную миниигру
Но-но, хуйло, тут есть люди из перла, где почти любая проблема решается регекспом. То что ты в них не умеешь и искаробочный питоний ре каличный это не проблема регекспов.
>антипаттерн
Человек, 10 лет не могущий вкатиться в индустрию, что-то рассуждает о ее практиках, спешите видеть!
Так и вижу на собеседовании на джуна
>знакома ли вам %любая непонятная ему технология%
>это антипаттерн, все кто ею пользуется душные низушные додики
Я возможно что-то не понимаю, а где сам русский текст-то? В исходниках игры лежит? Скрипт открывает какой-то файл и считывает данные оттуда.
мпмм
шнобель, возвращайся в курьеротред, тут тебе не место.
Вот с Фронт Эндом все понятно - учишь там HTML, CSS, JS, TS, React, Redux и прочую хуйню, потом пишешь сайты, раскрашиваешь кнопки, делаешь линки кликабельными. А для чего Питон используется и что учить к Питону? Я так понимаю нельзя просто выучить Питон и уже только с ним одним искать работу? Потому что во фронте вон как дохуя всего надо. Собственно что с Питоном можно делать? Что делаете конкретно вы? Объясните на пальцах, пожалуйста.
Я кстати уже скачал книжку Python Crash Course, материалы собираюсь все читать на англюсике, но пока хочу пройти только эту книжку, остальное уже копать после. Спасибо.
ЯП всегда учится в рамках стека технологий которых планируешь использовать. Для питониста есть два три стула:
Заднеприводный (бекенд): базы данных, веб
Мамкин умник: машоб, датасаенс
QA-шлюха: автотесты
А что из этого является самым профитным вариантом? В датасаенс надо же матан знать? А то его я не знаю, датасаенс для меня точно закрыт. Для бэка надо знать фронт? И что за QA - Quality Assurance? Чем конкретно ты занимаешься?
> React, Redux
говножор плз
>>17590
> А то его я не знаю
это не имеет значения, потому что ты тупой
>>2416493 →
>>17597
> Что не так?
ты ленивый
>>17606
> всякие скриптики и прочие, но их не так много
весь девопс на питоне
>регэкспы антипаттерн
Смотрю, быстро ты осмелел после того, как тут регэкспами (!) по перформансу (!!) твой говнокод уделали несколько тредов назад.
Не в защиту злоупотребления ре, есличо.
1<=x<=10 или x in range(1, 11)
А как сделать это для двух и более переменных?
and
чем
>for a in b:
>____#sosi huy
>else:
>____print('ne sosi huy')
отличается от
>for a in b:
>____#sosi huy
>print('ne sosi huy')
как сдетектить дегенерата который нихуя не знает сам, но ему очень нужно хотя бы на оранжевом сайте поларпить из-за абсолютной фрустрации ирл? он всегда отвечает на вопросы
>я то знаю пук среньк но те не скажу ыы)))
тебя и не спрашивали долбаеб, молчи нах пока знающие дяди объясняют человеку
удвою, тоже всегда ору с этого дегенерата
работу себе найди додик
вместо книжек смотри туторы
потом ставь свои цели и гугли как решить конкретно твою задачу
https://sites.google.com/view/pypry/
Маленыш, Папка тебе одолжение делает а ты тявкаешь. Когда дорастешь до меня, тогда и сможешь по статусу че-то возразить.
типа я понимаю что это параметры аргумента, но не понимаю как они правильно пишутся. во всех примерах пишут через запятую
def func(a, /) или def func(, a)
и чо нах? какой параметр к какому аргументу относится? или эти параметры и есть аргументы сами по себе или чо?
Прост я подключил дефолтную бд в облаке типа и к ней коннектится долго чет, думал чтоб для тестов обычная скулайт использовалась.
>def func(a, /)
https://docs.python.org/3/tutorial/controlflow.html#special-parameters
>def func(, a)
это вообще синтаксически неверно, разве нет?
Попробуй запринтить os.path.join(BASE_DIR, 'db.sqlite3') и посмотреть, совпадает ли оно с реальным местоположением, м?
Ну так я и говорю, что совпадает.
Правда он пишет
OperationalError: connection to server at "containers-us-west-85.railway.app" (34.127.94.129), port 7923 failed: FATAL: database "Правильный путь" does not exist
Мб это он в облаке основной бд че-то пытается искать?
>Мб это он в облаке основной бд че-то пытается искать?
ага
Может как вариант при запуске тестов перезаписывай словарь DATABASES['default']? Типа так:
if 'test' in sys.argv: #ну или как ты там тесты запускаешь
____DATABASES['default'] = {
________'ENGINE': 'django.db.backends.sqlite3',
________'NAME': os.path.join(BASE_DIR, 'sqlite3'),
____}
Хотя костыль конечно...
Сработало, спс!
Пиздец язык джанго всё меньше и меньше похож на питон
Если контора норм им поебать как ты задачу сделаешь. Если это душные имбецилы, то они захотят чтоб ты вручную алгоритм написал с полными тестами, а ещё в маркетплейс выложил.
>on the interview:
>are you familiar with web development, frameworks, linear algebra, machine learning, statistic analysis, any assembly language?
>please solve this equation from astrophysics
>on the job:
>center div pls
> а я отвечу "from collections import Counter"
Это не рабочий код, ты не смог предоставить решение.
При этом решение может быть
sorted(string1) == sorted(string2)
то есть у тебя ещё очевидное переусложнение.
Двачую. За 2 года код ни разу не запускал локально. Прогаю сложную распределёную систему, которую тупо невозможно поднять локально. Нужны десятки гигов оперативы чтобы поднять вмки и накатить туда образ, а билдить его ещё несколько часов надо перед этим. Поэтому вся разработка и прогоны только через пулреквесты и ci. Локально питоном пользовался только чтобы линтер установить и однострочкини в проверить
>переусложнение
У тебя сложность по времени O(n log n), да ещё и sorted потребует памяти в размерах O(|string_1| + |string_2|) на новые списки, при том, что задача решается за линейное время и с O(размер алфавита) памятью.
Согласен, но ведь сет и там и там. А разница есть. Во втором стейтменте в итоге на 2000 больше элементов чем в первом.
лол ивправду
на белую ёбань выживагющую глаза - смотреть мерзко
а разница в том что ловер увеличивает гомогенность датасета
таким образом у тебя случается больше дублей в первом варианте
если тебе я щас стало не ясно то ты скорее всего тян и код не твое, попробуй филасасафию или психолохию.
set() во втором случае не удаляет дубликаты т.к. 'Word' != 'word'
а в первом случае lower() преобразует ['Word', 'word'] в ['word', 'word'], а потом set() удаляет дубликаты
В свое время можно было прикупить сотни гигабайт ддр3, даже моя десктопная мать десятлиетней давности поддерживает 96 гиг.
>даже моя десктопная мать десятлиетней давности поддерживает 96 гиг.
Не всякая даже серверная мать держит больше 64 Гб. То есть вот если тебе нужна машина с большой памятью, на это надо смотреть. Конечно, есть и такие, которые террабайты поддерживают.
Если у тебя линукс, то большой памяти под докер не нужно, всё работает на 8 гб даже. Если поднимать кучу полноценных виртуалок, то больше понадобится.
>>18647
>Двачую. За 2 года код ни разу не запускал локально. Прогаю сложную распределёную систему, которую тупо невозможно поднять локально.
Если ты разрабатываешь на сервере, то докер намного нужнее становится. Докер это в первую очередь инструмент для изоляции, чтобы твоя работа не мешала другим, не засирала файловую систему, сетевые порты и т.п., не было конфликтов зависимостей, версий-занятых портов и т.п. Поэтому как раз на сервере больше потребность.
А вот для боевого применения не очень надо, там предполагается, что у тебя нет бардака. Хотя при микросервисном подходе тоже полезно, например легко несколько инстансов одного сервиса поднимать.
Как ещё можно улучшить? Читал что нет смысла в asyncio разделять async воркеров (просто таски в asyncio.gather) по отдельным тредам, типа и так норм, а некоторые вообще не советуют так делать.
Сервис просто делает запросы туда-сюда, вычислений нет, кроме валидации в pydantic, чтение бд/редис и всяких параметрах. Даже логгирование в отдельный тред сделал. Сейчас работает отлично под нагрузкой, хочу его увеличить.
Мильен рпс в секунду не надо, забанят. Больше надежность интересует, т.к использую очереди.
Это не сервер.
функция взять конец месяца, повторить: если рабочий вернуть, взять предыдущий день
И как же ты определишь "рабочий" день?
Больше интересуют не запросы как таковые, а производительность тасков. В среднем пока используется 30-40 одновременных тасков, в будущем может придется увеличивать. В тестах на примерно 1000 и выше таких воркерах замечал падение производительности, т.е очередь разгребалась медленней. В этом плане интересует скорость и как найти оптимальное количество.
Все используемые либы асинхронные.
Пидора ответ
Я pip обновил глобально до новый версии, а в пайчарме когда создаю новый проект в новом виртуальном окружении pip старый, да еще пишет мне постоянно не хотите ли обновиться, зараза ебаная.
> зараза ебаная
жрешь дерьмо - пеняй на себя каложора.
девы пчурмодауны тебе ничего не должны
у них справка.
> Мне сказали
и ты поверил этим профнепригодным пиздорылым даунам? ну страдай хуле, ты это заслужил.
Наверное ты послушал "опытных" спецов, иначе говоря, старых пердунов, которые не могут осилить новую универсальную иде. Наверное, на джанге пишут ещё и с питоном2. Неудивительно что там пип старый, специально под них ничего не обновляют
need help, аноны.
Обновил убунту, перестал работать wxpython, пишет
>Unable to access the X Display, is $DISPLAY set properly?
>echo $DISPLAY
>wayland-0
при этом wxpython собирал с нуля, не из кеша. Как с этим бороться и возможно ли с этим бороться?
Гуглить пробовал, но не очень понятно. Пишут, что эта ошибка из-за того, что wx старый и хочет X11 дисплей, а не Wayland. Можно ли запустить под Wayland, без отката назад на X11?
Вроде какие-то упоминания есть, что это дело должно работать. Но это не точно
need help, аноны.
Обновил убунту, перестал работать wxpython, пишет
>Unable to access the X Display, is $DISPLAY set properly?
>echo $DISPLAY
>wayland-0
при этом wxpython собирал с нуля, не из кеша. Как с этим бороться и возможно ли с этим бороться?
Гуглить пробовал, но не очень понятно. Пишут, что эта ошибка из-за того, что wx старый и хочет X11 дисплей, а не Wayland. Можно ли запустить под Wayland, без отката назад на X11?
Вроде какие-то упоминания есть, что это дело должно работать. Но это не точно
Походу всё проще, надо просто чтобы переменная
DISPLAY имела значение что-то вроде ":0"
но ХЗ вообще с этой x-магией
А кто-нибудь может объяснить, почему убунта выставляет в DISPLAY какое-то левое значение, вроде wayland-0?
> достаточно просто разобраться в чужом коде, а потом повторить алгоритм
Только так и никак иначе. В программировании всюду используют оптимальные алгоритмы и библиотеки. Самодеятельность никому не нужна. Задачи решаются самостоятельно только для лучшего понимания взаимодействия внутри кода.
>ты рожден чтобы страдать.
мы все рождены для этого, без страданий жизнь не жизнь
> wayland
в итоге не выдержав и сутки отключил этот Wayland нафиг, и другим анонам советую. Переменная DISPLAY это ещё цветочки, ещё куча багов вскрыласть неприятных. Как минимум три штуки ещё бага очень заметных.
Короче, аноны, если обновите линукс и там будет Wayland, от которого будете плеваться, поптобуйте переключить на XOrg
гуглите utuntu wayland to xorg
Надо всего лишь в файле
/etc/gdm3/custom.conf
раскомментировать строку
WaylandEnable=false
она или закомментирована, или там стоит true
после чего перезапустить компьютер
xorg работает намного стабильнее.
Держу в курсе, да.
Я на жирном проде тестирую мне можно, не локалке. Это код у меня кривой с жсонами, пидантиком и прочими вещичками. Не голые запросы.
Я просто только пару месяцев назад в асинкио вкатился. Не у кого спросить как надо, а в гугле инфы не так много как хотелось бы.
> мы все рождены для этого
нет, только девочки-дебилки вроде тебя
у которых при обновлении будет вейленд
у разуняшек-питоняшек стоит арчик и работает идеально. ворнинги аура это ДРУГОЕ
Ни с каким, хули вы претесь в бидон как в язык для веба?
ВСЕ языки можно использовать в той или иной мере для веба, это галочка для его приверженцев.
А чё ты про веб заговорил? Для других направлений фреймворки не используются?
Тогда спрашивай, в каких направлениях работу легче найти, кроме дефолтного веба, а не про фреймворки хз к чему. А то как-то непоследовательно получается.
Не хочет конкуренции, забей на него. Смотри по вакансиям какие. В питоне жирная часть это веб.
Лол, конкуренции. Я никогда не занимался вебом, только из-под палки, потому что надо сделать веб-морду для какого-то инструмента. И то это был по большей части пхп, потому что там можно искаропки такую хуйню сделать, не подключая сто гигабайт пакетов.
Какие есть крупные проекты на бидоне? Задроченный инстаграм? Не факт, что он там ещё есть.
Сам по себе асинкио достаточно быстрый, 1000 таск на так себе ядро очень шустро работают. Это вообще не объём.
У тебя скорее всего не количество таск стопорит, а то, что внутри них. Они или тяжеловесные, или неоптимальные.
Эти воркеры парсят очереди в редисе через while true. Если есть набор задач - делают пока очередь не кончится. Если нет - ждут 1с и пытаются опросить снова.
Не знаю насколько оптимально это всё.
Просто немного смущает что один тред делает так много, когда остальные ресурсы сервера просто простаивают. Пока распределил евентлупы между ядрами. Сами корутины полностью независимы друг от друга и не имеют общих ресурсов кроме редиса.
Спрашивай, может подскажу.
Серверная сторона EVE online написана на питоне
не понимаю, что тот анон имел в виду
в моём понимании "морда", это веб-интерфейс к существующей программе, пхп для этого совсем не предназначен.
А вот в питону морды приделываются на ура, или фласк для этого используют, или aiohttp очень удобен, там веб можно подключить так, что это не ломает основной функционал.
Сейчас фронт пилят на жс отдельно от бэка.
Получается остаётся только Data Sience? Но вряд ли миру нужны analитики в таком же количестве, как в первых двух сферах, т.е. вакансий меньше = вкат сложнее.
В чём я не прав? В каком направлении тогда идти? Нахуй, что ли?
Ищи вакансии и требования. Без опыта у тебя вообще не должно быть предпочтений. Либо идешь туда куда берут и набираешь опыт, либо идешь нахуй.
>но при этом мне не хотелось бы работать ни в бэке, ни в тестировании.
Ты написал чего ты не хочешь или не можешь. А можешь сформулировать, какое направление тебе интересно? Из этого уже можно думать, какой язык подбирать. Возможно это будет не питон.
Сидеть на жопе крутить деньги и при этом работать в области с максимум чсв
>Либо идешь туда куда берут и набираешь опыт, либо идешь нахуй
Спасибо за ценный поджопник, кроме шуток
>>20456
>А можешь сформулировать
не могу(
Легче пойти от противного. Насчёт QA я погорячился, но делать сайтики мне бы не хотелось
>какое направление тебе интересно?
В первую очередь мне интересно то, чем не занимается большинство - отсюда и такое отношение к вебу а не из-за конкуренции вкатунов, ну честно
Так-то мне интересны и девопсеры, и аналитики, и разработка ПО.
Иногда ещё накрывает интересом к разработке игор или нейронкам, но потом я начинаю себя накручивать, что это у меня молодость так играет и я охладеваю...
> разработке игор или нейронкам
я вот как раз геймдевелопер и датасаентист - идеальное, дополняющее друг друга сочетание - я кайфую, чего и тебе (трясущаяся лягушка) желаю (нет)
В беке тебя никто сайты пилить не будет просить, этим занимается фронт. Большую часть времени будешь ебаться с оптимизацией запросов к бд/апи плюс это не обязательно именно сайты, ещё и сервисы/микросервисы. Потом дорасти до девопса и иметь дело уже с инфраструктурой всего этого серверного говна, куда что втыкать и разворачивать, т.к кодовая часть уже будет чисто шаблонной.
Я вообще в веб вкатился в 26, до этого конечно прогал, но не так много и были это в основном скрипты и плк, а до этого на заводе вообще провода крутил, станки перебирал, да чего только не делал.
Гвоздями к стулу тебя никто не приколачивает, опыт спокойно переносится в другие языки и должности. В конце концов, питон это просто инструмент, знать и учить надо совсем другие вещи.
Хочешь в геймдев - иди в геймдев. Хочешь нейро - иди в нейро. Там такие же люди работают, а не какие-то уникальные личности со сверхспособностями. Просто они продолжали упорно долбить сабж, даже если она временами может подбешивать и вводить в уныние.
Позитивно у тебя всё описано, но
>Хочешь в геймдев - иди в геймдев. Хочешь нейро - иди в нейро
Ты так говоришь, будто для того чтобы пойти в любую из этих областей погромирования (или какую-то третью) нужно просто выучить базу языка - синтаксис, алгоритмы, особенности, хуё-моё - по курсу за пару месяцев максимум. А потом, типа, иди куда глаза глядят - сядешь и научишься. Но ведь там уже на входе требуют горку разных хуёвин, актуальных именно в этой сфере, по которым тоже нужно отдельно готовиться именно для этой сферы. И это если не брать в расчёт опыт. Я, конечно, был бы рад ошибаться, но...
Имеет ли какую-то практическую пользу разбивание внутренностей большой функции на ещё несколько мелких, которые вызываются внутри большой?
Сам я всегда пишу огромные задроченные функции целиком, но часто наблюдаю, как погромисты с бОльшим опытом делят большую функцию на кусочки, и эти кусочки используют когда надо. От этого есть какая-то принципиальная польза, или оно делается чисто для читабельности/понимаемости кода? Я мудак, если не дроблю свои функции?
шнобель, спок.
Они это делают чтобы избежать лишней связности скорее. Лепить объёмные функции / классы значит закладывать фундамент для проблем.
Для вкатуна/джуна разбивать обязательно, приучает мыслить в нужном русле. Как наберёшься опыта, уже сам научишься определять, где оно нужно, где не нужно, а где просто вредно.
Ара ара, только сейчас это понял? Питон можно выучить за 3 дня, без шуток.
Правда знания архитектуры программ, библиотек, данных, 100500 систем внутри пека и методов работы со всей этой необъятной системой сюда не входят, поэтому зная синтаксис ты ничего не напишешь. И курсы не помогут.
Нужно брать узкую область и долго набивать себе лоб шишками набираясь опыта.
Именно поэтому везде пишут 1-3 года опыта. Прогер без пары лет хотя бы опыта кодинга над реальными задачами это буквально читатель гугла, он бесполезен.
Он говорит, что язык это инструмент, а учить надо другие вещи.
Язык сам по себе только в байтоёбских задачах бывает, и то, там надо хорошо понимать, как байтоёбство работает, это тоже уровень.
Ты на языке делаешь что-то. вот ты должен понимать, что и как ты делаешь, какие там проблемы, из-за чего, какими способами их можно решать и т.п.
>Ара ара, только сейчас это понял? Питон можно выучить за 3 дня, без шуток.
Нет, конечно. Ты можешь "выучить питон за три дня", если у тебя хороший бэкграунд на других языках, но после этого ты будешь писать на питоне как на си-джаве и т.п.
Но в принципе да, освоить нужный язык, если владеешь другими языками и предметной областью, можно быстро. Не так, чтобы вести проект, но так, чтобы работать, когда есть кому тебя ревьювить.
>Именно поэтому везде пишут 1-3 года опыта.
Это просто поле селект в форме ХХ. Там есть выбор, указать "без опыта", опыт "1-3 года", опыт "3-6 лет", и "свыше 6 лет".
Если указать "без опыта", то работодатель утонет в море резюме от вкатунов, подавляющее большинство которых ничего не умеют, они считают, что их на работе должны учить. А более-менее нормальные откликаться на вакансию не будут.
Зависит от вакансии. Можно спокойно без опыта пойти в небольшую уютненькую контору с небольшим зп.
Вкатуны же сразу метят в гугл и зарплату в 300к.
Вот пример: хотел автоматизировать процесс. Сначала через scrapy паршу магазин. Потом с помощью pillow немного меняю картинки. Потом немного работаю с текстом (перевод спаршенной информации). Затем это все заливаю по ssh на сервак.
Со своей структурой я конечно же обосрался (это все модули, отдельные папочки):
project
--scraper
--image_processing
--translation
--ssh
Естественно при попытке собрать это все в один пайплайн начинаются пляски с бубном в виде ModuleNotFound и прочей ебенью. Как правильно это все делать?
Я буду добавлять задание на главную страницу, которые будут выглядеть, как стикеры с текстом. Люди эти стикеры будут перетаскивать вправо или лево, в зависимости от выбранной стороны текст со стикера будет отправляться на почту правому или левому человеку. Такое на питоне возможно?
Да.
Да это понятно. Но тот же scrapy свою структуру проекта создаёт со своими скопами. Это как решаете?
Ну во первых, меньше состояний - больше производительность. Лучшая отлаживаемость, простые тесты, унификация кода. Да до кучи пользы.
Сам подумай. Что проще поддерживать - ебаную лапшу в одном классе или несколько простых функций в одном модуле?
Спасеб за разъяснение, добрый человек
Сап, с недавних пор решил вкатываться и уже возникли вопросы. Уже неделю мучаюсь с этой задачей ничего не могу придумать. Задали делать сервер на Flask-е, а вот получить json вообще ни в какую. Где я ошибся и туда ли я вообще направляюсь? Был бы рад если кто нибудь смог бы помочь.
Напиши сперва программу (без фласка) которая печатает
4 строчки json как на первой картинке. Запости сюда.
Через неделю зайду проверю
Насколько лучше/хуже
if a<b:
print()
if b<a
print()
чем
if a<b:
print()
else:
print()
С точки зрения возможных ошибок в реальных задачах. Первая проблема которую я вижу два одинаковых числа, и очевидным решением было бы добавить еще один блок с сообщением, на случай если будет равенство. А какие еще могут быть ошибки?
Ну блин, анончик, а загуглить что-то типа "how to return json flask" не пробовал?
Пример такой: на сайте есть пользователи, функционал работы с которыми вынесен в апп (регистрация, логин-логаут, персональная страница) и их сообщения, которые тоже в отдельном аппе. Теперь хочу на странице пользователя показывать все его сообщения.
1. Правильно ли такое разбиение на аппы?
2. Как это сделать? Без изменения аппа пользователей.
В реальной жизни это скорее всего как прикрил будет выглядеть.
А в твоих обеих вариантах плохо то что не обрабатывается вариант где a == b, на остальное как-то пох тащемта.
min я видел в решениях от других юзеров к прошлым задачкам. А если использовать только тот инструментарий который представили на этом и прошлых уроках?
Или это делается каким-то мастер-аппом, который подвязывает все индивидуальные вьюхи и шаблоны в одно?
> А какие еще могут быть ошибки?
В первом варианте у тебя фактически написано одно и то же условие два раза (a<b и b<a)
В реальной задаче если так написать через пол года придет
криворукий коллега и поправит первое условие, а второе поправить забудет.
И вы будете долго и мучительно искать косяк
Спасибо.
Есть еще неочевидный профит который проявляется
когда ты пытаешься такой код профайлить.
Профайлер тебе покажет сколько времени потрачено какой функцией.
Соответственно с удачно разбитыми функциями легче искать медленные места.
Есть сайт, на котором я хочу автоматизировать один процесс, а именно ввод строки в форму и отправку на сервер (много раз). Для этого нужно авторизоваться на этом сайте используя логин и пароль, но также там есть проверка на бота (гугл капча).
Использую питон в своем решении.
В идеале я вижу след.решение:
с помощью скрипта я вызываю что-то вроде popup-а браузера, где ручками авторизуюсь, выбираю галочку запомнить меня и нахожусь длительное время в системе. Данные авторизированного пользователя хранятся в каком-то подобии сессии в питоне (куки и локальное хранилище, в котором собственно находится уникальная строка от гкапчи). Таким образом, могу много раз посылать запросы на сервер.
Подскажите, как я могу это реализовать, с помощью чего или хотя бы как правильно нагуглить такое решение.
Пысы: пожалуйста, давайте без селениума. Селениум это план Б, если ничего больше не получится.
Решение стоит пару баксов за тыщу штук, подключаешь такой сервис. И да, "запомнить меня" и сохраняешь печеньки между запусками.
С селениумом в любом случае соснешь, тут нужен хедлесс браузер, да и ещё патченный, чтобы не палился. + желательно домашний айпи, а на из дц.
Мне не нужно автоматизировать вход. Мне нужно только автоматизировать ввод в форму и её отправку на серв. Я хочу, чтобы открывалось браузерное окно, я логинился и уникальные данные оставались у меня где-то в переменной(ых) для дальнейших запросов.
Моя проблема в том, что я не знаю, как создать такое браузерное окно для логина и как сохранить потом уникальные штуки в переменные, т.е. как из этого окна браузера передать их в код.
>Решение стоит пару баксов за тыщу штук, подключаешь такой сервис
Ну это мне не нужно, могу самостоятельно капчу пройти
>тут нужен хедлесс браузер, да и ещё патченный, чтобы не палился. + желательно домашний айпи, а на из дц.
Всё с домашнего компа будет, хедлесс же без интерфейса, с него можно как-то открыть окно с капчей и потом от его имени всё остальное делать?
Хедлесс можно запустить в обычном режиме, хз можно ли его потом спрятать. Смотри pyppeteer.
Но вообще рекомендую рассмотреть сервис, это в сто раз меньше ебли типа того что ты хочешь сделать. Просто грузишь страницу, отправляешь хуитку от рекапчи туда и через несколько секунд приходит результат, который просто обычным постом отправляешь.
Жесть. Документацию почитай, а это удали и сожги хард.
А есть альтернативы? Часто использую openpyxl и iter_rows(). Все чотко, но послушал бы про варианты.
Но как это сделать элегантно на питоне? На данный момент я:
перевожу число в строку
переворачиваю его
итерируюсь по нему в цикле for с шагом 3 и заполняю список тройками чисел
переворачиваю список
делаю join через точку
Самое васянское решение - добавь строчку sys.path.insert(0, os.getcwd()) в do_smt.py
Ты не понял, это код на проекте. Функцию давно юзают для вакуума. Но вакуума тут не вижу. Поэтому варианта 2:
а) Я че-то не понял про устройство постгри
б) Тут вакуума тупо нет и они обосрались
вроде в iml файле прописывается все, не? я прост очень давно не кодил, уже забыл.
Теперь начался раздел с операторами and, or, not. Их же можно буквально воспринимать. Зачем тогда городят всякие логические сложения-умножения. Или в будущем будет некое расширение правил, где это все понадобится?
Значит просто на будущее создать ассоциацию между and и умножением, or и сложением, etc;?
Ты что-то не то думаешь. Читай дальше, а не бегай по сто раз в тред.
Откликайся, почему нет-то.
Не работает
Аноны, подскажите, насколько тщательно вы смотрите мры от коллег, заметил, что сейчас для меня самое худшее это открывать очередной мр на 10 коммитов, где изменено под 20 файлов, часть рефакторинг, новые методы, тесты, уже на 4-5 коммите голова отключается и я просто начинаю пролистывать, как вы поступаете с этим?
Не понял, а все изменения в сумме ваша система не позволяет смотреть?
Конечно нет. Ты что. Засмеют и напишут в газете, а ещё в новостях покажут и больше никуда на работу брать не будут
Можешь чойсить напрямую из кеев, а так лучше не сделаешь.
>пик
Зачем вкатыши накатывают себе целые IDE для laba1.py?
Поставь ты себе вижуал код или сублим текст и запускай код через python laba1.py.
Неудобно же.
Посмотри на эту хуйню. Половина экрана забита каким-то говном.
Я знаю, что каждый кодит в чем хочет, просто часто такое за вкатышами замечаю. Неужели лень в консольке пару комманд вбить?
Да я привык уже если честно, ну занимает и ладно.
Даже кнопочку "Запустить" сможешь себе приделать.
Нет расширения на конце.
Ошибка на строке 5.
Он не может найти Документ, т.к. у тебя в папке только Документ.тхт
Бля, пиздец. Я расширение на второй документ не указал, думал все время что он на первый ругается
Не старадай фигнёй, прорешай все задачи на питонтьютор сперва, там ide прямо в сайте. Не нужно возится с файлами и прочим.
Потому что сперва ты разберёшься с тем как работает сам язык в вакууме, а потом уже с особенностями файлов, оси, приложений и прочего.
Помню скачал какой-то урок с рутрекера Коробкиумений вроде, заебался по 10 минут ролики смотреть.
Ну так поэтому видео и не информативны. То ли дело когда просто читаешь шапку на пару страниц строго про 1 элемент, например строку и её методы, решаешь тут же десяток задач на строку, переходишь к следующему. Никакой воды, чистая практика.
Там просто текстовые инструкции с примерами? Ну хз, я с metanikit вроде пытался учится, ну такое
Да. Типо есть строка, есть методы. Используя методы сделайте 1-2-3. Если хочешь все все методы смотришь документацию питона. Задачи типовые, по сортировке и простым алгоритмам.
Подскажите плз откуда интерпретатор понимает, что параметр tag - это экземпляр именно BeautifulSoup'a?
Единственное моё предположение, что когда мы пишем .has_attr, то tag автоматом становится экземпляром bs4.element.Tag
Ты же её передаешь суповому методу на выполнение, а он уже вызывает её с суповымы элементами. Туда другие и не могут попасть даже в теории.
Посоветуйте что читать второй книгой.
Желательно чтото с интересными прикладными результатами чтоб от скуки не умереть и развивать навыки.
Уже есть пару книг на примете по графике, ГУИ и примитивным играм, ищу еще варианты.
Как нормально поставить Пуйчарм на Линухе (Убунту)?
Если ставить по оф инструкции то его надо запускать либо через отдельную приблуду либо вообще блять блять через .sh файл, че это за хуйня?
https://www.jetbrains.com/help/pycharm/installation-guide.html#silent
Сейчас новую машину настраиваю, год назад когда ставил себе Пуйчарм на другую такого говна не было
Как нормально поставить Пуйчарм на Линухе (Убунту)?
Если ставить по оф инструкции то его надо запускать либо через отдельную приблуду либо вообще блять блять через .sh файл, че это за хуйня?
https://www.jetbrains.com/help/pycharm/installation-guide.html#silent
Сейчас новую машину настраиваю, год назад когда ставил себе Пуйчарм на другую такого говна не было
Я вкатун по джетбрейнсу. У них для удобства можно подконнектить иде к сайту (только пайчарм и ничего больше) и сабмитить решения напрямую из из пайчарма кнопкой.
Иначе на все проверки надо копипасть код просто, а зачастую надо много их тестов погонять, чтобы исправить.
О, я тож когда начал вкатываться на идле писал. Удобно, простенько, мозгу не ебёт
Но вообще лучше реально используй Thonny или PythonTutor Visualizer. Они бы мне в своё время пригодились
>примитивным играм
Сссссука как же я ненавидел эту хуету раньше. Везде сука в каждом ебучем курсе в каждой книжке для дебилов надо написать тетрис написать понг написать спейс инвейдерс. Какая же душная ёбаная срань, до сих пор ТРИСЁТ
Потому что это для нормальных людей пишут. Ти видно кишковый дрочила, для тебя другие книги.
Какому нормальному человеку в 2022 году всрался спейс инвейдерс? Я понимаю там всякие логические игры писать, текстовые квесты, хуё-моё, но это тупа кал, нет ничего хуже чем рисование в ткинтере или черепахе в обучающих курсах
>кишковый дрочила
Чё это значит я не ебу
Это для совсем детей или для пердунов, очевидно же.
Простенькие классические игры и практический проект одовременно, а не высосанная из пальца хуйня под названием "пет-проект".
Ставишь по инструкции, добавляешь на панель быстрого доступа (там есть такая настройка, да, черезжопно, но уж как есть).
В целом поковырял веб3 библиотеку, могу делать разные приколы и это ахуенно.
Глобально в планах конечно вообще пердолинг в солидити начать, но пока задача стоит следующая:
Мне нужно уметь в нихуевый парсинг/скрейпинг (я хуй ево как оно называется) короче мне надо высасывать данные с сайта и как-то их сортировать и дальше уже что-то с ними делать.
Кто-нибудь знает хороший сурс чтобы я ультимативно научился в эту хуйню? Гуглить я гуглил но какие-то ебаные гайды там я хз.
Чел, это весело. Я понимаю что ты душный дрочила, который сортирует бесполезные данные в бесполезных массивах файлов во время обучения, но обучение должно быть фановым.
Ме блядь не интересно писать программу "у моники 15005000 рабочих и у каждого по 100050000 параметров, над каждым из которых надо произвести 1005000 операций и все записать на диск", я хочу сделать чтото веселое.
Понятно что твой питон на питоне никому нахуй не всрался, но для меня это мотивация.
И да, мне нравится творить хуйню в черепахе так что с этим можешь тоже пойти нахуй.
Всем привет
Писал в прошлом тредике
Хочу сделать бота для одной старой игры.
Нашел статью
https://habr.com/ru/post/346258/
Но способ этот не подходит, т.к. в свернутом режиме не работает
Или есть вообще какие-то варианты для написания бота, чтобы ээто вес работало в свернутом окне?
куда можно посмотреть?
Никак. Только через снап или флатпак. Шо то хуйня, шо это хуйня. Поставь бомжару, там пайчарм комьюнити в репах есть
Отрисовывать кал в ткинтере и черепахе это гораздо более душная поебень, чем копаться в массивах файлов. Но наверное оно как-то от стиля мышления зависит. У меня абстрактное мышление сосёт толстенный хуй, в школе геометрию я мог понимать в лучшем случае на средне-базовом уровне, а вот по алгебре я исполнял очень даже хорошо, на жирную 5, если готовился. Наверное из-за этого отрисовка объектов, их движения и соприкосновения для меня мучительна
С пдфками такое делал, с пикчами не приходилось пока.
Никаких деформаций нет, картинки идеальные пнг.
>Чел, это весело.
Это хорошо для школьников всяких, у которых мотива язык изучать нет. А так вроде как весело, ты управляешь этой черепашкой, в игровой форме можно всякую "ненужную хрень" осваивать.
А если ты взрослый, мотивированный на освоение программирования, то это уже как-то странно выглядит. Не, в принципе и с черепашкой можно что-то делать, какая-то визуализация, но всё равно странно.
Неправильно понимаешь. Сто лет этот bs4 не запускал, а когда запускал неправда была, но
Логика такая, что ты передаёшь функцию-колбэк, которую сам определяешь.
bs4 вызывает эту функцию и передаёт в неё некий параметр, объект определённого типа. Таким образом именно bs4 отвечает за то, что будет передан объект нужного типа.
Это совершенно общий подход для всех колбэков, во всех языках программирования.
>ВАШИ МОТИВЫ НЕПРАВИЛЬНЫЕ ВОТ У МЕНЯ ПРАВИЛЬНЫЕ
А какие мотивы должны быть для изучения питона? 300кк\наносек или че?
люди которые умеют читать книги тут очевидно не сидят
"начинаем программировать на питон - тони гэддис"
Цели - начать писать программы с ГУИ желательно, набивать руку, набираться опыта, не в какой-то отдельной области а в программировании в целом.
Цели завтра вкатиться в датасаенс с 300ккк\наносек прямо завтра не стоит, у меня впереди два года шараги. Так что задача скорее иметь способность реализовать свои замыслы с ГУИ, графикой и всем сопутствующим нормальной программе.
Зачем тебе гуи?
Только откинулся, проебался с оплатой хранилища, на днях поправлю.
посмотри степик, там в топе бесплатных отличная линейка курсов "поколение пайтон", просто дохуя практики, отлично подойдет пока закрепить все базовые навыки
Есть бот, работающий с апи вк. Ищет картинки с привязкой к координатам. В картинках всякие индусы часто выкладывают хуи. Через что нужно прогнать набор картинок, чтобы убирать индийские хуи?
Ну посмотри же!!!))
def os_ver():
import sys
sys.platform
if sys.platform[:3] == 'win': print('hello Billy')
else:
print('Sad Pinus :(')
os_ver()
Книги бесполезная трата времени.
Ну надрочишься ты на всяких лямбдах, сядешь на проект, и поймешь, что нифига не знаешь как код писать.
Путь у джуна такой:
1. Любая книжка по основам (чтобы откровенное говно не писать)
2. Практика
3. Практика
4. Практика
5. Выбор сферы
6. Устройство на работу
7. Начинаешь читать книги, чтобы прокачивать скилл
8. Перекат из шараги в шарагу-лайт
9. Перекат из шараги-лайт в нормальную компанию.
Бля, котаны, поясните за pytest и фикстуры. Вот в примере чел показывает как он добавляет в тест фикстуру, которая запустится в начале этого теста и сделает какие-то операции над объектом request, который является ее параметром - что это блять за request? Откуда он нахуй взялся? Я не вижу чтобы его импортировали откуда-либо. Он относится к этом у как к чему-то абсолютно нормальному и идет дальше
а где эту практику взять? ну вот пролистал я укус питона, прорешал весь пинтьютор, что дальше?
почти во всех вакансиях с хх даже на 30к требования с кучей фреймворков и от года знаний
Надо было фреймворки учить, а не книжки читать
А насколько dart похож на Java?
Думаю начать учить дарт с перспективой возможного изучения java
Какой-то мудацкий аргумент который был добавлен каким-то мудацким плагином. Вот тебе пример со скрина, тут плагин добавляет стороннюю фикстуру.
pytest в принципе очень непрозрачен и ебаное говно - сочетает в себе все дерьмовые стороны питона, но его юзают, ибо альтернатив особо нет.
Кодишь пет, да и все.
На требования похуй, они ищут идеального кандидата, который знает нужный им стек.
Как сделаешь пет, так и говори, в лоб, что опыта нет, но зато ты сделал пет, освоил фласк какой-нибудь, ксс, хтмл, гит, докер, умеешь писать и читать питонячий код.
В резюме пиши, что освоил то, то и это. И ссылочку на гитхаб. Или еще лучше на развернутое приложение где-нибудь на vds.
Тогда будет видно, что ты не очередной дебс с курсов, скопировавший код, а адекватный чел, способный шевелить мозгами.
Когда будешь делать пет, сначала читай доку, потом читай исходный код фрейморка, если не знаешь, как запилить какую-то штуку.
Можешь читать книги по фрейморку, но не копируя бездумно код. Просто пойми общий ход создания приложения и применяй его для создания пета. И почитай про типичные ошибки новичков.
Потом уже лезь и копируй код со стаковерфлоу.
В результате, ты:
1. Поймешь архитектуру фреймворка (там ничего сложного, обычный mvc).
2. Научишься сам решать проблемы.
3. Научишься в гит (закомитить, запушить, склонировать к себе удаленный репозиторий).
4. Научишься в другие инструменты, которые ты будешь использовать.
А сидеть и нарешивать "поменяйте в file.txt все буквы из нижнего регистра в верхний" нет смысла. Эти упражнения нужны в первый месяц, чтобы ты просто обучился синтаксису.
Книжки нужно читать нормальные, а не хуету для домохозяек. Но это уже потом, когда настнет время расти и двигаться дальше.
Здесь мы не будем останавливаться на универсальности данного сценария так как я хотел лишь продемонстрировать возможности атрибута platform из состава модуля sys. К тому же избыточность комментариев на этой доске может негативно отразиться на общем восприятии языка Python так как язык по своей сути очень лаконичен и прост.
О том как писать простые и более универсальные сценарии мы узнаем в следующих комментариях.
А может не будешь пиздеть почему зря?
Тебе ясно и четко пояснили, что есть словарь, и нужен рандомный элемент. Нравоучения свои себе оставь, щенок
Раз уж зашел разговор, как вкатиться в нейронки? С чего начать, какую литературу читнуть.
a = list(range(10))
b = list(range(10))
a элемент(1) b элемент(1), 12 .... 97, 98, 9*9
бля надеюсь понятно (по ебалу сапогами не бейте, ньюфаг конкретный)
посоны, научите дауна перемножать все элементы 1 списка на все элементы 2 списка.
a = list(range(10))
b = list(range(10))
a элемент(1) b элемент(1), 12 .... 97, 98, 99
бля надеюсь понятно (по ебалу сапогами не бейте, ньюфаг конкретный)
пофиксил
огромное спсибо!
и тебе тоже спасибо!
Мапильщик лямбдочек, ты? Я узнал тебя по тайп хинтам.
Чел не напрягайся. Твое мычание указывает что ты силишься что-то сказать, но никак не осиливаешь сформулировать. Походи-остынь, соберись с мыслями.
Ты давай функциональный пайплайн с ленивой генерацией, что за лоховские циклы и компрехеншены.
За itertools надо бить по ебалу сразу за исключением крайних случаев. Как и за лямбды.
А что ты будешь делать, писать свой groupby? Свои перестановки? Чел.
Сидим на ревью с моим руководителем сремя из-за имен методов/нужна обертка для класса или нет и подобной хуйни
сразу оговорюсь - я не планирую вкатываться в кодинг
есть одна конфа в тг и там кикнули одного юзернейма и у меня появилась идея
хочу написать бота для тг, который будет имитировать данного юзернейма
как я это вижу:
спарсить все его старые сообщения и чтобы потом на чьи то сообщения в конфе бот выдавал из этого списка что то похожее
есть ли готовые решения или направь что надо изучить анон?
сам я когда то какие то курсы проходил по питону онлаен ради инетереса и готов изучить что нужно для такого бота, просто поднаправь меня
я это делаю just4lulz
Видимо стоит брать, придумывать задачи и писать.
Выбрать для начала графический фреймворк. Или tk, что встроенный, или wx, или qt, ещё kivi вроде как можно.
tk встроенный, но не совсем, не всегда по умолчанию стоит. Очень примитивный, но что-то на нём делать можно.
kivi какой-то андеграундный.
Самые известные это wx и qt. Я немного работал с wx, и сейчас немного надо с ним работать, однако он старый и сейчас медленно развивается, более крутым считается qt, стоит смотреть именно на qt. Правда лично я в qt не умею совсем.
Аноны правы, ГУИ приложения не совсем про питон. Есть мнение общее, что для ГУИ питон скорее как средство создания прототипов. Потому что сложно распространять и т.п. Есть такое.
С другой стороны если ты учишь ГУИ, то тебе надо осваивать логику ГУИ. Не суть на каком языке программирования. wx и qt есть на разных платформах, будешь уметь на одной платформе, сможешь и на другой.
Чел, никто не пишет гуи на питоне... Разве что узкоспециализированное по... Популярного - нет
На хрюлансе могут просить заказчики-нубы. Я обычно это решал говнобатниками или запуском сервера и вебмордой(лол).
Всё хочу подучить го, чтобы делать нативные стендэлоны, там вроде есть подходящие либы и под гуи и под вебморды.
мимо
Хотя не, было дело, писал гуи на тк на перле. Там можно было всё это говно сбандлить потом в экзешник.
А зачем? Скучный ты какой-то. Зачем пистон, если не для нейронок?
Есть ли какая-то разница между вызовами:
asyncio.run(load_csv_fixture(model_name))
И
loop = asyncio.get_event_loop()
loop.run_until_complete(load_csv_fixture(model_name))
?
Что первое - новее, это я в курсе, но есть ли какая-то разница при прогоне на практике? Во 2м случае мы явным образом ивент луп указываем, это на что-то влияет?
долбоеб тупой поставь вскод и кликни через контрол говно и почитай сука
Не уверен насчёт run(), второй пример не будет работать корректно, если ты вызываешь его не в основном потоке.
В 90% случаях это не нужно, обычно ты сразу инициализируешь эвент луп, при этом он работает в основном потоке, чаще всего явного мультитрединга нет. В этом случае не принципиально вообще.
Когда иначе, например у тебя ГУИ, или ещё что-нибудь, там уже больше магии.
Лучше в любом случае через run() делать, если тебе только явно не нужен loop.
Тебе либа нужна или байтоебство?
По заголовочным битам файла.
Я сам хз, но на стековерфлоу вот такое есть:
https://stackoverflow.com/questions/1412529/how-do-i-programmatically-check-whether-a-gif-image-is-animated
Пробовал?
>2022
>куча поисковых систем
>по первой же ссылке в гугле список актуальных книг, курсов, туториалов
>А ПАСАВЕТУЙТЕ КНИЖАК И КУРСАВ А ТО ЧО Я ЛОХ ЧТО ЛИ САМ ГУГЛИТЬ ЕПТ
Ты явно гуглить не умеешь, какое тебе программирование?
На возраст похуй.
За год при желании и усердии вкатишься на трейни или июня, а дальше уже сам поймешь куда развиваться хочешь.
Обычно советуют Лутца, но это хуйня. Книжка эта для новичков в Питоне, а не для новичков для в программировании в целом.
Лучше начни с Укуса Питона, освой синтаксис и смотри, куда ты хочешь вкатиться и гугли роадмап по выбранному направлению. Всякие продвинутые фичи языка изучать смысла нет, все равно ты их испоьзовать вне laba1 не будешь.
Чтобы как на дваче, юзер мог писать болдом, курсивом или
>пукать гринтекстом
Я знаю, что есть сторонние пакеты, но хотелось бы сделать самому.
С чего начать?
Какие же питонобляди опущенные... Пздец, а ведь раньше я и таким же был.
Хвала яйцам перекатился в божественный го, со статической типизацией и минималистичным синтаксисом. В гохе все прозрачно и ясно, там действительно only one way to do it - никаких выворотов-изворотов со сторонними говнолибами. Вложенный цикл for это то что поймет абсолютно любой прогер из любого ЯПа, это максимально чистый и прозрачный способ решить задачу, выебоны с манялибами - первый признак джуна-вкатуна, который изо всех сил пыжится показать, какой же он "прошаренный". для справки: твоя залупа тоже использует 2 цикла for, внезапно да? только под капотом
>выебоны с манялибами - первый признак джуна-вкатуна
Поэтому goвноеды костыляют каждый все сам и это есть go-way? Челик, в го просто не завезли нормальный менеджер модулей, поэтому опущи и стали срать что фреймворки/либы/любая херня - плохо, все надо писать самому
Газуй в свое стойло, опущ
Исходный пользовательский текст прогонять через парсер и заменять спецсимволы на html-теги на этапе сохранения поста в модель.
Блэ, а если тут 50 миллионов итераций? И проверка идет не в кортеже а в сете?
Учись проверять экспериментально.
Хули вы все на ютуб претесь? Есть куча спижженных нормальных курсов на трекерах, есть книги.
Ютуб для всяких интересных адвансед хуиток вроде такого или просмотра каких-то конф https://www.youtube.com/c/mCodingWithJamesMurphy
А смотреть очередного индуса или ивана ебанкова с его корявым пересказыванем любой начальной книги это дебилизм.
Открываешь любую книгу по вводу в питон+программирование на 800 страниц, читаешь главу за главой, делаешь задания, профит. Никакой интернет пиздобол тебе такого не даст.
>>25727
Без обид, пацаны, но я ебал Марка Лутца и ебал каждого, кто ситает его норм темой или учился по нему- вы долбоёбы. Читать такую хуиту - себя не уважать. Это надо обладать даром божьим, что бы так ахуенно душно, невъебенно тяжело и пиздец как неинтересно рассказывать что-либо, что аж желание учиться отбивает напрочь. Пару раз пытался, не смог, рвотный рефлекс сильнее.
Укус Питона еще норм, читаю. Но мне проще, когда объясняют на пальцах и визуализируют с примерами.
>>25914
Ок
Я по этому курсу учился в своё время: https://rutracker.org/forum/viewtopic.php?t=3085337
И dive into python конечно же.
Я сколько не посмотрел всяких гайдов по парсингу вот такой хуйни не встречал и я не понимаю че дел.
Т.е я понимаю наверное подход какой-то, что надо взять кусок кода из сурсов страницы, отвечающий за генерацию подписи, как-то с ним распердеться и сделать такую же генерацию подписи в скрипте, но конкретики у меня в голове никакой.
Ну ты всё правильно описал. Но это гемор. В таких ситуациях обычно пробуют мобильную версию без js, потом смотрят запросы мобильного приложения и на крайний случай юзается селениум.
А если у сайта нет мобильной версии?
Селениум это вообще пизда, там на страничке 20 айтемов, а всего их 20к, т.е это тыщя прокрутов, так не пойдет.
Сори если пишу полную тупость я в питоне 2.5 недели.
Я же три варианта написал. Если нет мобильной версии, то переходи к следующему.
Я другой челик, но тоже надавний вкатыш.
Хочу спарсить данные с динамической страницы. Попробовал мобильную без js в хроме - нужные данные перестают подгружаться. https://apexlegendsstatus.com/profile/uid/PC/1010353021047
Про "смотреть запросы с м. приложения" я не понял.
И по поводу селениума вопрос - его не хочу использовать, т.к. он постоянно браузер открывает, а я хочу бота сделать, так что это не вариант.
Есть ли ещё способы как вытащить данные, или только селениум?
возможен
Дурачок, начальных книг по питону самое большее количество из всех языков, потому что все дауны туда ломятся. Есть и годные.
Лутц весьма специфичен, но это просто не нубская книга, чего многие не понимают.
П.С. Укус питона это бесполезная зафоршенная хуита.
Или без вариантов нужно делать файл и запускать его?
>>27375
Да я постоянно так обсираюсь, потом правда понимаю где обосрался, но один хуй.
Так, оказалось что float через uniform делается
Можно. Берёшь и создаешь.
Алчеми, очевидно.
Чулочки на ножки, батплаг куда надо, и приступаешь.
Толсто.
Книги как раз помогают уменьшить поток людей. Пока дурачки читают свои книжки и решают олимпиадные, нахер никому не нужные задачки, нормальные люди без задней мысли просто пишут стандартный шаблонный сервер, делают деньги и учатся писать хороший рабочий код. А не вот это вот всё книжное говно, которое пригодиться разве что при создании своего яп
Забыл сказать, интересует веб.
Не ссы. Питон - простейший в мире язык. Сам разберешься без видосов.
Ну пиши свои серверы, кто тебе мешает.
Жанго вообщне неактуален. Есть фастапи для современных проектов, есть фласк для небольших. А вкатуны ломятся в жанго, думая, что это какой-то похапе. Ну так идите в похапе.
Бумп
Так вакансий на джанге больше
В общем, в каждом тест-кейсе включаем фикстуру loadmodels, которая в общем-то и делает что написано - подгружает в тестовую базу все фикстуры изcsv-файлов, а после теста стирает их делает truncate на все таблицы.
Все работает, без базара, только вот когда мы делаем это на каждом тест-кейсе скорость прохождения тестов значительно снижается. Как поправить? Можно попробовать конечно делать эти манипуляции в начале всех тестов а truncate 1 раз в конце но вот незадача - некоторые тесты например почти целиком стирают таблицы и после теста эти изменения необходимо откатывать чтобы другие тесты работали как следует, и откатыват ьавтоматически а не вручную. Как быть?
Скоупы специально для этого есть.
И есть ли какой-то эталонный пример кода, который можно использовать как пример оформления скриптов, чтобы сразу научиться писать красиво и понятно?
> как сделать так, чтобы не забыть всё?
Придумываешь сам себе практику и делаешь. На самом деле никак, если забыл гуглишь, постепенно будет в памяти откладываться
>про работу с csv-файлами
А как с ними работать, лол? Я знаю ровно один способ - pandas.read_csv и pandas.write_csv и больше pandas нахуй не нужен.
>и больше pandas нахуй не нужен
да ты охуел пес
я с екселя на него пересел, теперь 90% моей работы перешло в запуск скрипта и 10% попизделки с коллегами
мимо оффисная макака
только практикой, больше никак
Тебе и не надо знать всё. Просто чтоб ты был в курсе что такая хуйня есть, а если надо будет - загуглишь подробности
Так в экселе можно тоже на ВБА писать. У меня епта целый семестр был охуительный предмет ОФИСНОЕ ПРОГРАММИРОВАНИЕ с написанием макросов для ворда, экселя и аксеа.
Чот книжек нихуя, все что нашел это курс на ютубе но мне на слух информацию сложнее воспринимать
Ну подожди тогда лет 5
схуяли. Сейчас пет-проект типа АРМа спеца. Формочки и прочее - или wxGlade или FormBuilder.
Сама технология - wx (лучше, но pip install) или TKinter (уже встроен). Гемора больше с TKinter и не очень нативно всё.
Ибать эксперты на дваче....
Бля чел никто не говорит, что невозможно написать гуй на питоне. Дело в том, что так никто не делает.
Причем не по координатам, а именно по цвету, ибо обьекты динамические.
Сдохни, тупой пидор, программирование это не для тебя.
Вы видите копию треда, сохраненную 28 октября 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.