В этой статье мы поговорим про библиотеки и работу с методами библиотеки.
Библиотека в программировании это заранее написанная программа, которая содержит в себе готовый набор методов, классов, которые используются в разработке программного обеспечения.
Метод это функция или процедура, принадлежащая к классу или объекту. Метод состоит из некоторого количества операторов для выполнения программы, а так же может иметь набор входных аргументов.
Python поставляется со многими библиотеками, которые решают многие задачи, а они в свою очередь имею какой-то набор методов, которыми мы можем пользоваться.
Чтобы использовать библиотеку в своей программе её нужно импортировать.
import "название библиотеки".
Давайте проимпортируем библиотеку random и разберём несколько интересных методов.
Листинг 1
# Импортируем библиотеку random
import random
# Теперь мы можем общаться к этой библиотеке по названию random
# Давайте получим случайное число в диапазоне от 0 - 10
# Для этого в библиотеке есть метод randint, который имеет 2 входных аргумента значение от (включительно) и значение по (включительно)
# Чтобы увидеть, что числа всегда разные давайте напишем цикл и добавим условие для выхода
while True:
value = random.randint(0, 10)
print(f"Вывод целого случайного числа: {value}")
# Если псевдослучайное число == 10, то мы должны выйти из цикла
if value == 10:
break
Вывод:
Вывод целого случайного числа: 9
Вывод целого случайного числа: 4
Вывод целого случайного числа: 0
Вывод целого случайного числа: 4
Вывод целого случайного числа: 3
Вывод целого случайного числа: 10
Как видно из листинга 1, то числа и правда выглядят случайными, если программу запускать несколько раз, то количество выводов в консоль всегда будет разное.
Помимо умения возвращать псевдослучайные числа, библиотека random умеет перемешивать списки. Напишем программу, которая сначала формирует список чисел с помощью метода randint, а затем перемешает их.
Листинг 2
# Создадим пустой список
int_list = []
# Реализуем цикл, в котором будет формировать лист из псевдослучайных чисел
# Фишка в том, что мы узнаем количество добавленных элементов только в конце выполнения программы
while True:
value = random.randint(0, 10)
# Если псевдослучайное число == 10, то мы должны выйти из цикла
if value == 10:
break
int_list.append(value)
print(f"Сформированный список: {int_list}")
# Давайте перемешаем список и посмотрим, что из этого получится
# Для этого воспользуемся методом shuffle, который принимает на вход 1 аргумент (список)
random.shuffle(int_list)
print(f"Перемешанный список: {int_list}")
Вывод:
Сформированный список: [3, 9, 4, 1, 1, 8, 4, 0, 1, 3, 2]
Перемешанный список: [3, 4, 1, 8, 1, 0, 9, 2, 1, 3, 4]
Ещё один интересный метод, который есть в библиотеке random называется это sample возвращает список уникальных элементов. Напишем программу, чтобы посмотреть как он работает.
Листинг 3
# Создадим строковую переменную
catName = "Кот Николай"
# Метод sample принимает на вход 2 аргумента
# 1. это какой-то элемент из которого мы хотим получить список уникальных элементов
# 2. это количество уникальных элементов.
# Напишем цикл, чтобы наглядно увидить, что возвращаемый список всегда уникальных
# Будем выводить результат randint и sample
while True:
# Воспользуемся методом randint, чтобы каждый раз мы получали разный уникальных список
value = random.randint(1, 5)
if value == 5:
break
print(f"Количество уникальных элементов в спике: {value}")
result = random.sample(catName, value)
print(f"Результат: {result}")
Вывод:
Количество уникальных элементов в спике: 1
Результат: ['й']
Количество уникальных элементов в спике: 3
Результат: ['к', 'т', ' ']
Количество уникальных элементов в спике: 4
Результат: ['К', 'й', 'т', ' ']
Количество уникальных элементов в спике: 1
Результат: ['Н']
Количество уникальных элементов в спике: 1
Результат: ['а']
Количество уникальных элементов в спике: 2
Результат: ['Н', 'К']
Как мы видим в списке всегда только уникальные элементы. То есть мы не увидим в списке две больших буквы "Н" например.
Для закрепления материала, напишем программу, которая содержит список котиков и возвращает случайного котика из этого списка.
Листинг 4
# Создадим список котиков
cat_list = ["Кот Николай", "Кот Мышиный король", "Кот Леопольд", "Кот Владыка сна"]
cat = ""
# RANDINT
# Реализуем метод randint чтобы получить случайное
# Чтобы получить значение из списка
# Диапозон нужно задать в пределах нашего списка
# То есть от 0 до длина списка - 1
index = random.randint(0, len(cat_list) - 1)
cat = cat_list[index]
print(f"Котик которого мы заслужили: {cat}")
# SHUFFLE
# Такой же механизм мы можем получить и с помощь метода shuffle
# Перемешав список и получив первый элемент
random.shuffle(cat_list)
cat = cat_list[0]
print(f"Котик которого мы заслужили: {cat}")
# SAMPLE
# И на последок крайний метод sample
# Как мы помним, он возвращает набор уникальных эементов
cat = random.sample(cat_list, 1)
print(f"Котик которого мы заслужили: {cat}")
Вывод:
Котик которого мы заслужили: Кот Леопольд
Котик которого мы заслужили: Кот Мышиный король
Котик которого мы заслужили: ['Кот Мышиный король']
В следующий статье мы подробнее поговорим про методы и их реализацию.
Если я что-то упустил, то напишите в комментариях.
Другие статьи канала: