W
Привет, я новобранец языка Python. Мой путь только начинается и мне очень пригодится совет старших. Что вам при изучении языка помогло больше всего, что угодно от чего вы сказали «Вот оно! Вот что мне действительно было нужно». Я буду очень благодарен за каждый совет!
Alex
Прям в голове все по местам встало
Alex
А вообще тут есть дорожная карта, там весьма неплохие материалы
W
Спасибо, люди дающие советы и вправду потрясающие.
Oleksandr
Привет, я новобранец языка Python. Мой путь только начинается и мне очень пригодится совет старших. Что вам при изучении языка помогло больше всего, что угодно от чего вы сказали «Вот оно! Вот что мне действительно было нужно». Я буду очень благодарен за каждый совет!
Освоить основы языка, и попробовать написать серьезный проект в «боевых» условиях. Т.е использовать что-то о чем ты не знаешь и учить эти новые темы на ходу. И чтобы этот проект не был чем-то простым (todo app), а например блог с аккаунтами, авторизацией, комментариями и т.д. Или какая то не супер простенькая игра. Зависит от того что хочешь делать. Потом найти знающих людей и получить (возможно токсичной) но критики. Главное чтобы просто разъяснили что делают не так. Так можно будет узнать о многих интересных вещах которые будут делать код короче/лучше/быстрее. Потом пойти изучать типизированный язык чтобы понять как работают программы на более низком уровне. Java (НЕ КОТЛИН) подходит идеально. На ней нужно много писать и описывать как ты хочешь чтобы работала программа. За это джаву не любят, но зато ты поймешь как работают байты, потоки и данные в целом (ведь тебе прийдется работать с InputStream/OutputStream а не просто со строками как в питоне). Здесь главное не чтобы все было в одну строку, а чтобы понять как работают вещи. А дальше спускаться ниже и ниже по уровням. Учить C (C++ не стоит, очень легко запутаться и там много вариантов отстрелить себе ногу). А в С только один. А потом ассемблер. Не стоит писать на нем что-то жесткое, главное чтобы просто щелкнуло что это означает. Low level learning (канал на ютубе прекрасно объясняет нижний уровень, С или ассемблер). А вообще лучше начать с Джавы, а потом пойти в питон. она научит как работать с типами данных, а не магической конвертацией как в питоне или джаваскрипте.
W
Освоить основы языка, и попробовать написать серьезный проект в «боевых» условиях. Т.е использовать что-то о чем ты не знаешь и учить эти новые темы на ходу. И чтобы этот проект не был чем-то простым (todo app), а например блог с аккаунтами, авторизацией, комментариями и т.д. Или какая то не супер простенькая игра. Зависит от того что хочешь делать. Потом найти знающих людей и получить (возможно токсичной) но критики. Главное чтобы просто разъяснили что делают не так. Так можно будет узнать о многих интересных вещах которые будут делать код короче/лучше/быстрее. Потом пойти изучать типизированный язык чтобы понять как работают программы на более низком уровне. Java (НЕ КОТЛИН) подходит идеально. На ней нужно много писать и описывать как ты хочешь чтобы работала программа. За это джаву не любят, но зато ты поймешь как работают байты, потоки и данные в целом (ведь тебе прийдется работать с InputStream/OutputStream а не просто со строками как в питоне). Здесь главное не чтобы все было в одну строку, а чтобы понять как работают вещи. А дальше спускаться ниже и ниже по уровням. Учить C (C++ не стоит, очень легко запутаться и там много вариантов отстрелить себе ногу). А в С только один. А потом ассемблер. Не стоит писать на нем что-то жесткое, главное чтобы просто щелкнуло что это означает. Low level learning (канал на ютубе прекрасно объясняет нижний уровень, С или ассемблер). А вообще лучше начать с Джавы, а потом пойти в питон. она научит как работать с типами данных, а не магической конвертацией как в питоне или джаваскрипте.
Сразу видно, человек с большим опытом. Спасибо большое, такие подробные советы очень помогают и мотивируют.
Dim
Добрый день кто пишет под GPU?
Yohan
Отпишитесь, если попробуете это, у меня так и не нашлось времери пощупать
Зёма
привет, никто не знает как при помощи тдата папки получить доступ к чатам, писать сообщения и тд.
Shadow
Всем привет! Есть кто живой в данное время суток? Желательно мощнейший гуру
Shadow
Пишу бота на питоне с использованием нетмико. Проблема заключается в том что при подключении к устройство через телегу и отправке команды execute traceroute 8.8.8.8, команды выдается всего 3 хопа из 32 возможных. Сама по себе команда выполняется на устройстве достаточно долго, порядка ~3 минут (в зависимости от кол-ва хостов по пути и их доступности по ICMP). Так вод каждый probe hop выполняется примерно 3 секнду, но почему то бот выдает только 3 хопа без звездочек принимая задержку как за окончание команды (или звездочку) как быть в таком случае?
Shadow
5 сек
Shadow
Shadow
*Дисклеймер* Я не кодер, просто захотелось себе написать мини «помощника-сис. админа» который в случае алертов или прочей ерунды поможет сделать мини траблшут
Shadow
Писалось по ютубу, гуглу и гпт
Shadow
По этому может быть куча ошибок и прочей ерунды)
Shadow
По поводу разделения кода по файлам (вдруг кто то что то скажет), будет разделяться перед деплоем его на сервак, когда допишу, позже будут просто новые фишки в нем реализовываться
Shadow
Не знаю насколько будет полезно и правильно я делал, в целом функционал бота такой (изображение делал перед начало его написания, для структуры в годе и понимания полноценной концепции)
Shadow
Ни кто не смотрел?
Loork
У меня есть EndPoint, который выводит список категорий блюд (см 1-ый скриншот). По условью, должны выводится только те опубликованные блюда is_publish=True. А если у категории нет блюд или они все не опубликованы (False), то категория не должна быть в результате Для этого я написал view класс: class RentalHistoryAPIView(ListAPIView): queryset = FoodCategory.objects.prefetch_related('food').all() serializer_class = FoodListSerializer def get_queryset(self): return self.queryset.filter(food__is_publish=True).distinct() Но EndPoint у меня почему-то выводит все блюда, хотя я чётко прописал условие. В чём может быть причина? По условию задачи, я не должен трогать сериалайзеры (см 2-ой скрин)
Loork
Yohan
Давно не писал на джанго, но меня смущает в get_queryset self.queryset Метод get_queryset переопределяет queryset из класса, тобишь надо там возвращать FoodCategory.objects. ..... Полноценную фильтрацию, а не модификацию queryset
Yohan
А стоп... Мм... По идее и так должно сработать... Но мой вариант гарантирован (ну насколько я помню) UPD Можешь вывести сам итоговый запрос в sql, который получился, чтобы посмотреть что не так У меня ощущение, что новый фильтр поверх как-то криво применяется
vedagorrr
вообще, хорошая практика всегда использовать pipenv
А вам удавалось подружить win + wsl + pycharm + pipenv?
Yohan
А вам удавалось подружить win + wsl + pycharm + pipenv?
venv из коробки работает и на линухе и на винде
vedagorrr
venv из коробки работает и на линухе и на винде
К сожалению на проекте во всех микросервисах pipenv
Shadow
У кого то стоит на рабочем пк линукс на домашнем десктопе винда
Shadow
Допустим тот же ansible semaphore на домашнем пк под виндой ты не развернешь
Yohan
Допустим тот же ansible semaphore на домашнем пк под виндой ты не развернешь
Про это я в курсе, у меня так redis крутится Просто не было указано такой специфики, вот и подумал, зачем для обычных проектов он нужен, если на винде и так работает
Shadow
Ну в целом
Yohan
Это да, идею понял
Shadow
Для обычно проекта нужен для того что бы впринцепи научиться пользоваться линуксом. Так как лично моё субъективное мнение что лучше все это делать на лине нежели на винде
Shadow
То есть я допустим все делаю на wsl, просто подключая к ней вскод. Так как минимум я сохраняюсь себя от случайного удаления или перемещения файлов, ну и базовые потребности в получении знаний с линуксом
Shadow
Большинство же ботов это доп функционал к рабочим системам, будь то мониторинг или сетевая железка. Если мониторинг то проще же бота поместить рядышком, а насколько я помню все системы мониторинга разоврачиваются на лине. Да и виртуалка это объективный прздеец. Wsl = kaif :D
Yohan
Это резонно, у меня-то закрывается потребность виртуалкой для работы А wsl поддерживает для этого достаточно возможностей? Чтобы полноценно эмулировать, я как-то сталкивался с тем, что там то одно то другое не поддерживается (но копался там постолько поскольку)
Shadow
Ну
Shadow
Смотря какой wsl, у меня 11 винда и 2 wsl, даже графические приложения поддерживаются
Shadow
Чуть чуть подхимичить, пару библиотек поставить и можно запускать линуксовые приложения на визуале, умельцы даже итерфейс прикручивать умудряются
Shadow
Оболочку*
Shadow
Но если прикручивать оболочку, то подключение идет как по rdp, через xterm, тогда уже отличаться не будет от виртуалки))) А так в кмд запустил и кайфуешь
Dim
на GPU кодишь?
Shadow
А подсказать сможешь?
🐍Yaroo🐍
я не верю таким
Shadow
А то я уже больше месяца ответ найти не могу :/
Dim
и под какое железо ты кодируешь?
Shadow
Пишу бота на питоне с использованием нетмико. Проблема заключается в том что при подключении к устройство через телегу и отправке команды execute traceroute 8.8.8.8, команды выдается всего 3 хопа из 32 возможных. Сама по себе команда выполняется на устройстве достаточно долго, порядка ~3 минут (в зависимости от кол-ва хостов по пути и их доступности по ICMP). Так вод каждый probe hop выполняется примерно 3 секнду, но почему то бот выдает только 3 хопа без звездочек принимая задержку как за окончание команды (или звездочку) как быть в таком случае?
Shadow
Shadow
*Дисклеймер* Я не кодер, просто захотелось себе написать мини «помощника-сис. админа» который в случае алертов или прочей ерунды поможет сделать мини траблшут Писалось по ютубу, гуглу и гпт По этому может быть куча ошибок и прочей ерунды) По поводу разделения кода по файлам (вдруг кто то что то скажет), будет разделяться перед деплоем его на сервак, когда допишу, позже будут просто новые фишки в нем реализовываться
Shadow
Shadow
Но если мне тут помогут с ответом, я честно ахуею
Shadow
А ты по моему вопросу не смотрел?
Shadow
Там проблема в отработке 1 команды
ᅠvictor
10
‌‏bobus
Если я запушу код с сервера в отдельную ветку на гитхабе, потом с хоста через нормальный редактор внесу изменения в код и запушу его на ту же ветку, смогу я потом сделать код на сервере таким же какой он теперь на этой новой ветке?
‌‏bobus
Если я правильно сложил паззл, то да Если не правильно - то тоже да)
А как мне потом измененный код с гитхаба на сервер добавить??
Yohan
Что есть сервер? Обычно у нас есть локальная репа (на нашей машине) и удаленнаая-гитхаб-сервер
Vladimir
Если я запушу код с сервера в отдельную ветку на гитхабе, потом с хоста через нормальный редактор внесу изменения в код и запушу его на ту же ветку, смогу я потом сделать код на сервере таким же какой он теперь на этой новой ветке?
ты не понимаешь похоже как работает гит. Какие-то ветки палки. Пушат в бранч. Если ты будешь пушить в тот же бранч, гит увидит, что состояние локально на хосте отличается от того что в репозитории и предложит как-то это все замерджить, устранить конфликты.
‌‏bobus
Бранч переводится как ветка если че
‌‏bobus
Yohan
Ну я арендовал хостинг, и там запустил бота, что он доступен 24/7
Ооо как, а это уже интереснее, этот сервер будет еще одним клиентом, и на него надо пуллить код с гитхаба С любой ветки, которая нужна
Yohan
Т.е. гитхаб Отдельная ветка Пуллим на нашу тачку Редачим Пушим на гитхаб Пуллим на машину с ботом Профит
‌‏bobus
Пуллить это типо копировать себе код с гитхаба?
Yohan
Пуллить это типо копировать себе код с гитхаба?
Угу, клонировать - clone подкачивать - pull
‌‏bobus
Попробую не просрать все
Yohan
Попробую не просрать все
Товарищ, гит как раз и нужен, чтобы не просрать все. Ты всегда можешь откатиться к старому изменению (коммиту) Главное ветки не удалять
‌‏bobus
Товарищ, гит как раз и нужен, чтобы не просрать все. Ты всегда можешь откатиться к старому изменению (коммиту) Главное ветки не удалять
не подскажете как сделать пуш чтоб этой ошибки не вылетало? желательно чтоб не растягивать это на 3часа root@rrr:/Bot# git push origin server Username for 'https://github.com': user Password for 'https://user@github.com': remote: Support for password authentication was removed on August 13, 2021. remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication. fatal: Authentication failed for 'https://github.com/user/Bot.git/'