Python Learning
34.2K subscribers
1.92K photos
8 videos
7 files
924 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://yangx.top/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
Что выведет код?
Anonymous Quiz
11%
love
28%
python
14%
hi
32%
None
15%
Не знаю
🤔19👍18🔥1
Удаление красного, зеленого и синего канала из цветного изображения в Python

Чтобы удалить красный канал из цветного изображения, считайте изображение в массив BGR с помощью cv2.imread() и присвойте нули 2D-массиву, соответствующему красному каналу.

В этом примере мы удалим красный канал со следующего изображения.

Ознакомиться подробнее c удалением других каналов можно здесь.
👍131
Генерируем пароли и токены

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

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

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

Подробнее про модуль secrets можно почитать здесь.
👍224
Beautiful soup

Когда вы вытаскиваете HTML с какого-то сайта, то сначала проводите его разбор и отсекаете все ненужное. Beautiful Soup — это Python-библиотека по сбору данных из HTML и XML-файлов. В ней представлены простые методы для навигации, поиска и парсинга. Это очень мощная библиотека, которая умеет обрабатывать все виды HTML, даже если он сломан. Уж поверьте моему опыту, HTML ломается довольно часто, поэтому такая функция окажется как нельзя кстати.

Beautiful Soup парсит все, что захотите. С его помощью вы, например, можете вытащить все ссылки или найти заголовок таблицы, выделенный жирным. На первой картинке приведен HTML, а на второй - несколько примеров работы с ним. Документация доступна по ссылке.
👍30🏆72😢2🤔1
2
Что выведет программа?
Anonymous Quiz
25%
False False
14%
False True
41%
True False
19%
True True
🤔40👍11🎉6🗿4🔥3🥰1😢1🏆1🆒1
Вычисление размера объектов

Так как в python всё является объектами, мы можем вычислить размер практически у всего с помощью sys.getsizeof().

Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные данные сборщика мусора. Хотя все встроенные объекты вернут верный размер, в общем случае это не будет так для пользовательских объектов.
👍21🎉6
Лимит рекурсии

В Python иногда возникает RecursionError во время создания рекурсивных алгоритмов (даже при решении простых университетских задач), однако с помощью модуля sys можно изменить максимальную глубину рекурсии, чтобы избежать появления этой ошибки.

Но надо помнить, что делать это — опасное занятие, ибо каждый новый вызов занимает достаточно много памяти. В реальных проектах нужно стараться использовать не рекурсию, а обычные циклы.
👍28🎉21
2
Что выведет код?
Anonymous Quiz
46%
False
7%
None
14%
Error
32%
True
2%
Другое
🆒23👍8🤔6🗿4🔥2💯1
Как вернуть двоичный код целого числа?

Используйте функцию bin().
👍35🆒9💯2
#Вопросы_с_собеседования

Когда выполняется except, в блоке try-except?

Блок try-except обычно используется, когда мы хотим что-то выполнить, если возникли ошибки. except выполняется, когда код в блоке try вызвал ошибки.
👍33🆒6💯4
Разбор веб-страниц

Разбор веб-страниц (scraping) нужен для многих целей: от борьбы с сервисами, которые не предоставляют API, до создания поисковых систем.

Для демонстрации мы извлечем заголовки новостей с главной страницы журнала. C помощью библиотеки requests и парсера HTML BeautifulSoup мы можем сделать это всего в несколько строк.

Установим библиотеки: pip3 install requests beautifulsoup4. Теперь откроем xakep.ru в отладчике браузера и увидим, что заголовки новостей находятся в тэгах <h3 class="entry-title">, но не напрямую, а во вложенных <a> и <span>. К счастью для нас, BeautifulSoup поддерживает селекторы CSS3, а в ее стандарте tag1 tag2 как раз означает «<tag2> вложенный в <tag1>. То есть, наш селектор для заголовков новостей будет h3.entry-title a span.

Сохрани в файл вроде xakep-headings.py и выполни python3 xakep-headings.py или просто скопируй в интерпретатор, и ты увидишь все свежие новости.
👍24🔥3👨‍💻3💯21🥰1🤔1🆒1
6 Python декораторов, которые значительно упростят ваш код

Декораторы могут помочь вам писать меньше кода для реализации сложной логики и повторно использовать его повсюду.

Смотреть статью
👍32💯2👨‍💻2
👍11
Что выведет код?
Anonymous Quiz
17%
2
18%
22
6%
222
14%
2222
38%
Error
7%
Другое
🆒17😱12👍8💯6🔥1
Метод Counter.most_common()

Возвращает список из n наиболее распространенных элементов и их количество от наиболее распространенных до наименее. Если n опущено или None, метод cnt.most_common() возвращает все элементы в счетчике.

Элементы с равным количеством упорядочены в порядке, в котором они встречаются первыми.
💯13👍10🆒41🔥1
Логические значения чисел

Функция bool() преобразует объект в логическое значение. Язык также позволяет производить логические операции and, or, not с числами.

При преобразовании чисел к логическим значениям все числа кроме нуля преобразовываются в True. Лишь 0 переходит в False.

Логические операции с числами работают согласно таблицам истинности операторов.
👍22👨‍💻4💯1
Проверяем правильность пути к файлу

Метод os.path.isfile() возвращает логическое значение класса bool. Метод os.path.isfile() возвращает True, если указанный путь является существующим обычным файлом. В противном случае возвращается False.
👍17💯2👨‍💻2