🐍 Укус питона 🐍
2.88K subscribers
778 photos
4 videos
279 links
🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки.

👽 Админ - @it_dashka
🔊 Купить рекламу: https://telega.in/c/byteofpython

👉 Чат: @abyteofpython
👉 Поделиться с друзьями: @byteofpython
Download Telegram
Генерация капч

Модуль captcha
. Позволяет генерировать голосовые и визуальные капчи.

Модуль string. Хранит в себе строки с разными символами в разных регистрах.

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

🐍 Укус питона // 💬 Чат // #гайды #библиотеки #string #captcha
Что в результате выведет данный код в консоль?
Anonymous Quiz
29%
False
8%
ValueError
33%
True
8%
SyntaxError
23%
Невозможно определить
Операторы присваивания

Оператор =. Отвечает за запись значения в переменную

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

Оператор +=. Отвечает за операцию сложения и запись результата в переменную.

Оператор -=. Отвечает за операции вычитания и запись результата в переменную.

Оператор *=. Отвечает за умножение и запись результата в переменную.

Оператор **=. Отвечает за возведение числа в степень и запись результата в переменную.

Оператор /=. Отвечает за деление и запись результата в переменную.

Оператор //=. Отвечает за целочисленное деление и запись результата в переменную.

Оператор %=. Отвечает за получение и запись в переменную остатка от деления.

🐍 Укус питона // 💬 Чат // #теория #операторы
Что в результате выведет данный код в консоль?
Anonymous Quiz
37%
True, True, True
23%
False, False, False
14%
True, False, False
10%
True, False, True
17%
ValueError
Функция zip

Функция zip. Принимает на вход неограниченное количество итерируемых объектов и возвращает итератор кортежей, где каждый кортеж содержит элементы итерации аргументов с тем же индексом что и картеж. Функция zip ленива - это значит что элементы не будут обрабатываться, пока не будет повторена итерация, например циклом for/in или заключением в список list(zip()).

В примерах выше мы видим как с помощью этой функции можно сгенерировать лист или словарь.

🐍 Укус питона // 💬 Чат // #теория #функции #zip
Что в результате выведет данный код в консоль?
Anonymous Quiz
19%
a, None
27%
None, 1
34%
a, 1
13%
AttributeError
8%
SyntaxError
Случайные числа и токены

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

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

В первом примере мы используем функцию randbelow она принимает n и возвращает рандомное число из [0, n).

Во втором примере мы используем функцию token_urlsafe она принимает nbytes и возвращает случайную текстовую строку, содержащую nbytes случайных байтов. Текст закодирован в Base64, поэтому в среднем каждый байт содержит примерно 1,3 символа. Если nbytes не указан, используется разумное значение по умолчанию.

🐍 Укус питона // 💬 Чат // #гайды #модуль #secrets
Что в результате выведет данный код в консоль?
Anonymous Quiz
9%
ImportError
43%
True
14%
SyntaxError
34%
False
Функция eval

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

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

Если оба словаря опущены, выражение выполняется с глобальными и локальными значениями в среде, где функция вызывается. Обратите внимание, что eval не имеет доступа к вложенным областям.

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

🐍 Укус питона // 💬 Чат // #теория #функции #eval
Что в результате выведет данный код в консоль?
Anonymous Quiz
45%
6, True
11%
ImportError
33%
6, False
12%
AttributeError
Метод join

Метод строки join принимает в качестве аргумента итерируемый объект содержащий строки и возвращает объединение элементов при помощи строки разделителя.

Если в последовательности есть какие-либо не строковые значения, включая байтовые строки, то поднимается исключение TypeError.

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

🐍 Укус питона // 💬 Чат // #теория #функции #методы #join
Что в результате выведет данный код в консоль?
Anonymous Quiz
48%
1998, 2000
12%
1998, NameError
23%
1998, SyntaxError
17%
1998, 1001
Функция sum

Функция sum принимает на вход любой итерируемый объект и необязательный аргумент start со значением по умолчанию 0. Возвращает сумму всех элементов с лева на права начиная с числа start.

В случае передачи в sum объекта содержащего не числовые значения вызывается исключение TypeError.

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

🐍 Укус питона // 💬 Чат // #теория #функции #sum