This media is not supported in your browser
VIEW IN TELEGRAM
Datacamp открыл бесплатный доступ ко всем своим курсам на неделю
Что можно изучить:
> Python, Spark, анализ данных, data engineering
> Машинное обучение, Power BI и многое другое
> Практические проекты
> Сертификаты, которые можно добавить в резюме
Всё бесплатно на протяжении недели через DataCamp😡
👉 @PythonPortal
Что можно изучить:
> Python, Spark, анализ данных, data engineering
> Машинное обучение, Power BI и многое другое
> Практические проекты
> Сертификаты, которые можно добавить в резюме
Всё бесплатно на протяжении недели через DataCamp
Please open Telegram to view this post
VIEW IN TELEGRAM
Функция filter
Функция
Предположим, у вас есть список чисел, и вы хотите отфильтровать из него только чётные числа. Вы можете использовать функцию filter:
Результат:
Обратите внимание, что функция filter использует критерий, заданный функцией
Функция filter() — мощный инструмент для выбора элементов из итерируемых объектов на основе пользовательских условий. Ниже приведены другие способы использования функции filter() в коде:
Фильтрация строк по длине
Если у вас есть список строк, и вы хотите отфильтровать строки определённой длины, вы можете использовать функцию filter(). Предположим, вы хотите получить из списка только те строки, длина которых меньше 5 символов. Вот пример того, как это можно сделать:
Результат:
👉 @PythonPortal
Функция
filter()
используется для фильтрации элементов из итерируемого объекта на основе заданного условия. Она принимает два аргумента: функцию и итерируемый объект. Возвращает итератор, содержащий элементы, которые удовлетворяют условию.Предположим, у вас есть список чисел, и вы хотите отфильтровать из него только чётные числа. Вы можете использовать функцию filter:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
even_numbers
Результат:
[2, 4, 6, 8]
Обратите внимание, что функция filter использует критерий, заданный функцией
lambda
, чтобы отфильтровать чётные числа из списка numbers
. filter возвращает итератор, поэтому мы используем функцию list()
, чтобы извлечь чётные числа в виде списка.Функция filter() — мощный инструмент для выбора элементов из итерируемых объектов на основе пользовательских условий. Ниже приведены другие способы использования функции filter() в коде:
Фильтрация строк по длине
Если у вас есть список строк, и вы хотите отфильтровать строки определённой длины, вы можете использовать функцию filter(). Предположим, вы хотите получить из списка только те строки, длина которых меньше 5 символов. Вот пример того, как это можно сделать:
words = ["apple", "banana", "kiwi", "grape"]
# Функция, передаваемая в filter
def filter_words(x):
return x if len(x) < 5 else None
short_words = list(filter(filter_words, words))
print(short_words)
Результат:
['kiwi']
Please open Telegram to view this post
VIEW IN TELEGRAM
Структуры данных в Python
Это база, это знать надо🧠
LIST
> создаются с помощью синтаксиса:
> имеют методы, такие как:
> состоят из упорядоченных групп элементов
> итерируются циклами
ELEMENTS
> находятся по индексам
> могут быть изменены через присваивание:
> могут быть типов: int, string, list, …
INDEXES
> используют синтаксис:
> вперёд: от 0 до length-1
> назад: от -1 до -length
> нужны для присваивания
LOOPS
> проходят по списку последовательно
> часто используют идиомы, например:
TUPLES
> неизменяемы
👉 @PythonPortal
Это база, это знать надо
LIST
> создаются с помощью синтаксиса:
myList = []
> имеют методы, такие как:
.sort(), .append()
> состоят из упорядоченных групп элементов
> итерируются циклами
ELEMENTS
> находятся по индексам
> могут быть изменены через присваивание:
myList[ind] = x
> могут быть типов: int, string, list, …
INDEXES
> используют синтаксис:
myList[ind]
> вперёд: от 0 до length-1
> назад: от -1 до -length
> нужны для присваивания
LOOPS
> проходят по списку последовательно
> часто используют идиомы, например:
for elem in myList:
# делаем что-то
TUPLES
> неизменяемы
Please open Telegram to view this post
VIEW IN TELEGRAM
Изменение ключей словаря
Ключи словаря являются неизменяемыми. В Python не существует прямого способа изменить ключ словаря. Однако можно использовать метод
Допустим, мы хотим заменить ключ
Результат:
Как видно, ключ "school" был заменён на "university". Учтите, что данный процесс по сути создаёт новый ключ, сохраняя исходное значение🙂
👉 @PythonPortal
Ключи словаря являются неизменяемыми. В Python не существует прямого способа изменить ключ словаря. Однако можно использовать метод
pop()
для изменения или создания нового ключа со значением из существующего ключа.Допустим, мы хотим заменить ключ
"school"
на "university"
в приведённом ниже словаре. Первый шаг — использовать метод pop()
для удаления старого ключа и получения его значения. Второй шаг — создать новый ключ и присвоить ему значение удалённого ключа. Смотрите код ниже:# Исходный словарь
my_dict = {'school': 'Yale', 'age': 22}
# Шаг 1: Удалить старый ключ и получить его значение
old_value = my_dict.pop('school')
# Шаг 2: Создать новый ключ с нужным именем и присвоить значение
my_dict['university'] = old_value
print(my_dict)
Результат:
{'age': 22, 'university': 'Yale'}
Как видно, ключ "school" был заменён на "university". Учтите, что данный процесс по сути создаёт новый ключ, сохраняя исходное значение
Please open Telegram to view this post
VIEW IN TELEGRAM
Нашёл топчик для прокачки алгоритмов и структур данных
Курс "A First Course on Data Structures in Python" — интерактивная книга с кодом и объяснениями написанная Дональдом Р. Шихи, профессором компьютерных наук в North Carolina State University
> Всё на Python
> никакой воды
> Всё с примерами и тестами
> Отлично заходит после базового Python
Читаем и прокачиваем мозг бесплатно — тут📖
👉 @PythonPortal
Курс "A First Course on Data Structures in Python" — интерактивная книга с кодом и объяснениями написанная Дональдом Р. Шихи, профессором компьютерных наук в North Carolina State University
> Всё на Python
> никакой воды
> Всё с примерами и тестами
> Отлично заходит после базового Python
Читаем и прокачиваем мозг бесплатно — тут
Please open Telegram to view this post
VIEW IN TELEGRAM
Python включает очень полезную библиотеку
Вот пример:
это список строк, среди которых ищем похожие.
Ищет строки, похожие на "appel". Вернёт:
→ По степени схожести.
Ищет похожие на "pa". Вернёт:
Ищет похожие на "par". Вернёт:
→ parade похожа по началу.
👉 @PythonPortal
difflib
. С её помощью можно находить наиболее похожие строки в списке строк.Вот пример:
words = ["apple", "ape", "appeal", "par", "parade"]
это список строк, среди которых ищем похожие.
difflib.get_close_matches("appel", words)
Ищет строки, похожие на "appel". Вернёт:
['appeal', 'apple', 'ape']
→ По степени схожести.
difflib.get_close_matches("pa", words)
Ищет похожие на "pa". Вернёт:
['par']
difflib.get_close_matches("par", words)
Ищет похожие на "par". Вернёт:
['par', 'parade']
→ parade похожа по началу.
Please open Telegram to view this post
VIEW IN TELEGRAM
У CISCO есть 2 курса по Python полностью БЕСПЛАТНО
На английском языке и разработаны для получения официальных сертификатов Python Institute.
Содержат практические проекты и много часов учебного контента: начать😡
👉 @PythonPortal
На английском языке и разработаны для получения официальных сертификатов Python Institute.
Содержат практические проекты и много часов учебного контента: начать
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Python:
В
🔸 '%Y-%m-%d %H:%M:%S.%f' — формат строки:
> %Y — год (4 цифры)
> %m — месяц
> %d — день
> %H — часы (24ч)
> %M — минуты
> %S — секунды
> %f — микросекунды
Результат:
То есть строка успешно преобразована в объект datetime со всеми компонентами, включая микросекунды.
Это полезно, когда нужно точно работать с временными метками в логах, метриках, или временных рядах💩
👉 @PythonPortal
В
datetime.strptime()
используйте "%f
" для разбора микросекундfrom datetime import datetime
dt = datetime.strptime('2024-06-18 12:34:56.789123', '%Y-%m-%d %H:%M:%S.%f')
> %Y — год (4 цифры)
> %m — месяц
> %d — день
> %H — часы (24ч)
> %M — минуты
> %S — секунды
> %f — микросекунды
Результат:
datetime.datetime(2024, 6, 18, 12, 34, 56, 789123)
То есть строка успешно преобразована в объект datetime со всеми компонентами, включая микросекунды.
Это полезно, когда нужно точно работать с временными метками в логах, метриках, или временных рядах
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Это находка дня: Code2Tutorial
Он позволяет мгновенно превратить любой репозиторий на GitHub в чистый, интерактивный туториал.
Просто вставь ссылку на репо → получи структурированное обучение😱
👉 @PythonPortal
Он позволяет мгновенно превратить любой репозиторий на GitHub в чистый, интерактивный туториал.
Просто вставь ссылку на репо → получи структурированное обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
Нашёл годный инструмент для анализа безопасности Python-кода
Это CLI-утилита, которая автоматически сканирует исходники на уязвимости
Анализирует:
– небезопасные импорты
– инъекции
– проблемы с сериализацией
– утечки секретов и т.д.
Подходит для CI/CD пайплайнов и ревью кода.
Интеграция простая, работает быстро —> bandit❤️
👉 @PythonPortal
Это CLI-утилита, которая автоматически сканирует исходники на уязвимости
Анализирует:
– небезопасные импорты
– инъекции
– проблемы с сериализацией
– утечки секретов и т.д.
Подходит для CI/CD пайплайнов и ревью кода.
Интеграция простая, работает быстро —> bandit
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
12 мощных инструментов для ваших ИИ-агентов
Вот краткое описание функций каждого из них
1. FileReadTool
Этот инструмент мгновенно извлекает данные из локальной файловой системы.
2. FileWriterTool
Позволяет агенту создавать или перезаписывать любые файлы.
3. CodeInterpreterTool
Мощный инструмент для выполнения кода на Python 3 в защищённой, изолированной среде
4. ScrapeWebsiteTool
Инструмент, предназначенный для извлечения и чтения содержимого указанного веб-сайта.
5. SerperDevTool
Позволяет агенту выполнять поиск в Google.
6. DirectoryReadTool
Позволяет агенту получать список содержимого папок и метаданные. Полезно для реализации RAG на основе файловой системы.
7. FirecrawlSearchTool
Инструмент, предназначенный для поиска по веб-сайтам и преобразования их содержимого в чистый Markdown или структурированные данные, пригодные для обработки агентами или языковыми моделями (LLM).
8. BrowserbaseLoadTool
Browserbase — это платформа для разработчиков, предназначенная для надёжного запуска, управления и мониторинга безголовых браузеров.
Этот инструмент позволяет запускать сессии безголового Chrome, которыми может управлять агент.
9. PDFSearchTool
Семантический RAG (извлечение и генерация с подсказками) по PDF-документам.
10. GithubSearchTool
Предоставляет агентам доступ к GitHub и возможность выполнять RAG по исходному коду.
11. TXTSearchTool
Молниеносное встраивание и поиск по текстовым файлам.
12. L2SQLTool
Инструмент Text2SQL, преобразующий естественный язык в SQL-запросы для поиска по структурированным базам данных.
👉 @PythonPortal
Вот краткое описание функций каждого из них
1. FileReadTool
Этот инструмент мгновенно извлекает данные из локальной файловой системы.
2. FileWriterTool
Позволяет агенту создавать или перезаписывать любые файлы.
3. CodeInterpreterTool
Мощный инструмент для выполнения кода на Python 3 в защищённой, изолированной среде
4. ScrapeWebsiteTool
Инструмент, предназначенный для извлечения и чтения содержимого указанного веб-сайта.
5. SerperDevTool
Позволяет агенту выполнять поиск в Google.
6. DirectoryReadTool
Позволяет агенту получать список содержимого папок и метаданные. Полезно для реализации RAG на основе файловой системы.
7. FirecrawlSearchTool
Инструмент, предназначенный для поиска по веб-сайтам и преобразования их содержимого в чистый Markdown или структурированные данные, пригодные для обработки агентами или языковыми моделями (LLM).
8. BrowserbaseLoadTool
Browserbase — это платформа для разработчиков, предназначенная для надёжного запуска, управления и мониторинга безголовых браузеров.
Этот инструмент позволяет запускать сессии безголового Chrome, которыми может управлять агент.
9. PDFSearchTool
Семантический RAG (извлечение и генерация с подсказками) по PDF-документам.
10. GithubSearchTool
Предоставляет агентам доступ к GitHub и возможность выполнять RAG по исходному коду.
11. TXTSearchTool
Молниеносное встраивание и поиск по текстовым файлам.
12. L2SQLTool
Инструмент Text2SQL, преобразующий естественный язык в SQL-запросы для поиска по структурированным базам данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по чистому коду на Python:
Проверяйте качество кода внутри CI-пайплайна с помощью этих библиотек:
• flake8 — контроль соблюдения стиля (PEP8)
• black — автоформатирование кода
• isort — сортировка и оптимизация импортов
• bandit — анализ кода на уязвимости безопасности
• safety — проверка зависимостей на известные уязвимости
👉 @PythonPortal
Проверяйте качество кода внутри CI-пайплайна с помощью этих библиотек:
• flake8 — контроль соблюдения стиля (PEP8)
• black — автоформатирование кода
• isort — сортировка и оптимизация импортов
• bandit — анализ кода на уязвимости безопасности
• safety — проверка зависимостей на известные уязвимости
Please open Telegram to view this post
VIEW IN TELEGRAM
ТОП‑7 расширений для прокачки VSCode, Cursor и Windsurf: 📝
① Console Ninja
Показывает вывод консоли прямо в редакторе
② Error Lens
Выводит ошибки линтера и компиляции прямо в строке кода
③ Image Preview
Показывает превью изображений при наведении курсора
④ REST Client
Позволяет делать HTTP‑запросы и получать ответы прямо в редакторе
⑤ Version Lens
Управление версиями и обновление зависимостей из
⑥ Highlight on Copy
Мерцающая подсветка скопированного текста - видно, что именно ты скопировал
⑦ Symbols
Лучшая подборка иконок для типов файлов - делает интерфейс визуально чище
👉 @PythonPortal
① Console Ninja
Показывает вывод консоли прямо в редакторе
② Error Lens
Выводит ошибки линтера и компиляции прямо в строке кода
③ Image Preview
Показывает превью изображений при наведении курсора
④ REST Client
Позволяет делать HTTP‑запросы и получать ответы прямо в редакторе
⑤ Version Lens
Управление версиями и обновление зависимостей из
package.json
и не только⑥ Highlight on Copy
Мерцающая подсветка скопированного текста - видно, что именно ты скопировал
⑦ Symbols
Лучшая подборка иконок для типов файлов - делает интерфейс визуально чище
Please open Telegram to view this post
VIEW IN TELEGRAM
Python Portal
uv – это потрясающе! 😮 Вы можете запускать Python-скрипты без необходимости беспокоиться о виртуальном окружении, установке зависимостей или версиях Python! Вот всё, что нужно: 🟢 Укажите зависимости в начале файла 🟢 Запустите команду: uv run your_script.py…
Вы можете выполнить
Команда
Не нужно создавать виртуальное окружение, устанавливать пакеты и т.д.☺️
👉 @PythonPortal
uv add --script /path/to/script.py
, чтобы добавить встроенные зависимости в Python-скрипт. Если заголовок скрипта ещё не существует, uv сгенерирует его автоматически Команда
uv run http://script.py
выполнит скрипт со всеми необходимыми зависимостями.Не нужно создавать виртуальное окружение, устанавливать пакеты и т.д.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Этот репозиторий на GitHub настоящая находка для каждого дата-сайентиста
DS Interactive Python — это репозиторий с интерактивными дашбордами для изучения статистики, моделей машинного обучения и других концепций Data Science.
Темы включают: PCA, бэггинг и бустинг, кластеризацию, нейронные сети и др.
Полностью open-source и бесплатен😮
👉 @PythonPortal
DS Interactive Python — это репозиторий с интерактивными дашбордами для изучения статистики, моделей машинного обучения и других концепций Data Science.
Темы включают: PCA, бэггинг и бустинг, кластеризацию, нейронные сети и др.
Полностью open-source и бесплатен
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Python:
Используйте команду
Она быстро показывает:
> какие пакеты от него зависят
> почему пакет был установлен
На примере показано, как команда
помогает понять, почему библиотека pydantic присутствует в проекте и кто её тянет в зависимости.
Это очень полезно перед очисткой📝
👉 @PythonPortal
Используйте команду
poetry show --tree --why [package]
, чтобы отследить, откуда берётся пакет.Она быстро показывает:
> какие пакеты от него зависят
> почему пакет был установлен
На примере показано, как команда
poetry show --tree --why pydantic
помогает понять, почему библиотека pydantic присутствует в проекте и кто её тянет в зависимости.
Это очень полезно перед очисткой
pyproject.toml
или при разрешении конфликтов транзитивных зависимостей. Please open Telegram to view this post
VIEW IN TELEGRAM
Основатель школы автотестировщиков QA.GURU проводит бесплатный интенсив «Из баг-репортов до первого автотеста на Python»
🔜 Во вторник, 24 июня, в 12:00 по МСК. Бесплатно.
Вы начинающий автоматизатор или ручной тестировщик? Займите место сейчас▶
За несколько часов опытный инженер объяснит, как написать и запустить автотест🤓
Что сделаете за занятие:
— Напишете свой автотест на Python с нуля.
— Настроите рабочую среду за 10 минут (и она реально будет работать).
— Разберётесь, когда использовать Selenium, Playwright или Selene.
— Запустите автотест с Pytest и без него.
И совсем немного о трендах QA:
— Зачем компаниям QA, которые умеют писать код.
— Python + автотесты как минимальный входной билет в индустрию.
— Нейросети: конкурент или ассистент?
Станислав Васенков, основатель школы — в прошлом — Head of QAA pflb.ru, автор allure-notifications, победитель хакатона от EPAM, спикер Heisenbug.
Занять место▶
Реклама. Рекламодатель: ИП Васенков Станислав Олегович, ИНН 774335827403, erid: 2Vtzqw51r9U
Вы начинающий автоматизатор или ручной тестировщик? Займите место сейчас
За несколько часов опытный инженер объяснит, как написать и запустить автотест
Что сделаете за занятие:
— Напишете свой автотест на Python с нуля.
— Настроите рабочую среду за 10 минут (и она реально будет работать).
— Разберётесь, когда использовать Selenium, Playwright или Selene.
— Запустите автотест с Pytest и без него.
И совсем немного о трендах QA:
— Зачем компаниям QA, которые умеют писать код.
— Python + автотесты как минимальный входной билет в индустрию.
— Нейросети: конкурент или ассистент?
Станислав Васенков, основатель школы — в прошлом — Head of QAA pflb.ru, автор allure-notifications, победитель хакатона от EPAM, спикер Heisenbug.
Занять место
Реклама. Рекламодатель: ИП Васенков Станислав Олегович, ИНН 774335827403, erid: 2Vtzqw51r9U
Please open Telegram to view this post
VIEW IN TELEGRAM
Если хочешь стать скилловым бэкенд-разработчиком, то пили как можно больше проектов.
В этом курсе их три: генератор блогов, клон Netflix и клон Spotify.
Прокачаешь бэкенд на практике с Python, Django и PostgreSQL😄
👉 @PythonPortal
В этом курсе их три: генератор блогов, клон Netflix и клон Spotify.
Прокачаешь бэкенд на практике с Python, Django и PostgreSQL
Please open Telegram to view this post
VIEW IN TELEGRAM