Използване на библиотеки в програма
В урока използваме готови библиотеки в собствени програми. Учим различните начини за внасяне с import, псевдонимите и грешките, които се получават, ако модулът липсва. Пишем кратки програми с функции от math, random, statistics и datetime.
Какво да запомним
- import math, след което math.sqrt(16) връща 4.0.
- from math import sqrt позволява да пишем само sqrt(16).
- import numpy as np внася модула под псевдонима np.
- random.randint(1, 6) връща цяло число от 1 до 6 включително.
- Липсващ пакет дава ModuleNotFoundError; не кръщавайте свой файл random.py.
Пример
Пример: import statistics и print(statistics.mean([2, 4, 9])) отпечатва 5, защото (2 + 4 + 9) : 3 = 5.
Проверете се: 20 въпроса
Натиснете въпроса, за да видите верния отговор и обяснението.
Коя ключова дума внася модул в програма на Python?
- include
- import
- using
- require
Отговор: import
В Python модулите се внасят с import, например import math.
Какво прави from math import sqrt?
- Изтрива функцията sqrt
- Инсталира пакета math
- Внася само функцията sqrt, която се извиква без math.
- Преименува модула math
Отговор: Внася само функцията sqrt, която се извиква без math.
След from ... import функцията се използва директно: sqrt(25).
Какво прави import numpy as np?
- Инсталира numpy
- Създава нов модул np.py
- Внася само функцията np
- Внася numpy под краткото име (псевдоним) np
Отговор: Внася numpy под краткото име (псевдоним) np
С as се задава псевдоним, затова после се пише np.array(...).
Каква грешка се получава при import pygame, ако пакетът не е инсталиран?
- ModuleNotFoundError
- ZeroDivisionError
- IndexError
- SyntaxError
Отговор: ModuleNotFoundError
Python не намира модула и съобщава ModuleNotFoundError: No module named 'pygame'.
Ученик кръщава своя файл random.py и в него пише import random. Защо random.randint не работи?
- random.randint не съществува
- Внася се собственият му файл вместо стандартния модул
- Името random е забранено
- Трябва първо pip install random
Отговор: Внася се собственият му файл вместо стандартния модул
Python търси модулите първо в папката на програмата, затова собственият файл скрива стандартния модул.
Къде в програмата обикновено се пишат командите import?
- В края
- В средата на всеки цикъл
- В началото на файла
- Във всяка функция
Отговор: В началото на файла
По конвенция (PEP 8) import се пишат в началото на файла.
Каква грешка дава math.sqrt(9), ако е пропуснато import math?
- ImportError
- TypeError
- SyntaxError
- NameError
Отговор: NameError
Името math не е дефинирано и Python съобщава NameError: name 'math' is not defined.
Какво позволява from math import pi, sqrt?
- Използване на pi и sqrt без префикс math.
- Изтриване на pi
- Внасяне на целия модул под име pi
- Инсталиране на math
Отговор: Използване на pi и sqrt без префикс math.
Изброените имена се внасят директно и се пишат без math.
Защо from модул import * не се препоръчва?
- Не работи в Python 3
- Внася всички имена и може да застъпи вече съществуващи
- Изтрива модула
- Изисква интернет
Отговор: Внася всички имена и може да застъпи вече съществуващи
Неясно е откъде идва всяко име и имената могат да се презапишат.
Как се внася модулът pyplot от пакета matplotlib с псевдоним plt?
- import plt from matplotlib
- import matplotlib as plt.pyplot
- import matplotlib.pyplot as plt
- from pyplot import matplotlib as plt
Отговор: import matplotlib.pyplot as plt
Подмодул от пакет се посочва с точка: matplotlib.pyplot, а as задава псевдонима.
Коя функция от модула random връща случайно цяло число в интервал?
- random.sqrt()
- random.randint()
- random.print()
- random.round()
Отговор: random.randint()
random.randint(a, b) връща случайно цяло число от a до b.
Какво ще отпечата print(math.sqrt(16)) след import math?
- 16
- 8
- 4.0
- 256
Отговор: 4.0
Квадратният корен от 16 е 4, а sqrt връща десетично число: 4.0.
Кои стойности може да върне random.randint(1, 6)?
- Само от 1 до 5
- От 0 до 6
- Десетични от 1 до 6
- Целите числа от 1 до 6 включително
Отговор: Целите числа от 1 до 6 включително
При randint и двете граници са включени, както при зар.
Какво връща math.floor(3.7)?
- 3
- 4
- 3.7
- 0.7
Отговор: 3
floor закръгля надолу до най-близкото цяло число, а ceil закръгля нагоре.
Какво ще изведе import statistics и print(statistics.mean([2, 4, 9]))?
- 15
- 5
- 4
- 9
Отговор: 5
Средноаритметичното е (2 + 4 + 9) / 3 = 5.
Коя функция избира случаен елемент от списък?
- random.choice()
- random.list()
- random.pick()
- random.item()
Отговор: random.choice()
random.choice(списък) връща случайно избран елемент.
Какво е стойността на math.pi, закръглена до стотни?
- 3.41
- 3.14
- 2.72
- 1.41
Отговор: 3.14
math.pi е константата пи, приблизително 3.14159.
Какво връща math.ceil(4.1)?
- 4
- 4.1
- 0
- 5
Отговор: 5
ceil закръгля нагоре до най-близкото цяло число: 5.
Какво прави random.shuffle(cards)?
- Връща нов сортиран списък
- Изтрива случаен елемент
- Разбърква елементите на списъка на място
- Връща броя на елементите
Отговор: Разбърква елементите на списъка на място
shuffle разбърква самия списък и връща None.
Какво ще изведе import datetime и print(datetime.date(2026, 1, 15).year)?
- 15
- 2026
- 1
- 2026-01-15
Отговор: 2026
Атрибутът year на датата е годината 2026.