Python tricks | Хитрости Питона
5.67K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

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

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
Функция compress()

Функция compress() модуля itertools создает итератор, который фильтрует элементы из данных data, возвращая только те, которые имеют соответствующий элемент, равный True или 1 в последовательности selectors.

Функция itertools.compress() останавливается, когда исчерпана последовательность данных data или selectors.
#1
Функция html.escape()

Функция html.escape() преобразует символы &, < и > в строке s в безопасные последовательности HTML.

Используйте эту функцию, если надо отобразить на HTML странице текст, который может содержать вышеуказанные символы. Это убережет от XXS-атаки - внедрение вредоносного JavaScript-кода.

Если необязательный флаг quote имеет значение True, то также переводятся символы (") и ('). Это поможет включить в HTML-атрибут значение, разделенное кавычками, например как в <a id="...">.
#2
Функция html.unescape()

Функция html.unescape() преобразует все именованные и числовые ссылки на символы (например &gt;, &#62;) в строке s в соответствующие символы Юникода. Другими словами, эта функция обратная html.escape()

Функция html.unescape() использует правила, определенные стандартом HTML 5 для допустимых и недопустимых ссылок на символы, а также список именованных ссылок на символы HTML 5.
Что выведет код?
Anonymous Quiz
6%
10
44%
8
20%
5
30%
Error
Функция asctime()

Функция asctime() модуля time преобразует кортеж или struct_time, представляющие время, возвращаемое time.gmtime() или time.localtime(), в строку следующего вида: 'Fri Apr 24 15:13:37 2022'.

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

Если аргумент t не указан, используется текущее время, возвращаемое функцией time.localtime().

Функция time.asctime() не использует информацию о локали и не добавляет завершающий символ новой строки.
Функция monotonic()

Функция monotonic() модуля time возвращает значение, в долях секунды "монотонных" часов, то есть часов, которые не могут двигаться назад, т. е. не зависят от корректировки/обновления системных часов.

Контрольная точка возвращаемого значения не определена, поэтому допустима только разница между результатами последовательных вызовов.

Функция time.monotonic() идеально подходит для измерения времени выполнения программ большой длительности так как не зависит от корректировки системных часов.

Функция time.monotonic_ns() похожа на time.monotonic(), но возвращает время в наносекундах. Работает не на всех платформах.
Что выведет код?
Anonymous Quiz
4%
0
55%
2
13%
None
27%
Error
Метод dict.update()

Метод dict.update() обновляет/дополняет словарь dict с помощью пар ключ-значение из other, перезаписывая существующие ключи новыми значениями из other. Если ключ в словаре отсутствует, то он добавляется. Метод ничего не возвращает.

Другими словами, метод производит дополнение одного словаря другим, добавляя (если ключа нет) или перезаписывая (если ключ есть) значения ключей исходного словаря.
Метод str.swapcase()

Метод str.swapcase() возвращает копию строки str с прописными символами, преобразованными в строчные и наоборот.

Другими словами метод меняет регистр символов в строке str.

Обратите внимание, что выражение str.swapcase().swapcase() == str не обязательно верно.
Что выведет код?
Anonymous Quiz
80%
JS
4%
C#
6%
None
10%
IndexError
Функция random.uniform()

Функция random.uniform() возвращает случайное число с плавающей запятой N из интервала [a,b] если a<b или из интервала [b,a] если b<a.
Функция random.getstate()

Функция random.getstate() возвращает кортеж с параметрами внутреннего состояния генератора, который может быть использован для воссоздания этого состояния.

Возвращаемый кортеж очень большой.