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

1. Метод triangular в Python

Метод triangular — это встроенный метод модуля random. Он используется для возврата случайного числа с плавающей запятой в диапазоне. Отличие от uniform заключается в третьем параметре mode. Параметр mode дает возможность взвесить возможный результат ближе к одному из двух других значений параметра. В данном примере большинство значений будут ближе к 10, чем к 100.

import random

low = 10
high = 100
mode = 20

print(random.triangular(low, high, mode))

2. Метод stdev

Метод stdev из модуля statistics вычисляет стандартное отклонение выборки данных. Стандартное отклонение — это мера того, насколько разбросаны числа. Большое стандартное отклонение указывает на то, что данные разбросаны. Небольшое стандартное отклонение указывает на то, что данные сгруппированы близко к среднему значению. Стандартное отклонение выражается в тех же единицах, что и данные.

import statistics
# 3.7416573867739413
print(statistics.stdev([1, 3, 5, 7, 9, 11]))

3. Функция getpass()

Функция getpass() модуля getpass печатает подсказку и запрашивает у пользователя пароль без повторения. Причем при вводе пароля в окне терминала, он не отображается.

from getpass import getpass
password = getpass("Введите пароль: ")
print(password)

4. Метод swapcase

Думаю многим из вас знакомы методы lower и upper объекта строки, но есть не менее важный метод swapcase, который преобразует все символы верхнего регистра в нижний регистр, а все символы нижнего регистра в символы верхнего регистра данной строки и возвращает ее.

string = "Hello world"
# hELLO WORLD
print(string.swapcase())

5. Модуль dis в Python

Модуль dis поддерживает анализ байт-кода CPython путем его обратного разложения. Быть может, вы уже знаете(или не знаете) о том, что Python компилирует исходный код в набор инструкций. Они и называются «байт-кодом». А модуль dis позволяет их обрабатывать. Это отличный инструмент для отладки.

Вот пример из книги Fluent Python:

t = (1, 2, [3, 4])
t[2] += [30, 40]

Если выполнить данный кусок кода то будет выведена ошибка: TypeError: ‘tuple’ object does not support item assignment.

Выскочила ошибка, но операция все-таки завершилась. Как так? Давайте внимательнее изучим байт-код (см. комментарии рядом с важными строками):

dis.dis("t[a] += b")
  1           0 LOAD_NAME                0 (t)
              2 LOAD_NAME                1 (a)
              4 DUP_TOP_TWO
              6 BINARY_SUBSCR
              8 LOAD_NAME                2 (b)
             10 INPLACE_ADD --> (value in t[a]) += b --> успешно выполняется, поскольку это изменяемый список
             12 ROT_THREE
             14 STORE_SUBSCR --> Assign t[a] = our list --> выдает ошибку, поскольку t[a] не изменяемый.
             16 LOAD_CONST               0 (None)
             18 RETURN_VALUE

6. Функция platform()

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

import platform
print(platform.platform())

7. Функция fill()

Функция fill модуля textwrapпринимает текст в качестве входных данных и возвращает отформатированный текст. Текст выравнивается по левому краю, первая строка сохраняет свой отступ, а пробелы в начале каждой последующей строки вставляются в абзац.

import textwrap as tw
text = '''
    Модуль `textwrap` может использоваться для форматирования
    текста в ситуациях, когда требуется красивая печать. Он предлагает 
    функциональность, которую можно найти в текстовых редакторах.
    '''
print(tw.fill(text, width=50))

Надеюсь данная статья была полезна, и вы узнали новые функции(методы) из встроенных модулей Python.

Больше информации всегда будет в документации
Скачать Python можно здесь
Бэкенд на Python в Телеграм
Наш канал в Телеграм