Получи случайную криптовалюту за регистрацию!

Python академия

Логотип телеграм канала @pythonofff — Python академия P
Логотип телеграм канала @pythonofff — Python академия
Адрес канала: @pythonofff
Категории: Технологии
Язык: Русский
Количество подписчиков: 6.30K
Описание канала:

Python академия. Учи Python быстро и легко. По всем вопросам @evgenycarter

Рейтинги и Отзывы

2.33

3 отзыва

Оценить канал pythonofff и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

1

3 звезд

0

2 звезд

1

1 звезд

1


Последние сообщения 13

2022-05-07 08:00:11
Библиотека Numpy

При создании массивом мы получаем тип ndarray.

Рассмотрим наиболее часты атрибуты (не методы!) применимые к массивам:

ndim - число измерений (чаще их называют "оси") массива.

shape - размеры массива, его форма. Это кортеж натуральных чисел, показывающий длину массива по каждой оси. Для матрицы из n строк и m столбов, shape будет (n,m). Число элементов кортежа shape равно ndim.

size - количество элементов массива. Очевидно, равно произведению всех элементов атрибута shape.

dtype - объект, описывающий тип элементов массива

itemsize - размер каждого элемента массива в байтах.

data - буфер, содержащий фактические элементы массива. Обычно мы не используем этот атрибут, так как обращаться к элементам массива проще всего с помощью индексов.

Подписывайтесь на канал @pythonofff
1.1K views05:00
Открыть/Комментировать
2022-05-06 23:10:16
Как перевернуть слово задом наперед в python?

Вы можете использовать [::-1] чтобы перевернуть слово задом наперед.

str_example = "тестовая строка как пример."
reversed_string = str_example[::-1]
# Вывод: .ремирп как акортс яавотсет
print(reversed_string)

Подписывайтесь на канал @pythonofff
1.1K views20:10
Открыть/Комментировать
2022-05-06 11:36:43
Использование Event.wait() в многопоточности Python.

Модуль threading предоставляет Event(), которого можно использовать как time.sleep(). Однако преимущество Event() в том, что он более отзывчив. Причина в том, что когда событие установлено, программа сразу выходит из цикла. В Python с time.sleep() коду надо будет подождать завершения вызова sleep() до выхода из потока.

Причина, по которой здесь лучше использовать wait() в том, что он не блокируется, в то время, как time.sleep() блокируется. Это значит, что при использовании time.sleep() вы заблокируете выполнение основного потока, пока тот будет ждать завершения вызова sleep(). wait() решает данную проблему.

Затем устанавливаются циклы для проверки, настроено ли событие event. Если это не так, тогда код выведет сообщение и немного подождет перед повторной проверкой. Для установки события можно воспользоваться комбинацией ^Ctrl+C. Как только событие установлено, worker() вернется, и цикл оборвется, завершив программу

Подписывайтесь на канал @pythonofff
1.1K views08:36
Открыть/Комментировать
2022-05-05 21:27:01
Создаём свой контекстный менеджер

Привет, в четверг на канале вышел небольшой пост про контекстные менеджеры. Сейчас разберём, как их можно реализовать.

В любом контекстном менеджере должны быть определены методы __enter__ и __exit__. В качестве примера создадим подобие уже существующего open.

Метод __enter__ вызывается автоматически и возвращает объект файла. После того, как блок with заканчивается, также вызывается метод __exit__, который закрывает файл.

А более подробно мы рассказываем про эту тему в нашем курсе по продвинутым темам.

Подписывайтесь на канал @pythonofff
1.1K views18:27
Открыть/Комментировать
2022-05-05 15:00:29
Ядовитый питон. Пишем на Python простейшую малварь: локер, шифровальщик и вирус

Почему кому-то может прийти в голову писать малварь на Python? Мы сделаем это, чтобы изучить общие принципы вредоносостроения, а заодно ты попрактикуешься в использовании этого языка и сможешь применять полученные знания в других целях. К тому же малварь на Python таки попадается в дикой природе, и далеко не все антивирусы обращают на нее внимание.


Чаще всего Python применяют для создания бэкдоров в софте, чтобы загружать и исполнять любой код на зараженной машине. Так, в 2017 году сотрудники компании Dr.Web обнаружили Python.BackDoor.33, а 8 мая 2019 года был замечен Mac.BackDoor.Siggen.20. Другой троян — RAT Python крал пользовательские данные с зараженных устройств и использовал Telegram в качестве канала передачи данных.

Подписывайтесь на канал @pythonofff
1.2K views12:00
Открыть/Комментировать
2022-05-05 09:19:55
Использование time.sleep() в threading

Python Logging Cookbook является хорошим примером использования time.sleep(). Модуль логирования logging является потоко-безопасным, поэтому в данном примере он будет полезнее, чем операторы print().

Здесь для создания двух потоков используется модуль Python threading. Также создается объект входа, что будет вводить threadName в stdout. Затем начинаются оба потока и инициируется цикл для каждого входа из главного потока. Для фиксирования пользователя используется KeyboardInterrupt при нажатии ^Ctrl+C.

Подписывайтесь на канал @pythonofff
1.1K views06:19
Открыть/Комментировать
2022-05-04 19:35:02
Python Requests анализ запроса

При составлении запроса стоит иметь в виду, что перед его фактической отправкой на целевой сервер библиотека requests выполняет определенную подготовку. Подготовка запроса включает в себя такие вещи, как проверка заголовков и сериализация содержимого JSON.

Если открыть .request, можно просмотреть PreparedRequest.

Проверка PreparedRequest открывает доступ ко всей информации о выполняемом запросе. Это может быть пейлоад, URL, заголовки, аутентификация и многое другое.

Подписывайтесь на канал @pythonofff
3.8K views16:35
Открыть/Комментировать
2022-05-04 14:01:00
Как убрать табуляцию в python?

Вы можете использовать метод строки .replace()

lineWithTabulation = "\tLine with tabulation"
print(lineWithTabulation)

lineWithoutTabulation = lineWithTabulation.replace('\t', '')
print(lineWithoutTabulation)

# Вывод :
# Line with tabulation
# Line with tabulation


Подписывайтесь на канал @pythonofff
1.1K views11:01
Открыть/Комментировать
2022-05-04 08:27:21
Хеширование паролей Python
Для Python 3.x


Здесь пароли будут хешироваться для последующего сохранения в базе данных.

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

salt используется для предотвращения перебора по словарю (dictionary attack) и атак радужной таблицы (rainbow tables attacks).

Подписывайтесь на канал @pythonofff
3.8K views05:27
Открыть/Комментировать
2022-05-03 15:02:05
Хранение хеша и соли

Для хранения можно использовать методы JSON, SQL, CSV и даже простой текстовый файл. Убедитесь, что пароль нигде не сохранен, ведь в этом состоит главная цель — избежать необходимость сохранения действующего пароля в исходном виде.

Если вы ограничены только одним местом для хранения, можете добавить соль и пароль вместе и потом сохранить их. Можно будет разделить их во время чтения, когда вам будет известна длина соли и ключа.

Подписывайтесь на канал @pythonofff
1.2K views12:02
Открыть/Комментировать