Just Python
前往频道在 Telegram
🐍Простое изучение Python. Ссылка: @Portal_v_IT Сотрудничество: @oleginc, @tatiana_inc Канал на бирже: telega.in/c/justpython_it РКН: clck.ru/3MnbSc
显示更多9 877
订阅者
-424 小时
-227 天
-5930 天
帖子存档
9 877
🧼 Удаление дубликатов, сохраняя порядок
Стандартный set() удаляет дубликаты, но не сохраняет порядок. Чтобы сохранить порядок элементов, можно использовать dict.fromkeys().
🎯 Итог
dict.fromkeys() — простой и читаемый способ удалить дубликаты из списка, сохранив порядок появления. Работает быстро и не требует сторонних библиотек.
9 877
Повтор последнего результата в Python REPL
Если работаешь в интерактивном режиме Python (REPL), тебе не обязательно каждый раз сохранять результат в переменную — предыдущий результат всегда доступен через _.
Итог:
Символ _ в интерактивной консоли Python хранит результат последнего выражения — удобно для быстрых вычислений и экспериментов без создания переменных.
Разъяснивший Python
9 877
Yarl — Удобная работа с URL
Yarl — это библиотека Python, предназначенная для удобной работы с URL-адресами. Она предоставляет API для создания, изменения и анализа URL-адресов, сохраняя при этом их семантическую корректность.
Если вы работаете с URL-адресами и хотите упростить их обработку в Python, Yarl может быть отличным выбором.
Ссылочка на доку
#theory // Just Python
9 877
Как задать тайм-аут для любой функции
Иногда нужно ограничить время выполнения функции, особенно если она может "зависнуть". Для этого можно использовать concurrent.futures и ThreadPoolExecutor.
Итог:
Такой приём позволяет безопасно завершать зависающие операции, не блокируя основной поток. Отлично подходит для сетевых вызовов, парсинга и других непредсказуемых задач.
#theory // Just Python
9 877
🔵 Занимаешься IT и ищешь свежие идеи? На этом канале собраны инсайды СЕО 1win о развитии iGaming-бизнеса.
Узнай, как управлять крупной компанией в высококонкурентной нише, используя новые технологии и тренды.
Подписывайся на Owner 1win и будь в теме!
9 877
Как элегантно "перевернуть" словарь
Иногда нужно поменять местами ключи и значения в словаре. Это можно сделать в одну строчку с помощью генератора словаря.
Итог:
Инвертирование словаря — это просто и читаемо с генератором. Но помни: значения должны быть уникальны и хэшируемы, чтобы не потерять данные!
#theory // Just Python
9 877
Переопределение стандартного поведения функций через декоратор
Иногда хочется обернуть функцию, чтобы автоматически логировать её вызов или измерять время исполнения. Это удобно делать через декоратор.
Итог
Декораторы позволяют добавлять поведение к функциям, не изменяя их напрямую. Это мощный инструмент для логирования, кэширования, авторизации и прочих нужд.
#theory // Just Python
9 877
Изучите азы работы Python, SQL, нейросетей и визуализации данных за 5 дней.
Бесплатный мини-курс от Skillbox для любого уровня откроет вам дорогу к направлению Data Science, в котором зарплата только начинающего специалиста составляет 100.000₽+
После мини курса Вы:
— Имеете собственное портфолио из 4 работ, которое можно показать работодателю
— Находитесь в закрытом экспертном телеграмм сообществе
— Получаете бессрочный доступ к видео-платформе
— Пообщались со спикером и закрыли все вопросы, возникшие в момент обучения
Регистрируйтесь по специальной ссылке и забирайте еще полезные подарки, один из которых: ПЕРСОНАЛЬНАЯ карьерная консультация. На мини-курс осталось 23 места.
9 877
Умное логгирование исключений с exc_info=True
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
#theory // Just Python
9 877
Методы list в Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
#list
9 877
Функция sum()
Как бы вы решили задачу получения суммы элементов списка без обхода элементов в цикле?
Это можно сделать с помощью стандартной функции sum().
Cинтакс функции sum():
start)
Параметры sum():
iterable - итерируемые типы (list ,dict, tuple, и.т.д.)
start - (необязательно) значение этого параметра прибавляется к уже готовой сумме элементов iterable. По умолчанию значение этого параметра 0.
Возвращаемое значение из sum():
sum() возвращает сумму start и элементов всех последующих элементов.9 877
Базы Данных
Хранить данные нужно всем. Обычно при работе программы все хранится в оперативной памяти (ОЗУ), но при перезапуске все стирается. И для запоминания информацию записывают на жесткий диск. Это и есть База Данных.
Самая популярная База Данных - текстовый файл с записанными значениями. И правда очень удобно. Достаточно открыть файл и прочитать, что там лежит, особенно, если мы знаем какая строка сему соответствует.
Еще информацию которая меняется от программы к программе можно записать в отдельный Python файл. Так нам даже не придется его открывать.
#theory // Just Python
9 877
Чтобы начать карьеру в анализе данных, нужно выбрать направление. А для этого — как-то отличить друг от друга аналитиков данных, системных, продуктовых и бизнес-аналитиков, инженеров данных и специалистов по Data Science.
Яндекс Практикум запускает бесплатный курс, который поможет это сделать. Расскажем, чем занимаются разные аналитики, сколько они зарабатывают и как стать одним или одной из них.
Курс будет полезен, если
→ у вас нет опыта, но хочется работать в анализе данных;
→ хотите сменить профессию, но не знаете, с чего начать.
После курса можно будет пройти бесплатную вводную часть о профессии, которая понравилась. Там вы решите первые практические задачи настоящих аналитиков.
Начините путь в анализ данных вместе с Практикумом
9 877
Аннотация типов
Дает нам возможность проставлять в коде "подсказки" для программиста, не используя комментарии через #
При большом количестве кода бывает, что просто забудешь какой тип должна принять / вернуть функция. Для этого и можно воспользоваться этой полезной фичей
А еще можно воспользоваться модулем mypy, чтобы находить ошибки несоответствия типов в коде
9 877
Как можно применять модуль showballstemmer?
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer
#theory // Just Python
9 877
Хочешь попробовать себя в IT без риска?
Чтобы не тратить сотни тысяч рулей на профессию, не понимая, подойдет она тебе или нет — есть решение.
Всего 3 дня — и ты попробуешь себя в роли тестировщика: найдешь баги в реальных проектах, поработаешь с Postman и SQL, а еще получишь:
— 4 полезных гайда (от резюме до подборки книг).
— 3 проекта в портфолио.
— Скидку на курс, если захочешь продолжить.
С нуля, абсолютно без опыта — просто пройди мини-курс и начни учиться. Курс лишит тебя страхов и сомнений в выборе профессии.
Попробовать бесплатно
P.S. У 85% участников после мини-курса появляется четкий ответ: "Моё/не моё". А ты проверь себя!
9 877
object
Базовый класс, от которого неявно наследуются все классы в Python.
Один из его полезных методов является
__str__, который вернет нам строковое представления объекта.
При его вызове на выходе получим что-то такое: <__main__.MyClass object at 0x00893C28>
Но мы всегда можем переопределить метод и вернуть более понятное описание объекта.
#theory // Just Python9 877
Управляем браузером. Библиотека Selenium.
При выполнении данного кода откроется браузер Firefox и перейдет на сайт google.com.
Возможности:
1. Автоматизация работы браузера.
2. Парсинг сайтов.
3. Нажатие на кнопки.
4. Эмуляция различных действий пользователя.
5. Отправка GET/POST запросов.
6. Открытие окон.
7. Поддержка основных браузеров.
Документация, установка.
9 877
Анонимные функции
Короткая запись простой функции, необходимая для решения одной конкретной задачи удобная вещь. Дабы не нагромождать код кучей функцией, использующихся один раз удобнее использовать анонимные функции.
lambda - ключевое слово для объявления анонимной функции.
На примере
1. Обычная функция сложения
2. Анонимная функция, помещенная в переменную
3. Обособленная анонимная функция в операторе print().
#theory // Just Python
9 877
Передаем содержимое словаря
Две звездочки перед объектом словаря позволяют передать содержимое словаря как аргументы. Где ключи словаря - имя аргумента, а значения передаются в функцию.
Это полезно, при обработке словарей, для написания функций оберток, передающих все полученные значения.
Обе конструкции print в конце примера выполняют одинаковые действия.
#theory // Just Python
