Python и 1000 уязвимостей
37.7K subscribers
1.85K photos
563 videos
27 files
1.98K links
Сила в единстве.

Сотрудничество: @workhouse_price

Канал на бирже:
https://telega.in/channels/osint_pythons/card

№ 5383975776
РКН: https://clck.ru/3FtTDH
Download Telegram
Что выведет код?
Anonymous Quiz
41%
0
17%
1
24%
-1
18%
Ошибку
🤯19👍123🔥1
📣 Оптимизация в Python | Эффективное использование модуля threading и asyncio

В данной статье мы погрузимся в мир многопоточности и асинхронного программирования на Python, изучая, как модуль threading может значительно улучшить работу с вводом-выводом.

Рассмотрим, как правильно завершать потоки при остановке приложения, чтобы избежать утечек ресурсов.
Научимся использовать пул потоков для распределения задач, что откроет доступ к мощным методам asyncio API, таким как gather, позволяющим дождаться результатов выполнения всех потоков.
Увидим, как эффективно интегрировать блокирующие API ввода-вывода, например, из библиотеки requests, в пул потоков, чтобы повысить производительность и сделать наше приложение более отзывчивым

🖥 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73
Media is too big
VIEW IN TELEGRAM
▶️ Gigacode и PyCharm | Используем ИИ в работе

Сегодня посмотрим как установить и использовать ИИ-ассистента Giga-Code от компании Сбертех, которым я пользуюсь уже несколько месяцев

Важно помнить, что это помощник (просто инструмент), а не заместитель. Он
не владеет всем контекстом, не знает задачи в целом, действует по вашим указаниям


Польза:
бесплатен
уменьшает время затраченное на написание кода, тестов, документации
улучшает качество документации
может отвечать на вопросы и анализировать ваше решение, помочь с поиском информации
мотивирует писать хороший код: верно выбирать имена переменным и функциям, указывать аннотации типов, использовать PEP8

👀 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥63
Что выведет код?
Anonymous Quiz
39%
0 1 2 0 1 2
6%
0 2 3 0 0 0
6%
–2 –4
49%
Ошибку
🤯22🤔97
📣 Головоломка «Сапёр» на Python в 66 строк и ее решение вероятностным алгоритмом

Писать головоломку будем оп нескольким требованиям:
Программа представляет собой консольный вариант головоломки Сапёр. Игровое поле печатается в stdout, колонки и поля нумеруются, каждый шаг консоль очищается от предыдущих данных.
При запуске программа принимает в качестве аргументов размер поля (ширину и высоту) и количество мин. По умолчанию, без передачи аргументов, создается игровое поле размером 10x10 с 10 минами.
Управление происходит путем передачи команд в стандартный ввод (stdin) в формате row col.
Первым ходом нельзя проиграть, т.е. ячейка, выбранная в первом ходе, не должна содержать мину. Также соседние ячейки не должны содержать мины.
Победа засчитывается, когда на игровом поле все незаминированные ячейки раскрыты, поражение – когда игрок открывает ячейку с миной. Последним ходом выводится соответствующее сообщение о победе или поражении и полностью открытое игровое поле.
Необходимо реализовать алгоритм решения головоломки. На каждом шаге программа печатает текущее состояние игры с сопутствующей справочной информацией

🖥 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥32
Media is too big
VIEW IN TELEGRAM
▶️ Список и кортеж

В видео рассмотрим особенности списков и кортежей: что хочет слышать работодатель, как хранятся в памяти, почему кортеж реально неизменяемый

Использование кортежей:
Используй [] для создания пустого списка ({} для словаря)
Если заранее известен размер, то не используй append (для 8000 добавлений выделяется 8600 ячеек памяти)
Используй листкомпс
Не пытайся заменять список кортежом, там где идет изменение размера

👀 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥1
👍17🤯71🔥1
📣 Как писать модульные тесты для функций в Python

С помощью этого руководства вы научитесь писать модульные тесты для функций Python

В данном руководстве, Вы научитесь:
Обращаться с модульными тестами в Python.
Использовать встроенный в Python модуль unittest для настройки и запуска модульных тестов, а также для написания тестовых примеров для проверки функций Python
Тестировать функции, которые вызывают исключения

🖥 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Media is too big
VIEW IN TELEGRAM
▶️ Паттерн Singleton (Одиночка) в Python

Singleton (Одиночка) – это шаблон предоставления глобального доступа к состоянию, гарантируется, что объект всегда будет один и тот же.

Нужен для одной точки доступа к ресурсам/данным и для того чтобы ресурсоемкие задачи сделать 1 раз

Monostate – это шаблон предоставления глобального доступа к состоянию, объекты при этом могут быть разными

Плюсы: 1 раз выполняем тяжелые задачи, имеем 1 вход для всей системы
Минусы: общесистемная глобальная переменная

Модуль в python – это Singleton!
Потому нам никуда от них не деться, даже если считать Singleton анти-паттерном


👀 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Что выведет код?
Anonymous Quiz
30%
1, 2, 3, 4
11%
1, 2, 3 + 4
34%
4
26%
Ошибку
🔥19🤔7🤯7
📣 Как обрабатывать ошибки в Python | Раскрываем значения ключевых слов try, except, else и finally

«Достаточно сложно найти ошибки в вашем коде, если вы ее ищете; еще сложнее, если вы думаете, что в вашем коде нет ошибок» – Стив МакКоннелл

В статье как можно реализовать обработку ошибок в Python с помощью блоков try/except для того, чтобы отлавливать потенциальные ошибки.

А также изучим, как использовать блоки else и finally, которые также связаны с методами обработки ошибок

🖥 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍154🔥1
Media is too big
VIEW IN TELEGRAM
▶️ Доступ к свойствам объекта | Property и slots

В видео обсудим интересный вопрос – как можно запретить менять наши атрибуты, реализовать логику изменения/получения атрибутов и как запретить добавлять объекту новые атрибуты.

_dict_ – это атрибут объектов в питоне, который хранит состояние
_setattr_ – вызывается при попытке установить атрибут
property – это удобный механизм создания геттеров и сеттеров
_slots_ – создан для уменьшения памяти, занимаемой объектами, но как побочное свойство – не даст добавить объекту новый атрибут

👀 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Что выведет код?
Anonymous Quiz
8%
0
8%
None
44%
True
30%
False
10%
Ошибку
🤔12👍9🤯4
👩‍💻 Полное руководство по пакету NumPy для научных расчетов в Python

NumPy (Numeric Python, Числовой Python) – это библиотека с открытым исходным кодом для работы с многомерными массивами и набор математических функций, которые применяются над ними

Это руководство научит вас основам NumPy, которые вы сможете использовать для вычислений в Python

🖥 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3
Media is too big
VIEW IN TELEGRAM
▶️ Магические методы в Python | Dunder методы

Dunder (двойное подчёркивание) или магические мыетод – это особые методы в Python, которые позволяют настраивать классы и объекты. Эти методы называются магическими, потому что они могут изменять поведение кода неожиданными способами


В видео поговорим об основных магических методах, которые могут добавить нашим классам самую разную функциональность и существенно поменять их поведение.

Затронем как именно они реализованы по-умолчанию, то есть как они работают, если их не реализовать

👀 Смотреть на YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤯2